Skip to content

Sometimes We Are Too Smart

July 14, 2015

At least sometimes we are too smart for our own good.  This is something that has existed since 1998 or 1999 and hasn’t been “discovered” until now.  Sometimes, consequences take a while to come around to bite you.

A long, long time ago there was a product created called CD-R Verifier.  The idea behind this product was to produce an MD5 signature value of a whole CD or CD-R and be able to compare this to another disc easily and graphically.  The “point” of the product was that it used pretty sophisticated buffering techniques to stream the data off the disc about as fast as the drive could possibly read it.

Along the way, it got decided there would be a “demonstration” version.  This is different than a real trial or evaluation in that it would never time out but it would only be a demonstration of the capabilities of the program.  The demo version was to be only that and not do anything useful at all.  There was even a note in the help that the demonstration version couldn’t actually be used for anything and that it was simply a “demonstration.”

This product was never an astonishing success but it was an interesting illustration of the capabilities of optical media drives with proper buffering being used.  The US military decided to use it to compare MD5 signatures of discs in the field with disc signatures created on a Unix system where they were created initially.  Disc duplication and manufacturing companies utilized the product to check the discs they were producing.  As it is a pretty cheap product and fulfills a pretty specific need, it is a nice tool to have if you need it.

It has been a remarkably stable product since 1999 and has required only minimal changes over the years to cope with changes to Windows.  Until recently, that is.

A couple of months ago I got an email from a customer saying that they were having a problem with their customer.  They duplicated a master disc and checked the signature in their office.  The master and the duplicate matched perfectly.  They sent the disc copy to their customer who checked it and found a different signature.  Now, this has happened before and it has generally resolved down to being a problem with a specific drive.  The solution has been to get that drive, check it, and figure out what the problem was in getting the correct ending sector for the disc.

Of course, being an obsolete drive where the incorrect signature was being calculated meant a trip down EBay lane to get one of them.  No problem, it just took a little time.  When the drive arrived it was tested and after some fooling around it was shown to be calculating the correct signature.

Huh?  Yes, the supposedly failing drive was doing the right stuff.  Getting the disc from our customer that was copied and failing resulted in no change – the correct signature was being calculated every time.  After some further checking it started to seem like the end user had something odd going on until our customer reported getting the same signature on a specific model drive.

Along about now in the process we get an email from forwarded from the folks encountering the problem that was remarkably informative.  They were using the demonstration version of the product.  They never noticed that it wasn’t supposed to produce valid signatures.

Some folks might point out that the folks using the demo version were simply trying to get away without paying for the product and “shame on them.”  Well, maybe, but part of the software business is not doing dumb things to your (prospective) customers and I feel this was clearly a case of just being too terribly clever back in 1998 or so.  The idea was to give a meaningful demonstration of what the product did without ever having to have a real expiration, unlock code or any nonsense like that.  The idea that someone might miss that they were using a demonstration version and try to use it as the full product didn’t really enter into the thinking at the time.  In hindsight, that was a big mistake.

So with the latest release the demonstration version comes out with a nice warning message at the beginning that says it is just a demonstration and cannot really be used for anything useful.  This message is presented in a number of different ways to the user to make sure they cannot forget they are using a demonstration version.

This isn’t a case of encouraging people to actually buy the product when they need it, although that would be nice.  The problem is that a lot of expensive support time got wasted figuring out what a non-problem was because the customer’s expectations were different than the reality of the product.  Clearly a case of the developer being too clever for the customer.  For a simple tool-type product this is something that might be able to be forgiven, but it can cause incredible headaches if this sort of thinking gets into larger systems.  If it is embedded deeply enough this can be uncorrectable and users will be unlikely to be very forgiving.

The lesson here is that if you are going to do something the customer or user might not expect, you need to tell them explicitly.  No, a note in the help that nobody ever reads isn’t going to cut it.  It needs to be in the user’s face at least once and not just when they install the product.

No comments yet

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.

%d bloggers like this: