Find your kernel of certainty

We have entered the vicious stack of crises. This is the cycle of issues that follows the most-recent top-priority law. This stack is not strictly LIFO, however. If the PM receives a call regarding an issue further down the stack, it is escalated to the top.

Our stack is currently three issues deep.

The new features are a week late. But they have to slide because the fix that we pushed to production on Friday didn’t work. We told our customer that the problem would be solved before the weekend, so now they are breathing down our necks for an estimate on the real fix. But we can’t work on that now because the new build is bringing down the QA servers and they can test.

It is in times like this that I look for my kernel of certainty. Instead of tackling the chaos head-on, I need to start from an island of sanity. I need to find one piece of the system that I can trust implicitly. From there I can reach out to other components and bring them under control.

At the moment, I can’t trust MySQL. Two of these issues may be related to the database itself doing something unexpected. I need to bring something else to bear on the problem. Unfortunately, I can’t trust Log4J right now, either, because it wasn’t accepting my configuration changes on the live production server. So I have to retreat one step further. Right now my island consists of Java, Eclipse, MyEclipse, and JBoss running on my own box. And JBoss is in danger of being voted off.

Once I pare the world down into its most sane parts, I can start to extend my reach of confidence out to Log4J. When that is again within my control, I’ll bring that to bear against the MySQL problem. With visibility that I can trust, I may find that I solve all three crises simultaneously. However, I won’t find a solution by attacking each issue directly, with their priorities shifting, using tools in which I have no confidence.

One Response to “Find your kernel of certainty”

  1. Charles Martin Says:

    I like that title as it is something we can apply in many areas, not just programming. For example, getting our spending cut down to something within our budget begins with the "kernel of certainty"; in this case, it is that we need shelter, food and transportation. Of the three, the only one without limit seems to be food. This is because it can vary based on how much you decide to cook for yourself, or heat up for yourself or just flat out have someone else cook it and put it on the tray/table/sack. To bring food back within a kernel of certainty means planning out a menu that will be adhered to (barring any emergencies or other unexpected situations). Once you get these three into your kernel of certainty, then you branch out into debt reduction and so on. However, without gaining that kernel, you end up never being able to get your arms around it all.

Leave a Reply

You must be logged in to post a comment.