When Twitter, built with Ruby on Rails, exploded in popularity and became a tech scene darling in 2007-8, it was heralded as a victory for Ruby. Dynamic languages were ascendant. Rails’s “convention over configuration” was a sharp rebuke to the boilerplate of Java/Spring.
-
-
Show this thread
-
When Twitter announced their decision to abandon their Rails monolith, it was an equally symbolic blow. Wars and counter-wars of Rails and/or Ruby being able or unable to scale.
Show this thread -
In retrospect, both events were overly dramatized and much of the nuance was lost in the commotion. Many of today’s successful tech companies started with Ruby. Some, including many recent IPOs, still use it. Others, like Twitter, have abandoned it.
Show this thread -
But one constant stands out: for large teams (say >100 engineers), with large code bases (say >1M LOCs), gradual static typing wins. Given the option to type their code, Stripe engineers overwhelmingly do so. There’s ~no meaningful advocacy for keeping Ruby code untyped.pic.twitter.com/RZigaNmSRv
Show this thread -
Try out Sorbet, Stripe’s type checker for Ruby. And follow Ruby’s decision to type the stdlib in Ruby 3.https://twitter.com/darkdimius/status/1119115657776209920?s=21 …
Show this thread -
And follow Stripe’s talk about Sorbet at RubyKaigihttps://twitter.com/amyngyn/status/1119108184004685824?s=21 …
Show this thread
End of conversation
New conversation -
-
-
uninitialized constants? I'm missing something here
-
i believe this means we statically catch 100% of cases where people reference constants (eg, class names) that haven’t been defined. cc
@ptarjan@darkdimius to keep me honest
End of conversation
New conversation -
-
-
I was the product marketing manager for Borland's Ruby IDE back in the day. I told them that without types their product was doomed. I was right. Glad to see the situation is being corrected. Ruby and RoR with both enjoy many additional years of usefulness as a result.
Thanks. Twitter will use this to make your timeline better. UndoUndo
-
Loading seems to be taking a while.
Twitter may be over capacity or experiencing a momentary hiccup. Try again or visit Twitter Status for more information.

