Friday, June 8, 2007

I Am A Linux Man

Oh I am a Linux man (well actually Unix before that). History unlearned, repeats the same mistakes again and again. Here's why I'm a Linux man:

I was actually trained as and worked professionally as an Architect at the dawn of the Third Age of computers. I swore off computers after college, because it was clear from the Dean of the school that: "...there is no place in architecture for computers...they are some use in structural engineering." Naturally, I gravitated to Boston, Massachusetts center of the architectural world and ended up working for the third largest firm in the world in a field no one had ever heard of: Computer-aided Design.

I learned all about programming out of self-defense in the wars. The war between the firm's partners: Old School versus New Thoughts. And the more important war, the Genius (but eccentric) Computer Phd's versus the Production People. I fought on the latter side in both theatres and I like to think, I won an education!

The Third Age really begins with the "mini-" computer. The Second Age was all about "mainframes". The "mini" made computing possible for smaller firms than the Fortune 500. By smaller, I mean you had to shell out $250,000 (1968) baseline for just the machine. Staff, programming and maintenance were extra. We then had an 18-bit word computer, with an entire 8K of (core) memory, a tape operating system, a raster graphics display and a vector graphics display. The machine took up eight 19" rack-mount bays 7'-6" high and had less compute power than the original IBM pc.

Let me just focus on software and programming in this little missive. We all know that hardware started on it's steep upward trend in this Third Age time frame and has not really peaked, even today.

Did you know that the first software battle of the Third Age was the vendor Operating System skirmish? Each vendor had it's own Operating System for it's own product line. This meant from a career viewpoint, you were an: IBM'er, a Control Data man, a DEC man or a Data General guy. Later you could be a TANDOM'er or a WANG'er, but we won't go into that. What a pain! You see, when you switched hardware vendors, you also had to learn all new system commands, a new assembly-level programing language and structure, all new procedures, new editors, not to mention all applications you have from the previous vendor had to be completely re-written from scratch. Practically speaking, you never, ever switched vendors once you bought in. The vendor war-lords loved it!

The first rebel raid on the vendor camps were the High-Level Languages. Fortran led the charge, and oddly, Basic brought up the rear. The great thing here was that without too much trouble you could actually port applications between one vendor's machine and another. Not all was rosy, however, because each vendor created it's own version of the high-level languages that had to interface with it's own operating system. Basic wasn't always the same Basic. Oy!

A real change occurred in 1973 once Dennis Ritche wrote the 'C' language (the genesis of unix). This language was the same on all vendor's machines. The final assault came on quickly, once AT&T's Bell Labs (the owner of Unix) finally released Unix into first a university then the commercial environment. My God! Unix as an Operating System ran on any vendor's hardware. Better yet, it was almost identical from port to port. From a programmer's viewpoint: the same commands, the same structure, the same editors, the same procedures and most of all the same applications. A stable toolkit for the advancement of Information Science.

The Operating System war was over...or was it.

Stay tuned for the next exciting installment as: Ray reminisces.

No comments: