The Three Laws of a Symptom Fix - The Overview

A short overview of The Three Laws of a Symptom Fix blog post series.

The Three Laws of a Symptom Fix represent three inevitable consequences of fixing a symptom and not the cause of a bug. I formulated them based on my own experience with numerous symptom fixes that I either wrote myself or witnessed. I’m sure though, that any programmer who ever wrote or witnessed a symptom fix (and who of us didn’t!) shares the very same experience.

Since there was a lot to say on the subject I decided to write a blog post series about it. Here is a short overview of it:

  • “The Three Laws of a Symptom Fix” post shortly explains each of the laws. It also presents a concrete case of a symptom fix that motivated me to write more about The Three Laws.

  • In “The Bug” post I discuss that concrete case – a bug in the Split<T>() extension method. I saw this bug as a perfect example for demonstrating The Thee Laws. So I decided to use it in three additional blog posts for the demonstration purpose.

  • In the “Removal and Reappearance” post, I use the mentioned bug in the Split<T>() extension method to illustrate The First Law of a Symptom Fix.

  • The “Mutation and Spreading” post uses the same bug to illustrate the The Second Law of a Symptom Fix.

  • The “One to Rule Them All” post (still to be written) uses it to illustrate the The Third Law of a Symptom Fix.

Note that The Thee Laws are universal. They do not depend on nature of a particular bug. They are also programming-language and platform agnostic.

The three posts attempt to illustrate them on tangible examples. The examples could be seen as simplified, but still I believe they demonstrate pretty well the essence of each of The Laws.

If you made it this far, chances are you might like my next blog post as well :-) Should I let you know when it's out?

Published on June 07, 2015