Sunday, March 4, 2007

Frankencode Looming

Your mileage may vary.

Don't use this on a production machine.

Cross your fingers before installing.

If you've been around the Internet long enough, you'll see phrases like these used by software developers. And we all know what these warnings mean: This is not finished yet ... Don't say we didn't warn you if your computer melts down or the software disappoints.

But what should we expect when software or a Web-based application doesn't come with such a warning label? Shouldn't users – whether at home or in the business world – expect it to deliver what it promises?

The Urban Dictionary’s definition of Frankencode is “A program or subprogram consisting of bits and pieces of other, possibly unrelated, code that only barely performs its function and is prone to errors. Much like Frankenstein's monster, such code can create havoc in a user's life.”

Sadly, it's not just newbies who give life to Frankencode. Software developers do too. (You know who you are.)

Here, we're talking about legitimate applications or well-intentioned pieces of code pushed out onto the Web without proper and thorough testing. As the philosopher Daniel Dennett might say, frankencode is a piece of code with performance anxiety.

Frankencode is showing up everywhere with greater frequency. Frankencode as a creation of our era of computing arising from, in part, the abundance of Web 2.0 widgets, web services, and code in Web-based software repositories. It has become all too easy to bolt together a few widgets or pieces of code, give the result a cool, memorable name, and set it free onto the world.

Several years ago, Wired editor-in-chief Chris Anderson coined the term the “Long Tail” to describe the niche-ification caused by the web. He writes about it on his blog:

The theory of the Long Tail is that our culture and economy is increasingly shifting away from a focus on a relatively small number of "hits" (mainstream products and markets) at the head of the demand curve and toward a huge number of niches in the tail. As the costs of production and distribution fall, especially online, there is now less need to lump products and consumers into one-size-fits-all containers.

So the long tail can be a good thing in that it gives consumers more choices. But the long tail also grows when Frankencode dupes unsuspecting businesses and consumers into thinking it's the real deal. The time and money wasted on these bogus solutions is a reminder that old-fashioned technical due diligence is the order of the day for enterprises and consumers alike.

No comments: