RubyConf 2021 - Sorbet at Grailed: Typing a Large Rails Codebase to Ship with... by Jose Rosello

Channel:
Subscribers:
42,400
Published on ● Video Link: https://www.youtube.com/watch?v=jYqRV0Kt2ZI



Duration: 30:29
155 views
2


Called “downcase” on nil? Forgot to return the right object in one of your logic branches? Called “first” on a String instead of an Array and spent half an hour trying to figure out why a single character was getting passed around everywhere?

At Grailed, these situations were not uncommon. We are the largest marketplace for luxury men's fashion, with over 7 million users, and a growing Rails codebase that spans hundreds of thousands of lines. Before typing, changes to core interfaces often required creative grepping, modification of type checking unit tests, and updating brittle type documentation.

Ever since we started gradually typing our codebase with Sorbet, we’ve been able to make intrusive changes faster and confidently. In this talk, we’ll walk you through our prior art, challenges, learnings, and big benefits of typing our codebase.

**Filmed by Colorado Union Videographers




Other Videos By Confreaks


2022-08-09RubyConf 2021 - Workshop: Intentional Team Building by Alex Robinson, Will Mitchell
2022-08-09RubyConf 2021 - Workshop: Fundamentals of Joint Cognitive Systems by Laura Maguire, John Allspaw
2022-08-09RubyConf 2021 - Dismantling Dystopian Futures with Humane Factories by Anthony Navarre
2022-08-09RubyConf 2021 - Meet Shopify's Ruby and Rails Infrastructure Team
2022-08-09RubyConf 2021 - Virtual Job Fair: Kolide, Fullscript, CZI
2022-08-09RubyConf 2021 - Virtual Job Fair: Engine Yard, Wrapbook, Shopify
2022-08-09RubyConf 2021 - Just-in-Time Compiling Ruby Regexps on TruffleRuby by Benoit Daloze and Josef Haider
2022-08-09RubyConf 2021 - Rswag: Automated API Documentation by Sarah Reid
2022-08-09RubyConf 2021 - Cultivating Developer-Centric DSLs by Jake Anderson
2022-08-09RubyConf 2021 - Scaling Happy Engineering Teams by Zaid Zawaideh
2022-08-09RubyConf 2021 - Sorbet at Grailed: Typing a Large Rails Codebase to Ship with... by Jose Rosello
2022-08-09RubyConf 2021 - A message from Engineyard by Rahul Subramaniam EY
2022-08-09RubyConf 2021 - MX Hacker's Revenge
2022-08-09RubyConf 2021 - Optimizing Partial Backtraces in Ruby 3 by Jeremy Evans
2022-08-09RubyConf 2021 - Improving CVAR performance in Ruby 3.1 by Eileen M Uchitelle
2022-08-09RubyConf 2021 - Compiling Ruby to Native Code with Sorbet & LLVM by Jake Zimmerman & Trevor Elliott
2022-08-09RubyConf 2021 - YJIT - Building a new JIT Compiler inside CRuby by Maxime Chevalier Boisvert
2022-08-09RubyConf 2021 - Achieving Fast Method Metaprogramming: Lessons from.. by Jemma Issroff, Jacob Evelyn
2022-08-09RubyConf 2021 - Mixed Reality Robotics Simulation with Ruby by Kota Weaver
2022-08-09RubyConf 2021 - Drones Galore: controlling multiple drones using mruby/ruby by Shashank Daté
2022-08-09RubyConf 2021 - Joyful Polyglot: Beautiful insights from many languages by Nick Barone