Engineering for Software
summary
Argues software engineering means optimizing for learning and managing complexity using two concrete tools: Testability & Speed. Shows TDD via red green refactor and a tiny DI example (car injects engine) that immediately improves modularity, cohesion and testability. Recommends a commit-to-releasable deployment pipeline that gives design feedback under five minutes and full releasability checks under an hour. Advises pair programming for knowledge spread and keeping infrastructure <8 months old to remove >95% of common attack surface.
AI-written summary · about
chapters (7)
- 0:00Start
- 8:58All Engineering is not the same!
- 11:59Optimise for Learning
- 19:39A Practical Definition for "Good Code"?
- 21:19Principles of Applying Engineering Thinking
- 24:49What Drives Quality? - Before TDD
- 26:52What Makes Code Testable?
related talks
37mEngineering for Software
35mEngineering for Software - How to Amplify Creativity
47m‘Engineering' for Software - How to Amplify Creativity
01h 01mEngineering for Software - How to Amplify Creativity
55mEngineering for Software
45mTaking Back "Software Engineering"
27m'The Art of Software Development'
38mSolving the Hard Problems
