Clean Architecture: Standing on the shoulders of giants

This post is part of The Software Architecture Chronicles, a series of posts about Software Architecture. In them, I write about what I’ve learned on Software Architecture, how I think of it, and how I use that knowledge. The contents of this post might make more sense if you read the previous posts in this series. Robert C. […]

Clean Architecture Is Screaming

Uncle Bob’s Clean Architecture keeps your application flexible, testable, and highlights its use cases. But there is a cost: No idiomatic framework usage! Welcome to the fifth installment of little architecture series! So far we have covered layers, hexagons, onions, and features. Today, we’ll look at a close friend of all four – Uncle Bob’s Clean Architecture, initially introduced here. […]

TDD – From the Inside Out or the Outside In?

Often the hardest part of programming is knowing where to start. With test-driven development the right place to begin is with a test, but when faced with a blank page, it can be daunting. Is it best to start with the detail of what you are building, and let the architecture form organically using an […]

Vertical vs Horizontal Approaches

In the light of delivering outcomes, we should consider the respective merits of horizontal and vertical approaches.  The more common (and not necessarily incorrect) approach is to slice a problem horizontally and build layers to a stack based on objectives with clear left and right parameters.  This not meant to imply that there is a […]

The Solution to Technical Debt

From http://blog.crisp.se/2013/07/12/henrikkniberg/the-solution-to-technical-debt By Henrik Kniberg (related article: Good and Bad Technical Debt – and how TDD helps) (Translations: Russian) Are you in a software development team, trying to be agile? Next time the team gets together, ask: How do we feel about the quality of our code? Everyone rates it on a scale of 1-5, where 5 […]