Absolute confidence

What change can you make that is as safe as adding or removing a code comment?

That’s a really big change. It’s going to be risky.
— Every developer at some point

How do we respond to such a big, risky change?

Whether it’s adding a new feature, fixing a nasty bug, or even refactoring, as I’ve been recently discussiong a lot, we’re often faced with the same problem: Making changes to our system entails risk. Sometimes big risk.

What can we do?

It’s probably no surprise that the answer is easier said than done. In fact, the doing of it takes years or decades to perfect. I’ve been working on this my entire career, and I still have a long way to go. So don’t feel too bad if you haven’t “made it” yet. But you can still work on improving, starting today.

So what is this easily-said answer?

Make a change toward your goal that you can make with absolute confidence.

Of course I recognize that nothing can be done with absolute confidence. But we can get close enough for every-day work. Sure, the hard disk on your CI server might just happen to fill up because your source file is 3 bytes longer now than before… Sure, the extra load from your new for loop might cause the CPU to overheat and start a fire that takes down the entire interweb.

What I’m really talking about is: What change can you make that is safe and reasonable within your business and technical context?

Or how about: What change can you make that is as safe as adding or removing a code comment?

Don’t tackle your entire big feature at once. Tackle a small part, that you know is safe. Then rinse and repeat.