Values and Principles in Software Design
summary
Examines which values and principles should guide software design decisions, how to prioritize and be intentional rather than purely intuitive, and whether those values can be made explicit in code; discusses applying these ideas to design and reflects on Kent Beck’s work in this area.
AI-written summary · about
chapters (20)
- 0:00Introduction
- 1:50Values principles patterns
- 5:23Implementation Patterns
- 7:13Comprehension change costs
- 10:04Uncommunicative code example
- 14:38Essential vs accidental complexity
- 17:03Problem space simplification
- 19:52Property-based testing
- 20:54Simplicity familiarity
- 23:02Flexibility speculative design
- 27:54Kent Beck principles
- 28:56Local consequences
- 30:43Minimize logical repetition
- 31:48Logic data together
- 32:55Declarative expression
- 34:08Symmetry in code
- 36:57Symmetry duplication
- 37:19Change ratio
- 38:46Summary conclusions
- 40:34Q&A
related talks
54mStarting at the Beginning (of Design)
58mWhat Is Software Design and How Can We Do It Well?
57mCore Software Design Principles for Programmers
53mSoftware Design: Beyond Boxes & Lines
59mArchitectural Principles: Building the Foundations of Design Excellence
53mTesting without dogma
01h 26mSolving The Value Equation
41mThe lost art of software design
