<light-hearted pique on>
Beating on CS majors seems to be a popular sport among software
practitioners, and these generalizations do get annoying after awhile.
I have a BS in computer science (University of Minnesota, 1983), and I
found my university program well-rounded, providing me with a suitable
foundation on which to begin my career in the software industry.
I find that a person's software development skills depend less on their
college major than on their desire to produce quality software. After
a couple years their industry experience always outweighs whatever they
learned in college.
I've dealt with EEs writing avionics software who disliked using
names any more descriptive than A, or B. There's a young Mech Eng grad
on our project who is one of the best programmers I've ever had the
of working with, a BS CS holder who established herself as an excellent
programmer and technical lead to the point where I eventually married
her (of course there were other factors involved in that :-).
In short, there's a continuum of expertise, the positive end of which I
find is more strongly associated with an individual's willingness to
and their commitment to produce quality software, than there is with
happens to be printed on their college diploma.
<light-hearted pique off>
Alright, I'm still in an annoyed mood, so I'm going to go off on a
couple of my computer industry pet peeves :-)
Training: Training is good, don't get me wrong, but my experience has
been that the budget always runs out long before the end of the year.
So the employees whine that they're not getting the training they need,
and they're falling behind their industry peers.
Well, if Java, or networking or whatever is so frigging important to
go buy yourself a book and some software and do your own hands-on
Noooo, if the company isn't going to pay you to learn, then just forget
it. Apparently it's far more effective to complain about your employer
or get sucked in by the promises of a new job than invest your own
time and money in your own future.
MS degrees: (Sorry if this annoys any of the academics on this list,
well, not really :-) I haven't been able to force myself to give any
serious consideration to getting a master's degree. I've looked at the
master's programs for Penn State and a few other nearby schools and I
see the same thing: the courses I finished taking as an undergraduate
fifteen years ago. Everything I've needed to learn to do my job and
explore beyond it I've learned on my own, whether it be C++, 3D
CORBA, Ada 95, distributed processing, and I've done it far more
efficiently and cheaply than I would have by getting a Master's degree.
If I can get a Master's by being given the book list, and doing the
and the project(s), okay, maybe I'll think about it. But I'm not going
waste a semester sitting in a classroom going over material I've long
mastered as part of my job or could pick up on my own in a few weeks at
> One of the worst programmers I ever hired had an MS in computer science.
> Some of the best have had no degree at all but a high aptitude. Others
> that have been really good, BS in Linguistics, MA in Music, BA in
> Psychology. Usually these have been people who have good academic
> skills, are not afraid of mathematics and science, and savor the
> challenges associated with software problem-solving. They are also
> brimmming with motivation.
> I have long felt that applicants for the B.S. in computer science
> should be first given the old-time IBM programming aptitude test
> and only allowed in to the program if they get an A on it. I know,
> I know, Dr. Feldman. That seems a little too Draconian.
> I am just in that sort of mood today. :->
> Richard Riehle
Marc A. Criley
Chief Software Architect
Lockheed Martin ATWCS
[log in to unmask]
Phone: (610) 354-7861
Fax : (610) 354-7308