State of Sorbet: A Type Checker for Ruby
At Stripe I’ve been working on Sorbet, a type checker for Ruby. Along with Paul Tarjan, I presented a progress update at RubyKaigi 2019 in Fukuoka, Japan about what we worked on in 2018 and what we’d be working on in 2019.
The talk breaks down into a couple of sections:
- A brief description of Stripe and what we work on
- The process of adopting Sorbet at Stripe
- The editor tools that we’ve built on top of Sorbet
- Our plan for what Sorbet will look like when open sourced
The abstract of the talk:
We have developed a type system for Ruby at Stripe with a goal of helping developers understand code better, write code with more confidence, and detect & prevent significant classes of bugs.
This talk shares experience of Stripe successfully adopting Sorbet in our codebase which had millions lines of code that were written before the typechecker had been conceived. The talk will describe:
- the process used to add typing to existing code;
- many tools developed to support this process;
- impact of this type system on safety and productivity at Stripe.
We also have some exciting announcements!
The talk does not require any previous knowledge of types and should be accessible to a broad audience.
A definite plus of giving this talk was getting to travel to Japan in April!