[net.followup] Professional Programmers and Terminal Jockeys

sunny@sun.uucp (Sunny Kirsten) (05/25/84)

Greetings:

	First, I believe it is a bit late to be worrying about the
Professionalization of Programming.  The entire concept has missed the boat.
Just as computer architecture has grown from massive batch/timeshare
computer centers with the attendant flocks of gurus and programmers
affordable only by large corporations and the government, towards a
globally distributed network of interconnected personal computers
each programmed by it's owner, so the concepts of Programming evolve
from the sacred black magic of the one holy method of programming, to
an infinite variety of synergistic software/hardware environments
which allow each and every person to expand their mind outside the
body in a personally comfortable way through individualized human/machine
interface, wherein the only requirement for standardization is that
you be able to plug into RS232C and speak ASCII, or plug into RJ11 and
speak 103 or 212A.  

Just as the computer world is revolutionized by the popularization
of traditional applications in a natural / iconic form in a 
programming language free environment (a la Xerox Star, Apple Lisa & Mac)
so that everyone may be free to transcend command syntax errors, one
must surely forsee the expansion of such environments to make computer
programming more natural and personal, with the widespread availability
of the next generation man/machine interface: the mouse driven, multi-
windowed, bit-mapped-graphics workstations which will allow the development
of tools such as graphical programming languages, where you draw decision
boxes and operation boxes and data files, and you can *SEE* the corectness of
your programs, because all the execution and data paths are right there in front
of your eyes, with error messages in flashing red, and data paths in cool blue,
and execution paths in OK green, and warning messages in cautionary yellow, and
operator input piped through the bozo filter, and in flourescent orange,
everything which has changed since the last time you (or someone else)
checked the source code out for edit from SCCS.

Thus the computer professionals will truly have even more professional tools,
and John Q. Hacker and Mary J. Coder will yet be able to forever muddle
their way along writing the most twisted code you can imagine, and everyone
will still be able to miscommunicate with everyone else through the modern
miracle of ASCII.  There will always be bozo hackers working their way up
through the ranks of the burnt-out professional programmers, and programming
styles will always be as varied as the people themselves.  As the machines
become more intelligent, it will become more and more difficult to tell
programming them from using them, because they will be heuristic, just as
we are.

Which came first? the computer architecture? or the human thought process it was
modeled on?  When is the evolution not interdependent?  Did you *really* want
that we should all be {ADA,ALGOL,APL,BASIC,BCPL,BLISS,C,CLASSCAL,COBOL,DIBOL,
ENGLISH,FORTRAN,JOVIAL,LISP,LOGO,MESA,MIX,MODULA2,PASCAL,PL/I,PROLOG,RATFOR,
SNOBOL,WATFOR} clones?  Don't we have enough professional standards already?
Even if we ignore the variety of standard languages, just look at the number
of incompatible implementations of any one of the above languages!  Not to
mention the flavors of each language (e.g. {FORTRAN{II,IV,V},f77}).  The
problem is sociological in nature:  the general attitude is one of:
"I'm in favor of standards.  Would you like to support mine?"

Even if you could compile my code, how shall I send it? 300 or 1200 baud?
bandwidth limited ASCII? Xon Xoff handshake?  will the data stream be
carying plain text? DES cypher? X.25 packets? XNS? IP/TCP? TCP/IP? which rev?

I *AM* in favor of standards, and I'm even humble enough to adopt yours
rather than insisting on mine, but you are one voice in many, few of which
agree.  I've seen this industry saved year after year by the latest standard,
for over a decade.  Why should programming (communicating an idea from one
machine (you) to another (your subservient computer)) be any different than
any other area of human endeavor where diversity is the rule?  If we can't
all speak the same language to each other, ({English{Queen's,Austrailian,
American{Southern, Northern,Western}},French,Italian,Latin,Spanish,Greek...}),
how can we expect to all speak the same language to our computers?  AHA!
Our big chance for sociological transformation...let's create a universal
computer based language and let that become the standard to replace all
the above programming languages and all the above human languages.  NEWSPEAK!!

[ucbvax,decvax,ihnp4]!sun!sunny	(Sunny Kirsten of Sun Microsystems)

minow@decvax.UUCP (Martin Minow) (05/30/84)

Along with a few other people on this network, my programming
experience reaches back into the dim, distant past:  I wrote
more-or-less raw machine code for Illiac I, SPS and Autocoder
for the IBM 1401, punched many boxes of cards in Fortran II,
Mad, and assembler for the IBM 7090, wrote Algol on papertape
for Trask (a Swedish transistorized descendent of Illiac I),
punched more boxes of cards for an IBM 360, and have been using
minicomputers and timesharing systems for about 12 years now.

I prefer the flexibility and speed of composition of today's
interactive environment.  Joss and Basic (both about 20 years
old now) are the two single greatest advances in computer
engineering since Grace Hopper invented Cobol and Don Wheeler
invented the subroutine call.

A friend recently mentioned that he read a study comparing
programming environments.  They concluded that the most
cost-effective environment was interactive Basic.  This is
in full aggreement with my experiences.

One of the problems with proffesorial decrees on the theories
of software engineering is that none of them have ever written
a "real-world" program, such as a payroll or warehouse receiving
system.  Turns out that the real world isn't quite as well
organized as one would like, and tools honed by the task of
moving queens around on a chessboard aren't always suitable
for the task of deciding where to put the 25 tons of steel rod
that just arrived at the loading dock.

Martin Minow
decvax!minow