[comp.lang.ada] "Software Fantasyland," and Government Agencies

tuck@iris.ucdavis.edu (Devon Tuck) (02/27/89)

The Hydrologic Engineering Center where I work in Davis, CA. is the primary
source of computer programs in the field of hydrology.  We have about 50
people working with us, and out of all of those, there is exactly one and
one half of a staff member with a degree in computer science.  The "one"
has a masters degree, and has been permanent for many years now; the "half"
is a masters candidate from Sac State.  I am the only other person who is
close to having a degree in CS, and am the only undergraduate working for
the HEC.

The language of practice (not fully the language of choice) at the HEC is
Fortran 77.  Only now, that I set up and am doing conversions to, a XENIX
system, are we really doing a substantial amount of C programming.  What
I find shocking is similar to what the previous message just mentioned:
many of the staff actually started out with very little formal education,
and slowly worked their way up to programming positions, or system
administration positions.  A good example is our system administrator for
our Harris 1000 (uggh) mainframe.  He started out as a truck driver :-)

Even more entertaining is the method by which a Core Fortran application is
maintained for several different computers and compilers.  These programs
were written in F66, translated to F77, and then modified for 3 other
compilers and machines.  What is shocking is they maintain a single program
so that it works on all three simultaneously.  How do they do that? Well
they simply comment every "set" of code, that is specific to a certain
machine or compiler, and then they put 1 to 3  letter tags in the unused
73rd column.  When modifications are done, they make them to a main
program, then run a batch-text processor on the source, and BAMM! they have
a new version.  This means that when we need to modify part of the program,
we have to do it simultaneously for 3 different compilers or machines :-(

If our staff were forced to use something like ada, I believe life would be
alot easier.  Unfortunately, there is no way they will spend the money to
sit down and translate already working programs, nor will they deem it
necessary to retrain the entire Core who use our programs so they may make
their own modifications in the new language.  ("If it works, don't fix it!")

Devon Tuck  (tuck@iris.ucdavis.edu)