When people hear you can write computer programs they sometimes (in the mistaken belief that computers can somehow defy the laws of time, space, mathematics or reason) ask you to write the strangest things. The most infeasible thing I have ever been asked to write was in a taxi ride home. The cab driver said he already had a computer program that could pick 6 out of the 7 lottery numbers in each week’s lottery, but that he needed a program that could pick all 7. Could I write something like this for him? Using my most soothing consulting voice I calmly told him that writing such a program would be “quite difficult” (in the same way that factoring prime numbers is quite difficult) and that he should instead repeatedly win the smaller prize pool with the 6 numbers his current program gave him. All the while I tried to retain a pleasant smile while my inner voice screamed out “you’ve being driven home by someone who is completely in-freaking-sane!!!!1! jump out of the car now!”.
Sadly this penchant for people to ask for infeasible programs is not limited to casual acquaintances and sometimes manifests itself in those who should know better, the so-called “business representatives” or “business analysts”. I heard about an incident where, during a meeting someone asked if the specialized CRM system could record a specific type of entry for pregnant women “even if the woman doesn’t know she is pregnant”. Should the entry be recorded at the moment of conception then, or when the act of procreation takes place? It would take a team of crack-smoking BAs WEEKS to figure out the “most correct” way for that to happen, but why mess around – why don’t we just pre-create all the entries for all the people (living now, or as-yet unborn) that will fall pregnant during the lifetime of the system. Computer programs can do some pretty amazing things - they can learn to play checkers, they can come up with antenna design that humans would be hard-pressed to, but there are limits. What is the most infeasible piece of software you’ve ever been asked to write?