Post Featured Image

Make Your Interfaces Abstract

Abstractions are very much abused in software development. Frequently, I encounter supposedly abstract interfaces that reveal too much and can only realistically be implemented in one way. This violates the entire concept of abstractions! Let me show you what I mean.

READ MORE

Post Featured Image

Virtues of a Great Microservice

Microservices are becoming very popular because they solve problems horizontally. They make it easy to deliver new business functionality swiftly, flexibly, and with no possibility of breaking existing functionality. What virtues guarantee these business values? I will tell you.

READ MORE

Post Featured Image

Keep Your ASP.NET Controllers Code-Free!

If you’ve been doing any amount of server-centric web development, you have definitely seen more than a few Web Controllers. If your experience has been like mine, often the methods on these controllers are filled with procedures that process user requests. This is absolutely wrong! Web Controllers must be kept code-free!

READ MORE

Post Featured Image

Independently Executable Units

Often people talk about their applications as Console Apps, Web Apps, Mobile Apps, etc. There is nothing wrong with using those terms for marketing purposes, but there is a major flaw if they are designed structurally with that idea. Creating an “X App” will make the resulting code rigid and non-portable. Instead, create independently executable units.

READ MORE