From: Mike Taylor <mirk@system-simulation.co.uk>
Subject: Re: Sandbox column and the role of "hackers"
Submit-To: scomag@xenitec.on.ca
Organization: [resent by] The BIZSCO gateway and Propagation Society
Date: Mon, 21 Dec 1992 15:13:30 GMT
Resent-By: mmdf@xenitec.on.ca
Precedence: bulk


> I am very disappointed with the articles from contributing editor
> Sean Fulton. This Mr. Fulton is the typical computer person I weed
> out of all my client sites, and help them avoid engaging for any
> kind of technical work. Professionals in my business refer to this
> person as a "hacker."  Hackers have kept the business of computing
> from becoming the true profession that it is.

It seems clean that the writer's problem is that the hackers he has
encountered are bad at their jobs, and the "software engineers" he has
encountered, if this is the term I want, are good at them.

As a basis for rejecting an approach to programming, this is about as
valid as rejecting a style of music because of have heard poor
examples of it.  In order to design and implement elegant, efficient
and correct systems, clearly a combination of intuitive/aesthetic and
scientific/analytic faculties are required.  The sort of programmer
who majors in the former, you correspondent designates as a "hacker",
but his role is as vital as that of his more "scientific" colleague.

(Obviously, these two types of programmer are often instantiated
simultaneously in a single human being: people such as this, who have
the ability to view programming problems from both of these two
different viewpoints, are invariably the most productive programmers
of all.)

> The hackers' lack of quality education and propensity for
> trial-and-error methods of implementing plans leave clients
> suspicious of the computing business as a whole.


Pointedly ignoring this ridiculously sweeping statement, I must say
that I am always wary of people who want to see programming and
related activities becoming a "profession", by which they presumably
mean that will all wear suits and ties, attend expensive conferences
on object- oriented design methodologies, and be required to pass
examinations before practising.

These requirements may be laudable (not that I say _may_ be!) as
regards the scientific side of programming, but the artistic side is
served by them not at all, and it is a mistake to disregard this part
of our noble occupation.

A brief bit of history:

Until the late seventeen hundreds, composing music was seen as a
"profession", much as accountancy or law is today.  Composers were
paid a salary, in return for which they were expected to produce
certain amount of new music, and on the whole, they went about this
efficiently, quickly and cleanly, "professionally".  Lucratively, too.
Elaborate sets of rules were evolved governing what harmonies were
permissible, what constituted "correct" counterpoint, and so on.

With a few exceptions, the music of that era is unused today.  It just
does not have staying power, and the great majority of it has sunk
without trace.

The principle composer of this era whose work is still performed today
is J. S. Bach, whose music typically stands head and shoulders over
that of his contemporaries.  Other than Bach, and the occasional work
by Handel or Vivaldi (both essentially single-work composers), the
music of the seventeenth and early eighteenth century is virtually
dead.

Now the thing that marks Bach out from other composers of his era is
not primarily his technique, but his adventurousness, the freedom, if
you will, with which he broke the "rules" which were generally applied
in his time.  His use of modulation and counterpoint in particular,
were quite unheard of in his day.

Now from Beethoven onwards, history is littered with those who we would
nowadays think of as "great composers".  Beethoven himself, on through
Berlioz, Chopin, Liszt, Brahms, Stravinsky, and so on into the 20th
century.  The reason this is interesting in the current context is
that Beethoven is widely considered to have been the first composer to
think of himself as an artist, to consider his work as something more
than a technical exercise worked out primarily because it happened to
be his job.

The lesson, I hope, is clear.  To produce great work, it is, in
general necessary to be something of an artist, as well as a
technician.

Please don't misunderstand this illustration: in no way am I exalting
the role of artistry in computing _above_ that of technical competence,
analytical ability and all the other facets of the programmers skill
that we know to be indispensable.  With a _very_ few exceptions, all
of the great composers have been consummate technicians as well as
artists.  But I firmly believe that a combination of both is required
to create A Great Work.

Let me close by observing that, similarly, many of what we would
consider great innovations in the (recent) history of computing have
been due to "hackers".  The now ubiquitous concept of "windows" was
evolved in the notorious hippie hangout of the Xerox PARC, The Apple
computer company which is raking in vast quantities of money from this
idea was originally the brainchild of two men who are almost laughably
stereotypical hackers, and the Unix operating system itself is the
result of close work between several of the hacker/engineer hybrid
types discussed above.  Perhaps most obvious of all, the GNU project,
which is responsible for EMACS and everyone's favourite C compiler,
GCC, derives from the fabled had of the hacking legend Richard
Stallman.  Almost certainly, the correspondent who wrote the original
letters uses most if not all of these things in his everyday work.

But clearly, none of these innovations would have been possible
without the "scientific" work which acts as a foundation for them.
Brian Kernighan, one of the principle architects of Unix as we know it
today, is quick to acknowledge his debt to the likes of Dijkstra,
Dahl, Hoare, Knuth and Wirth in all his books.

Enough already!  Let the hackers and engineers co-exist and work
together, peacefully and fruitfully.  And let young programmers be
trained in both facets of this most fascinating occupation.

 _/|_	  ____________________________________________________________________
/o ) \/(  Mike Taylor -- {Christ,M{athemat,us}ic}ian	 Email: mirk@ssl.co.uk
)_v__/\(  "Keep an open mind ... but not so open that your brain falls out" --
	  Gerald Coates.
Newsgroups: biz.sco.magazine