Clearly, this discussion is giving a lot of people a place to vent.
That's certainly OK with me; we all have opinions, and they are our
right.
Just as clearly, some folks are taking this personally, and that certainly
was not my intent.
A new turn that I do have to take issue with, though, are the type of people
one hires; one post was basically a management level statement, the other a
discussion of "What is a Computer Scientist?"
Without belaboring either, if there is a CS person who is not doing what
you wanted them to, then hire another one. I have had my share of those,
but I also have seen more than my share of brain-dead technicians, as well.
Basically, you can't let either of them run your project; that is the surest
route to ulcers. Probably the biggest damage when that happens is that no
one can afford a failure ["We bought you a CS person, and see what happened?].
When it comes to computer science, I can agree. Much of it is theoretical.
But the answer is the same as above. Don't hire them if that's not what you
want. If you interview someone, and you ask what their specialty is, and they
say numerical analysis, chances are that person won't be able to recognize
the on-off switch.
On the other hand, there are two exceptional CSci Ph.D. students working
with me who are extraordinary; do they fantasize about writing code?
No, but they do an exceptional job of it, because it is necessary. Their
real interest is in the computer science that is buried in our problems.
And so is the interest of their respective CSci advisors. These are separate
individuals from the systems person, by the way. When the systems people are
not tending the machines, they are fielding questions about the system
[not necessarily the biology questions--there are others of us that do that
with more facility], and there are ongoing programming projects [which, by our
specification, have gui's] and assorted "generification" projects [i.e.,
moving code across platforms to insure it is "vanilla"].
I would throw out the fact that any Genome Project proposal from *any* agency
*requires* any informatics proposal to be a collaboration between biologists
and EE/CS types. And that is appropriate; it is intended to keep the
biologists from re-inventing wheels that have been rolling in their world for
years; it also is intended to keep CS types from solving problems we don't care
about.
-----------------------------------------------------------------------------
The Computer Applications Quiz
I have been trying to think of a way to explain what I get from hanging out
with the CSci folks. So, I asked myself, what would I not know much about if
I had just hung out with people that speak what I speak. I came up with the
following list of things that are applicable to what we do and the way we will
do it in the future. If you can answer all the questions, and integrate them
into a fabric for biological computing, and you did it on your own, then you
are an ace, and I am impressed. And if not, I would suggest seeking out those
folks in CS and sitting down for lunch with them a lot....
This is meant to be a "silent quiz"...
1. Compare the oodbms model to the rdbms model, particularly with
respect to biological computing problems.
2. What is PVM, and what problems do we routinely solve that
PVM would be applicable to?
3. What are the strengths and weaknesses of standard supercomputers
vs massively parallel machines?
4. What are the differences between MIMD and SIMD? Why should you
care?
5. What considerations are there for coding an efficient similarity
algorithm in a parallel environment?
6. What is amoeba?
7. Who is Linda, and how has she been used in molecular biology
applications?
8. What are the alternatives to NFS, and what are their strengths
and weaknesses?
9. What is WYSIWIS, and why is software based on this model difficult
to develop?
10. Which X multiplexor works best?
11. When you are building a mixed environment of workstations [e.g.,
Sun, SGI, NeXT], what problems are you likely to encounter,
and which ones are resolvable, and which ones have to be
lived with? [By mixed environment, I don't mean just on
a network, I mean cross-mounted filesystems and the same
environment no matter what machine you login on].
12. What is the visual programming paradigm?
Ernie Retzel
University of Minnesota
ernest at lenti.med.umn.edu
Information is the infrastructure....