From: ckincy@cs.umr.edu (Charles Kincy)
Subject: Re: Software as PE
Date: Sun, 3 Jan 1993 15:36:35 GMT
Distribution: na
Organization: University of Missouri - Rolla, Rolla, MO

In article <ftsr94#@dixie.com> jgd@dixie.com (John De Armond) writes:
>marc@tanda.isis.org (Marc Thibault) writes:

[Programmers are more like artists, rather than engineers]

Hey, I think I like that!   :-)

"What do you do for a living?"

"Oh, I'm a computer craftsman.  :-)"

>This brings up another difference between engineers and software development.
>Most any engineered system can be proved correct or else the weaknesses
>can be comprehensively identified.  Provably correct designs have
>been a big thing in the nuclear biz for the last 20 years or so.  It is
>this concept that has kept computers out of the reactor control and 
>protection loop until recently and even then, the impossibility of provably 
>correct software systems is addressed by massively redundant systems AND 
>by keeping the human operator in the loop.

It's possible to prove algorithms correct, also.  But it's usually
a lot more hazardous to one's mental health.  Once in a great blue moon,
a software system is proven correct.  But that's pretty rare.
 
You'll never see a correctness proof for Unix, for example.  Hee.  :-)
 
>>        No electronic engineer has ever advertised himself as expert
>>        only with the "Apex Model 5 Logic Analyser". Anyone who
>>        studied to be an electrical engineer with me can, in
>>        addition to engineering electrical systems, design a logic
>>        circuit or machine tool, program any computer, build a barn or
                                   ^^^^^^^^^^^^^^^^^^^^[shyeeeaah!]
>>        a cannon, distinguish between a terminal moraine and a
>>        land-fill site, survey a meadow, and navigate a ship.

[Well, goody for him.  :-)  Actually, as a CS student, I can do
5 of the things he lists above.  I guess my education wasn't thoroughly
useless (see below)].

>Yup, and that is in stark contrast with many "CS" programs that 
>seldom venture out to anything outside the computer.

Many, but not all.

See, my CS degree program is pretty well-rounded.  Only about 40 of
the 130 hours are in computer science.  The others are in calculus
[3 semesters, but no diff eq...we have to know how to do them anyway,
though, because of other classes], physics [both electrical and mechanical]
either biology or chemistry [student's choice], some lit. and hist., 12
hours of courses from another science or engineering degree program, and 
two classes in electrical engineering [it used to be Circuits I and
Logic Analysis, but then they changed the Circuits requirement into 
Digital Systems Design, which is a lot more useful to a CS student anyway,
so I've found.  Although, I'm kinda glad I took the circuits class, 
even though I didn't do so well in it], as well as a few other things we get
to choose for ourselves.  Furthermore, we have to know Fortran for
two courses, but we aren't allowed to take the Fortran course for 
credit.  Our department figures a 1/2-competent CS student can learn
it by themselves.  (Engineers, on the other hand, are required to 
take the Fortran course.  Hmmm....  :)
 
Most of the engineering curricula around here are pretty non-customizable.  
UMR Engineering graduates are not particularly well-rounded.  But, that doesn't
seem to inhibit their getting good-paying jobs.  :-)  Actually,
engineering students would have a much better time if colleges would
finally admit that it takes longer than 4 years to get a good 
college education these days.  There's just too much to learn in 4
years.  4 1/2 or 5 would be more manageable.

Anyway, I discovered that a CS degree should not train you as much in 
CS, but it should train you in research and self-education methods, 
because the stuff you learns as a freshman is obsolete by graduation.
One must admit that this doesn't happen to engineers quite as much.

>I think the titles "science" and "engineering" get tagged onto what 
>programmers because a) academians realize the engineering schools get
>all the money and thus want the same legitimacy as, say, the school
>of nuclear engineering, b) because corporate managers realize the same
>thing applies in business and c) upper management could not stand the
>idea of paying big bucks to a bunch of people who are identified as
>artists.

[a] Not true.  We know our place.  But, a CS degree here is more 
challenging then, say, a degree in psychology, and probably as challen-
ging as a degree in chemistry.  So, I think we deserve *some* legitimacy.
We pay our dues in calc, chem, and physics just like the engineers do.
Not that we especially need all of it in our careers.  It's sort of like
a rite of passage.  :)

[b] Maybe.  I'd like to see an electrical engineer design an operating
system.  That person could probably do it, but they wouldn't like it.
CS people *like* doing that sort of stuff.  Does that mean we should
pay them less money?  (Anyway, why did the EE go through the pain and 
suffering of a EE degree if he/she just wanted to write operating 
systems?  :-)

[c] Hee.  You're probably right.  :-)

cpk
-- 
"The WHITE ZONE is for loading and unloading only.  If you gotta load or un-
load, go to the WHITE ZONE.  You'll love it.  It's a way of life!" --Zappa

Technology always seems to keep one step ahead of human wisdom.
Newsgroups: comp.org.eff.talk