Designing With Concepts
“Designing good software isn’t just about writing good code. It’s about thinking clearly about what the code represents.”
“Designing good software isn’t just about writing good code. It’s about thinking clearly about what the code represents.”
Many developers think that writing unit tests is tedious because of how tricky mocks, frameworks, or test setup can be.
“Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.”
Stop sprinkling if-guards and start encoding your domain’s rules directly in the types.
Developers often treat “abstraction layers” and “separation of concerns” as interchangeable terms. But in software design, they represent…
Most developers are taught to look for patterns in data — but patterns don’t always tell the whole story. Correlation can mislead. The…
The playbook for building software seams that bend with change, not break.
Patterns that survive both behaviour and variant volatility
The Expression Problem: A Design Dilemma
Transformers, Attention and Self Attention
I must confess I have met very few effective leaders in over two decades in the software industry. I use the term effective purposely; not…
I've had a few interesting conversations with folks regarding multitenant systems over the past few weeks. Those conversations prompted me…