"So each entry contained all possible numbers in increments of 0.02, with Null in all places where the sample did not contain that number."

OK. That is heinous. It makes me cringe. And if the person who made it thought that it was an example of brilliance, that's cocksure ignorance coupled with a needy ego.

___but___

There are a lot of biologists out there who run computers at the the level of how a business person deals with Microsoft Word: what the computer can do equals what paths are available through the GUI.

In the example you give, the biologist got the computer to do something it couldn't do before, something that made life in his domain easier, and presumably made science possible that would otherwise have been impossible.

Many biologists don't have the money or time to hire a consultant to do it right.

If a heinous kludge lets you do biology that you otherwise couldn't do, then by god that kludge has merit. You can make fun of the person for being proud of the kludge -- but you should admire them for their willingness and ability to make foreign tools do something new.

My work spans biology and CS, and unlike 99% of the other biologists I know, I have experienced what a well managed project feels like -- version control, a build process, bug tracking, etc. To me, the Mythical Man Month is not a novel concept; it's a given. The level of ignorance among biologists about how to get computers to do useful work in novel ways is stunning, and the biologists don't know how ignorant they are.

Again: ___but___

The computer scientists these biologists hire are often so averse to kludging their way forward, that the result is stasis. Adherence to notions of architectural purity, reusability, the 'right' libraries or platform, all result in long iteration cycles where the biologists get no feedback as to whether or not a given line of inquiry is promising or not. And the biologists don't get what's happening -- they can't say, "No, don't do a 'proper' object model and code a 'proper' solution yourself; instead, write a perl script to munge this other tool's backend XML to achieve a similar effect, so I can find out whether or not that functionality will be useful; and if it is useful, maybe then we can do it 'properly'." The biologist doesn't know what Perl is, and doesn't know what XML is.

And anyway, this approach is likely to be anathema to a good computer scientist. People don't get into computer science to make ugly kludges; they get into it to make things of beauty. Reusable libraries. Infrastructure. Clean GUIs. Excellent data structures. Etc.

So there's this huge tension between the biologist PI and the computer scientist he hires to build stuff, and neither one really speaks the other's language.

If a biologist knows a bit of computer science -- say, enough to understand his own limitations and ignorance, enough to communicate effectively with computer scientist employees or collaborators -- he can be tremendously effective. If he can write a little bit of perl and munge his own XML to find out if an approach is promising, he can show his computer scientist employee the kludge, and say, "Make this better."

So, a little bit of CS can be a very good thing. I suspect I'm violently agreeing with you. As you can tell, the topic is near & dear to my current life's work. :)