Category Archives: Software Development

The Two Faces of Microservices

Microservices (μServices) are a fascinating evolution of the Distributed Object Computing (DOC) paradigm. Initial design of DOC attempted to solve the problem of simplifying developing complex distributed applications by applying object-oriented design principles to disparate components operating across networked infrastructure. In this model, DOC “hid” the complexity of making this work from the developer regardless… Read More »

Time for the Tail to Stop Wagging the Dog

Here’s a novel, but controversial statement, “it’s time for the CEO, COO, CIO to start to take joint responsibility for application platform decisions.” For too many years now technical meritocracy has led the decision-making for the business with regard to platform selection. This includes, but is not limited to, servers, operating systems, virtualization, cloud and… Read More »

Cloud Native: The Next Major Developer Paradigm Shift

Every decade for the past forty years we’ve seen a major paradigm shift in software development. The next major paradigm shift for software developers—cloud native application development—is occurring now and it will require developers to once again re-think and modify their approach to developing software. In the seventies we saw the transition from assembler to… Read More »

Software Testing is Too Critical to Overlook

Today’s software testing practices are abysmal. You’re a major provider of health insurance services to general consumers. Your website is a primary means of interacting with your customers and allowing them view coverage, locate in-plan providers, review Explanation of Benefits for past services and see real-time information regarding deductibles and fees. It’s midday and requests… Read More »

Why Platform-as-a-Service is the Operating System Of The Cloud

When I took my operating systems fundamentals course in college I was taught that an operating system provides very specific capabilities that provides users with access compute resources for building and running applications. Over time as networking capabilities and bandwidth increased, the notion of a set of modules that interface between the user and the… Read More »

Cloud Needs Application Architects To Understand IaaS

Application development has been moving in the direction of platform abstraction. That is, the need for developers to have detailed knowledge of the infrastructure that the application was being deployed on was becoming less important with increasing sophistication of the application platform for which they were developing. Cloud computing is now reversing this course of… Read More »

Architecture: 1000 ways to skin the cat, either way, the cat’s till dead

Thanks to @jadkins for the colorful ending to that cliched saying, which really got me thinking. Sometimes we just make certain aspects of architecture too difficult for no reason. Good design is important and can have significant financial impact if done incorrectly, but chances are the negative impact comes into play during the engineering effort,… Read More »