Adopting Sorbet at Scale
summary
Shopify adopts Sorbet across a 21K file monolith running 80K requests per second and reports concrete results: 40% of non‑test files at typed true, 1.5% strict, ~4,500 method sigs, and roughly half of method calls now checked. Engineering builds include a runtime component (initially waffle‑cone, later Sorbet runtime), RBI generators and tapioca, and Rails model RBIs. Benefits are faster local feedback and fewer type tests; pitfalls are metaprogramming gaps, missing stdlib RBIs, and a ~7% runtime overhead which is disabled in production.
AI-written summary · about
chapters (11)
- 0:00Introduction
- 2:13About Shopify
- 4:41About Sorbet
- 5:18Sorbet Example
- 9:15Shopify
- 10:06Sorbet
- 15:13Strictness
- 18:56User Interviews
- 21:58Pitfalls
- 25:37Getting started
- 31:31Conclusion
related talks
30mIntroducing Sorbet into your Ruby codebase
30mSorbet at Grailed: Typing a Large Rails Codebase to Ship with...
31mStatic Type Checking in Rails with Sorbet
48mGradual typing for Ruby at Scale with Sorbet
32mGradual Typing in Ruby - A Three Year...
33mMeet Shopify's Ruby and Rails Infrastructure Team
39mGradual typing of Ruby at Scale
24mType Checking with Sorbet
