Avoid overengineering & big ball of mud- 7 lessons for maintaining the balance
summary
Seven concrete rules for staying between overengineering and a ball of mud: assemble software (reuse libraries like Split and Sidekiq instead of building from scratch), prefer proven, boring tech (Rails, relational DBs, Linux) and test shiny tools in dev, make systems composable (Rack, small data pipelines — YAML → split → tally → top 5), keep operational simplicity, build for one target persona, optimize for speed of iteration, and apply rules contextually; one team example runs 18 months without launch when they reinvent everything.
AI-written summary · about
chapters (14)
- 0:00Introduction and setup
- 1:31Talk title and concept
- 2:57Overengineering vs big ball of mud
- 6:28Impact on day-to-day work
- 9:15Seven lessons for balance
- 9:37Assemble software instead of building
- 12:52Use proven and boring tech
- 15:23Build composable software
- 16:27Operationally simple systems
- 20:29Build for one specific user
- 22:19Optimize for speed of iteration
- 24:49All rules have context
- 26:34Summary of seven lessons
- 27:39Q&A








