A Generation Lost in the Bazaar - Poul-Henning Kamp article

phiscock-g851W1bGYuGnS0EtXVNi6w at public.gmane.org phiscock-g851W1bGYuGnS0EtXVNi6w at public.gmane.org
Wed Aug 22 21:05:57 UTC 2012


An interesting read. However, it reminded me somewhat of those
conversations I used to have in the faculty lounge, where another prof
would lament about the abilities of the current crop of students, and how
the world was going to hell in a handbasket.

At that point, I'd sing the lines from the play 'By By Birdie':

Why can't they be like we were,
Perfect in every way.
What's the matter with kids today?

I also well remember the dot Com (although alas did not have the wit to
exploit it financially), and a young kid telling me how he was going to
put together an 'image over internet' company that would blow us old
fogies out of the water. This without any working understanding of the
concept of bandwidth. He's now repairing machinery in Ottawa.

It takes time to learn the craft of software development. It also helps,
early in the process, to have one of those out-of-control experiences,
like training on a go-cart and then finding oneself at the wheel of a dual
semi-trailer on a mountain road. You can't believe, doing some toy
software exercises, that software is difficult at all, or requires much of
a structure, or that You Need a Plan. I used to put my students through
that with an exercise in machine language. (Navigating a robot through a
maze.)  ML is excellent for this experience, because it has absolutely no
inherent structure, and you have to create it. You get into spaghetti
monster of a program in only a few pages of code. Once they had that
experience, and not before, they were ready to listen to ideas of
modularization, magic numbers, controlled access to the hardware, and so
on.

Overall, I am just astonished by the quality and quantity of software that
has been generated in the Bazaar. By 'quality', I refer to the reliability
of the code, and the excellence of its user interfaces - not the beauty of
the code inside. That's fine - most of us are drivers, not mechanical
engineers. When was the last time you or your lay friends popped the hood
on a car and marvelled at the layout of the engine compartment?

Based on what I'm seeing, there is some really fine work being done. So
yeah, let's slang the bad stuff. (Why is it that the ls command doesn't
have an option of showing only directories? Sheesh. Oh, well, I'll just
use the GUI version, which does it nicely.) Eventually the lousy stuff
will get depreciated or dumped. Put me with the optimists.

Peter



> | From: Jamon Camisso <jamon.camisso-H217xnMUJC0sA/PxXw9srA at public.gmane.org>
>
> | I have tremendous respect and admiration for Poul-Henning Kamp, and his
> | most recent article in the ACM queue has only bolstered it.
>
> Some hits, some misses.
>
> "and even the genuine Unix clone Coherent from the paint company Mark
> Williams."
>
> Not a paint company.  Apparently it was a soft drink company
> (according to http://en.wikipedia.org/wiki/Mark_Williams_Company).
>
> I knew two or three good UNIX folks who went to Mark Williams in
> the early days.  One who went on to contribute to Plan-9.
>
> Autoconf is a disaster in all imaginable ways.
>
> "One of Brooks's many excellent points is that quality happens only if
> somebody has the responsibility for it, and that "somebody" can be no
> more than one single person—with an exception for a dynamic
> duo. I am surprised that Brooks does not cite Unix as an example of
> this claim, since we can pinpoint with almost surgical precision the
> moment that Unix started to fragment: in the early 1990s when AT&T
> spun off Unix to commercialize it, thereby robbing it of its
> architects."
>
> Fragmentation and quality are different things.  Research UNIX was not
> all perfect.  I remember looking at the source for ls(1) in 7th Edition
> and finding it repulsive.  Just try looking at real troff.
>
> "More than once in recent years, others have reached the same
> conclusion as Brooks. Some have tried to impose a kind of sanity, or
> even to lay down the law formally in the form of technical standards,
> hoping to bring order and structure to the bazaar. So far they have
> all failed spectacularly, because the generation of lost dot-com
> wunderkinder in the bazaar has never seen a cathedral and therefore
> cannot even imagine why you would want one in the first place, much
> less what it should look like."
>
> That is the natural lament of a BSD person.  BSDers have lived in a
> slow-moving, mostly high-quality cathedral world.  As a result,
> they've been left in the dust.  And left to try to import the cargo
> floating to their little islands from the big neighbouring continent
> (Linux).  If the cathedral had worked, they would not have had to try
> to import those whales.  You cannot have it both ways. [Is that
> enough metaphor hopping for you?]
>
> This is a common pattern.  The new wave has more energy and less class
> than the old wave.
>
> - I have a friend who thinks the apogee of UNIX was 6th Edition.
>   He lives in Plan-9 now.
>
> - I have a fondness for 7th edition, but it didn't even have TCP/IP!
>
> - my cohort lamented the yahoos of BSD.  Now they are the old old^n
>   guard.
>
> - PC's were crazy/horribly architected but they beat workstations.
>
> - serious system programmers wrote in assembly language when I
>   started.  Later C was a step up, but many lost touch with /
>   understanding of what the machine actually did.  Going to Python
>   makes this worse.  Heck, I actually used machine language for a bit.
>
> - the old-school classical education was "better" than the current one
>   (my father learned Latin and Greek in school; I took typing
>   instead).  But it was aimed at an elite in a much simpler world.
>
> - in my generation, a CS degree was a good basis for a career.  (Many
>   of the best programmers were CS drop-outs.)  The generation before
>   were repurposed physicists and the like.  The dot-com boom let in
>   the self-taught, with mixed results (not all bad).  Not all IT pros
>   are programmers in recent years.
>
> So: nostalgia isn't constructive.  There are lessons to be relearned
> from the past, but we should not try to go there.
>
> Maybe his article is too short.  autoconf etc. are horrible.  That
> hardly makes the whole of open source a failure.  Dependencies are
> complex and escape casual analysis (he doesn't distinguish
> compile-time and run-time dependencies which make his claims suspect).
>
> Both those issues are worth launching crusades over.  I'd join.
>
> | He discusses some of the failings of the Bazaar software development
> | model championed by the likes of Eric Raymond. Given his background and
> | his lifelong involvement with free software like FreeBSD and Varnish, I
> | think much of what he has to say rings true.
>
> But not the only truth.  Remember: most BSD folks are
> quasi-dissenters.  Semi-orthodox UNIX folks (if they were orthodox,
> they might be using Plan-9).
>
> | For example, he shows an autoconf macro and then explains: "That is the
> | sorry reality of the bazaar Raymond praised in his book: a pile of old
> | festering hacks, endlessly copied and pasted by a clueless generation of
> | IT "professionals" who wouldn't recognize sound IT architecture if you
> | hit them over the head with it."
>
> "IT professional" is a fluid term.  In my early days, those would
> never touch something as radical as UNIX.  But massive qualitative
> changes happen when most dimensions of IT have changed by orders of
> magnitude (just not individual human intelligence).
>
> "Poul-Henning Kamp (phk-HZy0K5TPuP5AfugRpC6u6w at public.gmane.org) has programmed computers for 26
> years"
>
> I've programmed computers of 45 years.
>
> Elegance in computer science is simplicity.  One early machine I used
> was the PDP-8: 4K words of core memory, each word 12 bits long.  You
> could really master that machine.  But it cannot do much of what I use
> computers for now.
>
> BTW, the comments on that article on the actual article page are quite
> good.


-- 
Peter Hiscocks
Syscomp Electronic Design Limited, Toronto
http://www.syscompdesign.com
USB Oscilloscope and Waveform Generator
647-839-0325

--
The Toronto Linux Users Group.      Meetings: http://gtalug.org/
TLUG requests: Linux topics, No HTML, wrap text below 80 columns
How to UNSUBSCRIBE: http://gtalug.org/wiki/Mailing_lists





More information about the Legacy mailing list