Wednesday, May 27, 2009

The limits of software

At the margins, the limits of software get exposed, even in areas you'd expect software to excel. This site went to a mechanical solution to overcome random number generation limitations (via Bruce Schneier):
Introducing the Dice-O-Matic mark II, now generating the dice rolls on GamesByEmail.com. It is a 7 foot tall, 104 pound, dice-eating monster, capable of generating 1.3 million rolls a day.
Jeff Atwood recently talked about famous math errors. What do you do to fix those?
What do the Google, Windows, and Excel (pdf) math errors have in common? They're all related to number precision approximation issues. Google doesn't think it's important enough to fix. They're probably right.
As he alludes to, the answer often is: you don't. Almost all human activity is not at the margins.

Good developers and development teams know where to stop engineering and accept the flaws, based on the code base, user skill level, and anticipated future requirements. (And, if you have mechanical skills, maybe you also know how to create a giant machine to handle the exceptions.)

No comments:

Post a Comment