Zen and the art of life cycle maintenance
summary
Defines a concrete set of software qualities (correctness, reliability, performance, maintainability, reasonability, applicability) and argues that quality lives in their intersections, not in slogans. Recommends measurable techniques: property-based testing, fuzzing and exploratory manual tests for data/path coverage, TDD plus functional patterns for simplicity, use of optionals/checked constructors and correctness by construction types to avoid undefined behavior, and adoption of tools like static analysis (SonarSource) and std::expected/Boost.Outcome for explicit error handling and targeted measurement before optimizing.
AI-written summary · about
chapters (7)
- 0:00Start
- 15:47Exhibit A - The Alignment Trap
- 19:19Code coverage
- 33:31Logic errors/contracts
- 43:01Complex
- 47:49High level code
- 54:59Property-Based Testing
related talks
55mZen and the Art of Code Life Cycle Maintenance
33mBuilding Code Quality
40mAssuring top-notch code quality in the Java Universe
14mThinking of Quality as developer productivity tool
12mBuilding Quality in Legacy Systems - The Art of Asking Questions
34mesting in modern times: A story about quality and value
43mWhat Comes After SOLID? Seeking Holistic Software Quality
59mTechniques for writing high-quality code
