David Whitney
Intentional Code - Minimalism in a World of Dogmatic Design
#1about 2 minutes
Why thoughtless code organization creates confusion
Organizing code by architectural concept rather than by feature obscures its true purpose and makes it difficult to understand.
#2about 2 minutes
Understanding the origins and limits of design patterns
Design patterns originated as named solutions to common problems, but true design begins where these predictable patterns end.
#3about 3 minutes
Treating software as a form of literature
Inspired by Donald Knuth's "Literate Programming," software should be viewed as a constrained form of communication between programmers.
#4about 2 minutes
Moving beyond the dogma of clean code
The book "Clean Code" has become a historical artifact that promotes dogmatic adherence to syntactic hygiene over meaningful architectural discussions.
#5about 2 minutes
Using code form and whitespace to communicate intent
The physical layout of code, including whitespace and grouping, is a powerful tool for communicating intent and improving readability.
#6about 2 minutes
Matching software complexity to its problem domain
The complexity of an application should never exceed the inherent complexity of the problem it is designed to solve.
#7about 2 minutes
A case study in simplifying an over-engineered system
Merging dozens of separate projects into a single logical application dramatically reduced build times and cognitive overhead for the team.
#8about 3 minutes
Defining and managing sources of software complexity
Complexity is the accumulation of small issues that make a system hard to understand and modify, leading to change amplification and high cognitive load.
#9about 3 minutes
Crafting deep modules with narrow, simple interfaces
The best abstractions, like `file open`, are deep modules that hide significant complexity behind a very narrow and simple interface.
#10about 3 minutes
Embracing compromise and intentional design trade-offs
Effective software design is an exercise in making intentional trade-offs, as any design principle becomes absurd when taken to its extreme.
#11about 1 minute
Recommended books for modern software design thinking
A curated list of books provides a modern canon for thinking about software design, complexity, and maintainability.
Related jobs
Jobs that call for the skills explored in this talk.
Matching moments
04:59 MIN
Deconstructing Robert C. Martin's clean architecture
Architectures that we can use with .NET
01:57 MIN
Conclusion: Focus on fundamentals beyond the hype
Microservices? Monoliths? An Annoying Discussion!
04:20 MIN
Introduction to Domain-Driven Design and sustainability
It’s all about the domain, honey ! Experiences from 15 years of Domain-Driven Design
04:07 MIN
Applying cognitive science principles to software design
Resolving technical debts in software architecture
01:54 MIN
Managing code complexity and common development styles
Breaking the Bug Cycle: TDD for the Win
03:20 MIN
Focusing on modularity over architectural labels
Monoliths: A love story
04:35 MIN
How coding makes infrastructure intent clearer
Stop configuring infrastructure, start coding it!
01:07 MIN
Designing with a functional core and imperative shell
Java with a Clojure mindset
Featured Partners
Related Videos
The Clean as You Code Imperative
Olivier Gaudin
The Lifehacker's Guide to Software Architecture
Julian Lang
Move fast with Software Architecture
Simon Lasselsberger
Resolving technical debts in software architecture
Carola Lilienthal
The Name of the Rose
Reka Horvath
Modern software architectures
David Tielke
Keep your code refactorable
Gerrit Stapper
Design Principles For The Web
Jeremy Keith
Related Articles
View all articles



From learning to earning
Jobs that call for the skills explored in this talk.

CONTIAMO GMBH
Berlin, Germany
Senior
Python
Docker
TypeScript
PostgreSQL

Speech Processing Solutions
Vienna, Austria
Intermediate
CSS
HTML
JavaScript
TypeScript



M&M Software GmbH
Sankt Georgen im Schwarzwald, Germany
Intermediate
Senior
Docker

doinstruct Software GmbH
Berlin, Germany
Senior
GIT
JavaScript
TypeScript


