Working Compassionately with Legacy Code
summary
Two case studies: one mobile app is killed and restarted after relying on dead frameworks, peer‑to‑peer syncing and 24‑hour bulk syncs; the other is a production Rails mess stuck on Rails 2.3 / Ruby 1.8.7 with 1500-line model methods, SQL injection and a guessable admin URL. The rescue path is concrete: add tests (islands of coverage), extract to POROs, lean on RSpec examples, upgrade dependencies and ship — months of work that actually stabilizes production.
AI-written summary · about
chapters (29)
- 0:00Introduction
- 1:40The Story of Two Apps
- 6:00Inside Rails
- 7:00Emotional state
- 9:00Battlefield medic
- 10:00Legacy code
- 12:00Controlling people
- 13:00You solve the universe
- 14:00Cognitive restructuring
- 15:00Automatic thoughts
- 16:00Fixing someone elses mess
- 17:00Code belongs to somebody
- 18:00I love Legacy Code
- 19:00Learning with Legacy Code
- 20:00Production Use Cases
- 21:00Toxic Culture
- 22:00What Can I Change
- 23:00How Much More
- 24:00Joy to Code
- 25:00Being Nice
- 26:00Communication
- 27:00Kindness
- 29:00humane development
- 30:00advice for compassion
- 31:00legacy code without tests
- 32:00code is only a tool
- 33:00advice on being compassionate
- 34:00what to do when someone needs refactoring
- 35:00outro
related talks
38mOur Fight Against Super Bad Patterns in Legacy Rails Apps
23mLoving Legacy Code
41mOff the Tracks - Challenging the Rails Mindset
09mMicrotalk:A House of Cards - The Perils of Maintaining a 7-Year-Old Codebase
23mCrafting Rails Culture
20mSafely Decomposing a Highly Available Rails App
46mAncient Rails
20mWhat were they thinking?
