Member-only story

One of the aspects of software development that I care deeply about is to ensure developers write maintainable code. Nothing is more a productivity killer than dealing with code written by a developer which only goal was to make it work. In other words, unless it’s an Minimum Viable Product, you need to build the right thing the right way at the right time. That means that you don’t only build what the business wants, but you also make sure it can be maintained. The “right time” is an additional factor that I added myself to emphasize that you need to be careful not to make things too complex. Maintainability is not an excuse for unnecessary abstractions or to “prepare the code for future extensions”. Just keep it simple, stupid. You ain’t gonna need that complexity until you need it.

But then what is maintainable code? Before I share my own definition, I have collected a bunch of quotes from the community, so let’s start with those first.

Code that can be changed by any developer in the team without fear and with confidence.

I guess that says it all. Feeling confident enough to understand some code, modify it and being able to verify that you didn’t break anything is one of the most important aspect of software development. Here’s another one, this time by Cory House.

--

--

Dennis "The Continuous Improver" Doomen
Dennis "The Continuous Improver" Doomen

Written by Dennis "The Continuous Improver" Doomen

Dennis is a veteran architect in the .NET space with a special interest in writing clean code, Domain Driven Design, Event Sourcing and everything agile.

No responses yet