Twelve Ways to Make Code Suck Less
summary
Gives twelve concrete prescriptions: schedule time to pay technical debt, track cohesion (cyclomatic complexity example rising from 5 to 864), and eliminate accidental coupling by passing needed data instead of newing dependencies. Recommends tests-first and tactical daily code reviews (review tests before code), preferring functional streams (Stream.iterate filter map limit) over imperative loops, avoiding primitive obsession, minimizing mutable state, keeping one level of abstraction per method, and replacing clever hacks with clear code. Cites a real 40,000-line method reduced to 30,000.
AI-written summary · about
chapters (22)
- 0:00Why code quality matters
- 1:58Twelve ways to improve code
- 3:45Schedule time for technical debt
- 5:50Focus on high cohesion
- 8:41Favor loose coupling
- 10:07Program with intention
- 12:55Avoid primitive obsession
- 15:02Imperative style complexity
- 20:52Survivors of accidental complexity
- 23:45Functional style benefits
- 24:08Prefer clear over clever code
- 26:57Cost of maintaining code
- 28:03Sacrificing quality for performance
- 28:48Principles of simplicity and clarity
- 32:22Humanity in code comments
- 35:12Expressive self-documenting code
- 39:05Avoid long methods
- 43:02Give meaningful names
- 46:14Effective code reviews
- 48:20Reduce state and mutation
- 49:44Summary of twelve ways
- 50:25Lifelong code improvement
related talks
57mThe Art Of Clean Code
29mClean Code in Practice
25mBest Practices for Writing Clean and Maintainable Codes
46mThe Zen of Programming. A personal journey towards writing beautiful code.
30mDoes Your Code Hurt?
56mClean Code, Two Decades Later
47mBreak free from maintenance hell with Clean Code
01h 03mTactical Design
