Thursday, September 17, 2026

Montreal.rb February 2026 Crystal: Ruby with Static Typing

The video and slides for the Montreal.rb February 2026 talk "Crystal: Ruby with Static Typing" have been published! Keep in mind this was more of a "hey, I discovered something cool" talk at a casual Ruby meetup, not a comprehensive tutorial at a software conference. The talk has so much material (that could fill a 3 day bootcamp) that it had to fly through the material very quickly, which can be jarring. The real exciting bit to any real Rubyist though is that Crystal has similar syntax to Ruby's and similar performance to that of C/C++/Rust. That is extremely exciting and awesome!!! It means Rubyists don't have to struggle through C or Rust's syntax to get performance enhancement as they have a much more elegant option in Crystal.

YouTube Video:

https://www.youtube.com/watch?v=3UwWbQi-eEo

Presentation Slides: 

https://docs.google.com/presentation/d/e/2PACX-1vRVWX6mMfCNA5WQo3q1PVu4ImlOq-wG_9Ekd6bRgF2U8fQoeq7FsHJ0z4Bx2Njgw-4ZUEHC64t9AOTx/pub?start=false&loop=false&delayms=60000

Talk Description:

Crystal is a relatively new programming language that aims to emulate Ruby's syntax as much as possible while supporting Static Typing.

Although Ruby remains the most convenient and productive programming language for business app development due to handling types automatically with Dynamic Typing, in about 1% of Business Software Development cases, Crystal can help out when there is a need for much higher performance in response-time-sensitive and performance-intensive computations.

In a recent RubyConf keynote speech, Matz (the creator of Ruby) compared using a Dynamically Typed language like Ruby to driving a car with an automatic stickshift and using a Statically Typed language like C to driving a car with a manual stickshift. Most of the time, the convenience and productivity benefits of automatic stickshift are more desirable to deliver value in a timely fashion to customers. But, every once in a while, driving manual could be a very useful alternative for the few cases that need it. As such, it is valuable to learn Crystal for the sake of augmenting Ruby with a language that trades off some programmer friendliness for performance whenever needed.

This talk will provide a general overview of the Crystal programming language and show some Crystal code examples.

No comments: