SQLServerCentral Editorial

Software is Like Building a House


Steve McConnell's FortToday's editorial was originally released on Oct 5, 2007. It is being re-run as Steve is on the SQL in the City US 2012 tour.

One of the really classic analogies in software is that it's like building a house. You have a foundation, multiple teams, lots of contractors that specialize in something, etc. And it's an analogy that's debated as to its relevance over and over. I won't go into the correctness of this analogy, but I wanted to comment on it.

Because Steve McConnell actually followed through on comparing building something to software. He built a fort for his kids and did an estimate and then tracked the results against his estimate with some comments. OK, so it's not a house, but it's an interesting exercise and there is some good information to get out of it.

As my own type of experiment, I did this with a loafing shed and here's the high level results: It took longer.

No surprise there. It's almost like that's a law. Hey, maybe it should be. I now declare Jones Law: It Always Takes Longer. 🙂

This being Friday, I'll put this into a poll:

What doesn't take longer than you expect in your life?

And don't give me the "I can run to the store and get milk and be back in 12:35." If you're tracking the time of your errands to the second, you need more stuff in your life. Get a hobby, or at least take off your watch.

Seriously, what things in your life actually go as planned when you estimate how long they'll take? It's a hard question. As I think about the things I do regularly, I know that we can get down to karate in about 15 minutes, but I also know that it could easily take anywhere from 1 to 5 minutes to get people and stuff into the car, so I have to leave early. But for irregular things, it's harder to guess well.

I've tiled 3 bathrooms in the house. I estimated the first would take a week, allowing for work, basketball games on TV, kids, life, etc. It took 3 months. OK, so it wasn't a huge priority, but it still took longer. I estimated the second at two weeks, figuring I'd learned things and it took about 4 weeks to get things completely done. Apparently I hadn't learned much. I was closer on the third (3 weeks on an estimate of 2), but the last one is the master and I'm a little worried about running long on the estimate there. I like my marriage 🙂

Everything from doing taxes, to shoveling manure to taking the kids to some event, always seems to run long. Maybe it's a question of priorities or maybe I'm overly optimistic. Maybe there's so much stuff in life that doesn't have a deadline that we just let it run to its conclusion without worrying about time.

I'm not sure work is much different. So often I see or hear people estimate something, from software to a meeting length to a server move. Everything always takes longer than we estimate, much to the dismay of our managers.

It's said that no battle plan survives contact with the enemy. I'm guessing that life must be a battle for me most of the time.

Everyday JonesThe Podcasting continues!

Send in some feedback and let us know what you think, audio, video, both, or none. Especially if you want it to continue! Positive comments to the webmaster here will get more more $$$$ 🙂

  • Audio (MP3)
  • No video editorial this Friday. My Logicam is a piece of @#%$#$% and the video camera editing wasn't done in time :(. However I do have a bit of fun about Senior DBAs

Music for today's Podcast from: Everyday Jones, All You Said was used in the stream.


You rated this post out of 5. Change rating




You rated this post out of 5. Change rating