I have the greatest respect for Ken and Dennis, but I think their drive for simplicity was partly the result of the exceptionally tiny memories we all had to live with.  You had to keep it simple or else it wouldn't fit!  Every feature you added took memory that might have been more usefully employed in another way.  So we all learned to worship Occam just to get things done. 

I remember Dennis started out at one time to build a "real" optimizer for C, but by the time he had built the necessary data structures he had no room for the algorithms, or even enough data to be useful...  And, while writing yacc, I came in one day to discover that it would no longer compile.  Dennis had added the 'register' keyword and it turned out that one of my yacc functions had completely filled the symbol table.  I had to rewrite it to use one fewer variable name!

When we got a VAX, especially when paging became available, it felt like being released from prison.  My experience is that the problems involved in making a program faster are often quite interesting and fun to work on.   But the problems making things fit in a small space are, IMHO, really deadly.

Now things are a million times bigger and it feels like chaos has become the accepted model for how we live...  I see it particularly with the error messages I get from programs like Python and Git.  They seem to have two modes.  One mode gives a large amount of arcane data (e.g., a stack trace of 20 functions, none of which are documented) and then the error message is something like "insufficient frabulation" which is meaningless to me) or they appear to be quite user friendly and spell out the steps to make progress, but use words like "fix" and "resolve" that don't translate into anything concrete for a casual user.

There are huge advantages in having a shared frame of reference and vocabulary, especially with co-workers.  But in our field things have become so fragmented...   This is particularly an issue with start ups -- people come from different environments and a lot of time is spent simply learning how to communicate with each other...

Steve

----- Original Message -----
From:
"Robert Brockway" <robert@timetraveller.org>

To:
"The Eunuchs Hysterical Society" <tuhs@tuhs.org>
Cc:

Sent:
Mon, 5 Feb 2018 10:06:58 +1000 (AEST)
Subject:
Re: [TUHS] Windows roots and Unix influence (was Re: Happy birthday, Ken Thompson!)

. . . .

This speaks to the "great man" theory of history. This posits that
history would have been different if a great person had died before their
moment in history. Eg, Winston Churchill was hit by a car when visiting
New York City in the 1930s. He looked the wrong way before trying to
cross the road. What if he had died? Would WW2 have turned out
substantially differently?

The alternative is to presume that a niche exists in to which a someone
(or in this case an operating system) will step to become great. Using
this alternative view, if Winston Churchill had died in the 1930s (or if
UNIX had not been developed) an alternative would have filled that niche.
Maybe we'd all be talking about TOPS20 now :)

Rob