Patchy Philosophy and the Bug Free Software

Wednesday, June 15, 2011 8:17 PM by nairdo

bugs outnumber humans 

[note: This is an especially 'angry coder' post -- so I encourage the the faint of heart reader to simply skip this article.] 

Although I hate to admit it, I know there is no such thing as bug free software releases.  With testing and a solid QA process in place, you most definitely can drive software defects in new releases toward zero. However, the more complex the software is, the less likely it will come close to zero.  Some have argued from a business perspective it's not cost effective to even try to reach zero bugs.  Personally, I think it's your obligation to do your best to find and kill bugs before your customers do -- if you want to keep your customers and your business.

What to do?  Shall we developers simply pretend bugs don't exist and keep on creating new releases?  Certainly not.  Patches to the rescue.

When you haven't yet proven that you can release software with little to no defects, you are obligated to follow the patch principle.  Your customers are counting on it.  The idea is simple.  After you release a new version of your software (major or minor release -- any version that introduces new or changed functionality) you promise to quickly and frequently release patches for the bugs that are reported by your customers.  You must not wait until the next release because guess what...there will be more bugs in that release too. (To think that 'the next release will not contain bugs' is to misunderstand developers and software development.) You should not wait and batch them up either and you should not endlessly test the patches for weeks or even days. You create and release them -- quickly -- as your customers are broken until they've applied that patch.  They are at your mercy.  It's up to you to establish a solid, reliable patch process your customers can count on.

So, as we move into the future, I intend on pushing this same philosophy with the two open-source software projects that I'm involved with. Both of these new management systems (Grassroots and ****) will not suffer from the patchy philosophy syndrome.

Comments

  1. Brian Slezak Says:
    Angry coders unite! ... so we (including myself,) can get help. ;) Sadly I know exactly what you're talking about and have nothing positive to say about it myself. On a different topic, I'm extremely interested in Grassroots and will be watching that intently.
  2. This End Up Says:

    WARNING: This is probably going to be my yearly rant blog posting for 2012. Feel free to just walk away.

New Comments to this post are disabled

Powered by Community Server, by Telligent Systems