Article View: comp.lang.misc
Article #576Re: Non-professional programmers (was: Which language to teach first?)
From: David Gudeman
Date: Tue, 29 Aug 1989 22:32
Date: Tue, 29 Aug 1989 22:32
48 lines
3181 bytes
3181 bytes
In article <5868@ficc.uu.net> peter@ficc.uu.net (Peter da Silva) writes:
>In article <13380@megaron.arizona.edu>, gudeman@arizona.edu (David Gudeman) writes:
>> Would you expect an electrical
>> engineer to design a car? A mechanical engineer to design a microchip?
>> If not, then don't expect either one to design software either.
>
>What about problems that are well understood by the mechanical engineer
>and poorly understood by the software engineer? While the mechanical
>engineer's program is likely to be less efficient, it's more likely to
>actually produce the correct result. Which is, after all, the bottom line.
It seems that I didn't express myself very well in the original
article. I was refering to the practice many groups have of hiring
non-software engineers to do software engineering. They seem to think
that anyone who "knows how to program" is a competent software
engineer. I only meant to say that _that_ assumption is no longer
true, as it probably was twenty years ago. I "know how to design an
I.C.", but anyone who hired me to do it would be foolish. On the
other hand, it would be completely reasonable to hire me to consult in
the design of a new architecture aimed at specific software.
As far as formal education, I hate to sound "arrogant", but I've seen
the work of some people who had lots of experience in programming with
little formal education. It wasn't pretty. My reaction cannot be
professional bigotry because in most of the cases I learned the
programmer's background _after_ I had formed a rather low opinion of
their programming ability. My experience is rather limited and may
not be typical, but it stands to reason that there is a lot of
information about software engineering that will not be "picked up" on
the job (except by geniuses and people who do a lot of professional
reading). But to be honest -- I've not always been impressed with the
quality of work done by "trained professionals".
And I never meant to imply that non-professionals should not be taught
to program. That would be as silly as saying they should not be
taught mathematics. I _do_ think their programming education should
center around very high-level languages that do most of the grunt
work for them. Just as engineers are not required to learn (much)
meta-mathematics, they should not be required to learn about memory
organization, registers, and machine instructions. If a program is so
time critical that it has to be written in a low-level language like
FORTRAN, C, or Ada, then it should probably be written by a
professional.
--
David Gudeman
Department of Computer Science
The University of Arizona gudeman@arizona.edu
Tucson, AZ 85721 {allegra,cmcl2,noao}!arizona!gudeman
Technical Details
Message-ID:
<13573@megaron.arizona.edu>Path:
arc1-ca.pugleaf.net!utzoo!utgpu!jarvis.csri.toronto.edu!mailrus!csd4.csd.uwm.edu!bionet!ig!arizona!gudemanShow Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!utzoo!utgpu!jarvis.csri.toronto.edu!mailrus!csd4.csd.uwm.edu!bionet!ig!arizona!gudeman From: gudeman@arizona.edu (David Gudeman) Newsgroups: comp.lang.misc Subject: Re: Non-professional programmers (was: Which language to teach first?) Message-ID: <13573@megaron.arizona.edu> Date: 29 Aug 89 22:32:08 GMT Organization: U of Arizona CS Dept, Tucson Lines: 48