[comp.software-eng] Engineers are just as much in the dark as programmers.

bks@ALFA.berkeley.edu (Brad Sherman) (05/26/89)

Come off it you guys.  "Real" engineers screw up just like we programmers.
O-rings fail, new cars are recalled, helicopters crash, chunks fall off
of jet airliners, windows pop out of high-rise buildings, new bridges
collapse, structs crack, pipes burst, freeways are jammed upon completion,
printed circuit boards have suspicious little wires soldered here and there.

The big difference, as far as I can tell, is that the educational and
certification systems for older engineering disciplines keep out more
of the rank amateurs (or should I say rinky-dink entrepreneurs).  I've
seen million dollar (software) projects being handled by start-up companies
I wouldn't trust to get a "hello, world" program correct.

Good engineering is done by good engineers.  Good software is produced by
good programmers.  The problem for software projects is
that there are not enough good experienced programmers and therefore
there are not enough good experienced programming managers.
I know what a programmer is.  I almost understand what software-engineering
is.  Computer Science seems  just as valid as, say, Political Science
and more valid than Economics.  What I want to know is, just what the hell
is a "Systems Analyst," and why do big companies keep putting them in charge
of programmers [only marginal sarcasm intended]?

		-Brad Sherman (bks@ALFA.Berkeley.EDU)

Just a programmer unless, of course, calling myself a software engineer
or systems analyst would result in a bigger paycheck.

chrisp@regenmeister.uucp (Chris Prael) (05/28/89)

From article <24857@agate.BERKELEY.EDU>, by bks@ALFA.berkeley.edu (Brad Sherman):
> Come off it you guys.  "Real" engineers screw up just like we programmers.
> O-rings fail, new cars are recalled, helicopters crash, chunks fall off
> of jet airliners, windows pop out of high-rise buildings, new bridges
> collapse, structs crack, pipes burst, freeways are jammed upon completion,
> printed circuit boards have suspicious little wires soldered here and there.
> 
> The big difference, as far as I can tell, is that the educational and
> certification systems for older engineering disciplines keep out more

Which simply shows that you, like many in our field, are seriously 
under-informed about how real engineers function.  Yes, failures 
do happen in the conventional engineering fields.  And, usually, 
when the failure is investigated (another big difference) the failure is traced to unprofessional conduct: procedures ignored, 
specifications not written or ignored, covering up, etc.  Just like 
in the programming projects that go bust!

> Good engineering is done by good engineers.  Good software is 
> produced by good programmers.  The problem for software projects is
> that there are not enough good experienced programmers and therefore
> there are not enough good experienced programming managers.

My experience is that, in the South Bay Area anyway, it is very rare 
for competent programmers to rise to managerial positions in 
software.  More often it is the unprofessional muck-ups who become 
managers.  A competent professional scares the pants off these jerks.

> I know what a programmer is.  I almost understand what software-engineering
> is.

Until you know what software-engineering is, you will not know
what (or who) a competent programmer is.

>  Computer Science seems  just as valid as, say, Political Science
> and more valid than Economics.  

Interesting choice.  How is it that you find Political Science
more valid than Economics?

Chris Prael

diamond@diamond.csl.sony.junet (Norman Diamond) (05/29/89)

In article <24857@agate.BERKELEY.EDU> bks@ALFA.berkeley.edu (Brad Sherman) writes:

>Good engineering is done by good engineers.  Good software is produced by
>good programmers.

True.  Only most companies want to hire cheap programmers instead of
good ones.

>The problem for software projects is that there are not enough good
>experienced programmers

I think that in fact there are.

>and therefore

So I do not think it is the reason for the following:

>there are not enough good experienced programming managers.

This is definitely true.  Many good programmers do not want to become
managers because it is easier and more productive to manage computers.
But even those who do want to become managers are often frustrated.
Again most companies do not want managers to be experienced in the
field that they're managing.  My impression is that other fields of
engineering would suffer this problem too, except for legislation and
licensing requirements, etc.

There are exceptions though.  If a good programmer begins working for
a bank instead of for a vendor, the rewards will arrive several years
later.

--
Norman Diamond, Sony Computer Science Lab (diamond%csl.sony.co.jp@relay.cs.net)
  The above opinions are my own.   |  Why are programmers criticized for
  If they're also your opinions,   |  re-implementing the wheel, when car
  you're infringing my copyright.  |  manufacturers are praised for it?

hollombe@ttidca.TTI.COM (The Polymath) (05/31/89)

In article <24857@agate.BERKELEY.EDU> bks@ALFA.berkeley.edu (Brad Sherman) writes:
}... just what the hell is a "Systems Analyst," ...

In theory, at least, a person who determines user requirements and
converts them to system specifications.  Programmers turn system specs
into code.

-- 
The Polymath (aka: Jerry Hollombe, hollombe@ttidca.tti.com)  Illegitimati Nil
Citicorp(+)TTI                                                 Carborundum
3100 Ocean Park Blvd.   (213) 452-9191, x2483
Santa Monica, CA  90405 {csun|philabs|psivax}!ttidca!hollombe

bks@ALFA.berkeley.edu (Brad Sherman) (05/31/89)

In article <33816@regenmeister.uucp> chrisp@regenmeister.uucp (Chris Prael) writes:
>From article <24857@agate.BERKELEY.EDU>, by bks@ALFA.berkeley.edu (Brad Sherman):
>> Come off it you guys.  "Real" engineers screw up just like we programmers.
>>	...
>> The big difference, as far as I can tell, is that the educational and
>> certification systems for older engineering disciplines keep out more
>>      ...
>Which simply shows that you, like many in our field, are seriously 
>under-informed about how real engineers function.

Well, this IS the crux of my argument.  Please enlighten us.  What is
it about the day to day functioning of "real" engineers that is
so different from the way "real" programmers function. 

>> I know what a programmer is.  I almost understand what software-engineering
>> is.
>Until you know what software-engineering is, you will not know
>what (or who) a competent programmer is.

Was that necessary?  I'm a member of ACM, IEEE Computer Society and
I read IEEE Transactions on Software Engineering.  I have completed
projects on time, to spec and under budget.  However, almost every month
in one form or another, I read or hear some "real" engineer complaining
about programmers.  I'm still waiting to hear a description of what engineering
connotes that is missing from software development.  This does NOT
mean that I reject the kind of discipline, redundancy and design that I
THINK is implied when the phrase "software engineering" is used.  Nor do
I wish to be associated with amateurs any more than engineers want
to be associated with tinkerers (no offense intended to this honorable group).

>> ... 
>Interesting choice.  How is it that you find Political Science
>more valid than Economics?

It might be because the P.I. for our group is a Political Scientist,
but I'm far too objective to let something like that influence me.

	Brad Sherman (bks@ALFA.Berkeley.Edu)

davecb@yunexus.UUCP (David Collier-Brown) (05/31/89)

>In article <24857@agate.BERKELEY.EDU> bks@ALFA.berkeley.edu (Brad Sherman) writes:
>}... just what the hell is a "Systems Analyst," ...

In article <4514@ttidca.TTI.COM> hollombe@ttidcb.tti.com (The Polymath) writes:
>In theory, at least, a person who determines user requirements and
>converts them to system specifications.  Programmers turn system specs
>into code.

   I'm not sure that's a theory.  I suspect its IBM policy (;-)).

   A real systems analyst is someone who understands (in the sense of
being able to model & predict) the behavior of complex interacting
(sub-)systems.  They **are** occasionally found in industry, but in most
cases the term is a job-title for a senior programmer who has done at
least one major project without it failing completely, and now is excused
from further programming.

--dave (who actually studied systems theory) c-b

ps: the above is quasi-humourous. flames to /dev/null

chrisp@regenmeister.uucp (Chris Prael) (06/01/89)

From article <25047@agate.BERKELEY.EDU>, by bks@ALFA.berkeley.edu (Brad Sherman):
> In article <33816@regenmeister.uucp> chrisp@regenmeister.uucp (Chris Prael) writes:
>>From article <24857@agate.BERKELEY.EDU>, by bks@ALFA.berkeley.edu (Brad Sherman):
>>> I know what a programmer is.  I almost understand what software-engineering
>>> is.
>>Until you know what software-engineering is, you will not know
>>what (or who) a competent programmer is.
> 
> Was that necessary?  I'm a member of ACM, IEEE Computer Society and
> I read IEEE Transactions on Software Engineering.  

I don't know what, or that, membership in ACM or IEEE could have to do
with the issue.  The question is one of performing in a disciplined and
open manner more than anything else.

>                                                    I have completed
> projects on time, to spec and under budget.  

Sounds to me as though you have the basic idea.  I would have been more
pleased to see the first two items in the reverse order.  Now, do you 
perform this normally, as a matter of course, or in exceptional
circumstances.  If the latter, you know how to be an engineer.  If the
former, you are an engineer.

Chris Prael;