Tuesday, December 18, 2012

What Didn't Go Wrong?

As programmers, we love developing new features. After all, it's fun! And afterward, you can fire up the app, point to the feature, and say "See that? I made that." And if it's a helpful feature, your customers are happy, which probably means you get more sales, which increases your profits.

There's another side of development, though – one that's easier to overlook. These are projects that involve things like:

  • Easing deployment
  • Adding security
  • Optimizing existing code
  • Improving scalability
  • Replacing deprecated third-party libraries

If those "new feature" projects represent income-production, this other side of development represents insurance.

The value of income-producing development is easy to assess. You build something, you launch it, and you watch the response. But the value of insurance development is almost guaranteed to go unnoticed if you don't consciously watch for it. Why? Because the value of these projects isn't in what you see – it's in what you don't see.

  • Remember that time you updated your SQL queries to use bind parameters and validation? Because you did that, you didn't even blink when the SQL injection attack hit last month.
  • Or what about when you replaced that old JDBC driver with one that has better memory management? When you had a surge in customer activity, you didn't have to scramble to get more servers in your load balancing pool. In fact, your customers couldn't even tell that there's been any increased load on your servers.
  • And then there was the time that you insisted on building automated acceptance tests. The customers saw nothing different. But deployment was easy-peasy because you only had to hit a button to verify that everything went out right.

So, once a month, ask yourself, "What didn't go wrong?" Then congratulate yourself, and remember just how important those insurance projects really are.

No comments:

Post a Comment

Profile Picture
Dave Leeds
My Hobbies:
  • Programming
  • Cartooning
  • Music Writing
Full Profile