Building software the right way

Yesterday a friend told me about a software project whose owners said “We’re going to do this the right way.” I told him I have two opposite reactions when I hear that:

  • Ooh, that sounds like fun!
  • Run away!

I’ve been on several projects where the sponsors have identified some aspect of the status quo that clearly needs improving. Working on a project that realizes these problems and is willing to address them sounds like fun. But then the project runs to the opposite extreme and creates something worse.

For example, most software development is sloppy. So a project reacts against this and becomes so formal that nobody can get any work done. In those settings I like to say “Hold off on buying a tux. Just start by tucking your shirt tail in. Maybe that’s as formal as you need to be.”

I’d be more optimistic about a project with more modest goals, say one that wants to move 50% of the way toward an ideal, rather than wanting to jump from one end of a spectrum to the other. Or even better, a project that has identified a direction they want to move in, and thinks in terms of experimenting to find their optimal position along that direction.

3 thoughts on “Building software the right way

  1. The idea that there would be a single “the right way” in software development sounds wrong to me. But that’s taking it literally while it may just express that confident people have a good concept of how they want to proceed. :)

  2. Any convergence is approximate. How much error is acceptable in a single plane of a convergence effort?

  3. Three other words come to mind. I’d suggest “The Right Way” proponents google No Silver Bullet.

Comments are closed.