Legacy Rails Q&A
summary
Live Q&A surveys why Rails apps age badly and when to refactor versus rewrite: cites Basecamp and Redmine as real-world cases, notes ActiveJob was rejected from core, and warns ActiveRecord coupling forces DB-heavy tests. Recommends characterization tests before changes, using git log churn to target hot files, refactoring at the edges (controllers/views), extracting seams into new classes, using the strangler pattern or microservices (Fred George’s ~100‑line idea) selectively, and treats full rewrites as rare, costly moves.
AI-written summary · about
chapters (14)
- 0:00Introduction and welcome
- 0:14Legacy apps and Rails core
- 8:28Microservices and Legacy code
- 13:04Origin of Legacy Rails apps
- 15:51Refactoring for maximum value
- 19:26When not to refactor
- 21:32Complete rewrite criteria
- 29:20Testing Legacy applications
- 36:48Legacy label misuse
- 41:58Active Record and repository pattern
- 44:52Changing Rails perception
- 51:56Agile and refactoring time
- 57:33Single page apps in Rails
- 1:01:25Why Rails wasn't questioned earlier








