Keeping Code Style Sanity in a 13-year-old Codebase
summary
Shopify wrestles with a 13-year Ruby codebase of 700,000 lines and 400+ Rails developers, and introduces RuboCop plus a PR-only linter Felicia (policia) that comments or returns GitHub status. Adoption hits ~50% early; noise and legacy violations force rule pruning. Team enables auto-correct, runs correctable rules across the repo with a bot commit, makes remaining rules fail CI for new violations, adds caching to speed checks, and contributes fixes upstream so tooling scales without creating single-owner churn.
AI-written summary · about
chapters (11)
- 0:00Introduction and context
- 1:16Why code style matters
- 3:47History of Shopify’s code style
- 5:58Introducing Felicia and Robocop
- 8:05Shopify Ruby style guide launch
- 11:37Surveying developer feedback
- 13:24Fixing existing violations
- 16:54Refining rules and strategy
- 18:00Autocorrecting the codebase
- 20:30Future improvements and caching
- 21:34Takeaways and closing
related talks
23mKeeping Code Style Sanity in a 13-year-old Codebase
33mKeeping Code Style Sanity in a 10-year-old Codebase
23mEmbracing Code Quality with Rubocop
31mHow GitHub uses linters
34mShitlist-driven development and other tricks for working on large codebases
26mSemi Automatic Code Review
34mShitlist-driven development and other tricks for working on large codebases
28mRESCUE SQUAD: Rails Edition!
