Striving for boring software development

For a few years now, I’ve used the word “boring” as a positive yardstick for my own software development: is this code boring? Boring, meaning, does it do what it needs to do, in a predictable manner, in a way that’s easy to understand for others?

Today, I came across a post about “boring code” on Very Good Ventures’ blog:

Having a codebase that is predictable, easy to navigate, well tested and properly automated makes it boring. But pleasantly boring!

Jorge Coca, Very Good Ventures

“Boring” can be applied to the developer experience of a codebase too. At one point, I was part of a small team responsible for upgrading and maintaining a couple of external open-source plugins on WordPress.com; our internal mandate was to make the regular upgrades as “boring and uneventful” as possible.

I hope the software development industry continues to shift in this direction. Users are no longer impressed by new features and rapid growth; it’s been twenty-plus years that we’ve all been using apps of various sorts, and struggling to get things done while companies constantly shift the sands of user experience under us. Moving forward into consumer applications’ “mature” years, the companies that grow and thrive will be those that produce intuitive and solid application experiences over time – through the cultivation of unsurprising, stable, and boring codebases.

Published by

Kirk Wight

I am a Code Wrangler at Automattic, helping make WordPress.com the best it can be. Pender Island, British Columbia, Canada is where I call home.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s