Skip to content

Software Design

Testing Needs a Seam, Not an Interface

In my last video, I said that clean architecture was killing your velocity. And man, you guys had thoughts. The number one pushback, the hill a lot of people were willing to die on, was testing. And I get it. On the surface, it sounds reasonable. Create some interface or abstraction for testing purposes. But that assumption starts to fall apart once you look at what testing actually needs. Testing needs a seam. It does not automatically need an interface. YouTube Check out my YouTube channel, where I post all kinds of content on Software Architecture & Design, including this video showing… Read More »Testing Needs a Seam, Not an Interface

Coding Isn’t the Hard Part

I keep seeing posts pushing back on the idea that coding isn’t the hard part. And I get why. A lot of the disagreement comes down to what people mean by coding. YouTube Check out my YouTube channel, where I post all kinds of content on Software Architecture & Design, including this video showing everything in this post. But in the world I work in, coding usually is not the hard part. I’m talking about line of business and enterprise apps. Order management, healthcare, insurance, logistics, and similar systems. In those kinds of systems, the real difficulty is usually not writing code.… Read More »Coding Isn’t the Hard Part

Authorization: Domain or Application Layer?

I’m diving into a super common question that’s really important: where should your authorization live? Should it live within your domain or your application layer? I am going to show some real world code examples and some simple guidelines so you can keep your software architecture consistent and avoid authorization code scattered everywhere. YouTube Check out my YouTube channel, where I post all kinds of content on Software Architecture & Design, including this video showing everything in this post. Authentication versus Authorization I want to make the distinction because a lot of people mix these up. Authentication is who are you. That… Read More »Authorization: Domain or Application Layer?