View Single Post
Old 5th August 2008
DrJ DrJ is offline
ISO Quartermaster
 
Join Date: Apr 2008
Location: Gold Country, CA
Posts: 507
Default

I'll try to keep this brief; let's see if I succeed.

I started programming in 1975; it was a rudimentary FORTRAN course required of all engineers and optional for scientists (they could also choose Algol-W). We used punched cards to feed an Amdahl mainframe, probably the first IBM-compatible, though this one was compatible with the IBM 360. Card punches are terribly unreliable, and often the ribbons would lose ink (and not print the statement at the top of the card) so when you found a decent card punch you tended to return to it.

The first computer I owned was a Compupro, an S-100 bus computer on which I ran MP/M 8-16; I bought it in 1980. It had dual processors (8085 and 8088), 256K of fast static RAM, two 8" floppies (1.2MB each) and a slew of serial ports. The dual floppies actually worked pretty well: you could put your OS and all your applications on one, and use the other as a working disk for your files. Input was from a serial terminal, and output was to an infernal dot matrix printer. God those things were awful.

I had a friend in the department at Berkeley who wrote bits and pieces of the OS for Compupro, and they gave the department a damn good deal. They were also located physically a few miles away (near the Oakland, CA airport, FWIW).

My first exposure to Unix was at Berkeley in the height of the BSD era. It was just hard to avoid. I remember well the day we got our first terminal in the lab (a Televideo 925 -- yuck!) and it was shared between about a dozen of us. Most people used the IBM mainframe (or earlier one of the CDC mainframes); much work was done on a lab Compupro, with some of us slowly migrating over the Unix. I learned much of that using the program "learn" in the bowels of Gilman Hall, a registered national monument in which plutonium and some other transuranic elements were discovered. Work for two Nobel prizes was conducted there. "Learn" is pretty easy to port, and is available on Kernighan's web site.

Over they years I have programmed on nearly every OS: the early Apple ones and OS7 (was there one of those?), IBM's VM/CMS, DEC's VMS, HP's RTE-A, MS-DOS, Windows, and of course Unix. There were interludes with the Pet (as mentioned above), on which we wrote finite-difference heat conduction code (that thing was terribly slow) and a Tektronics graphics computer using their extended BASIC. I designed a solvent-recovery system for an Ibuprofen plant on the latter.

It truly is amazing how much faster computers are today than they were in the old days, and that brings up an interesting story. Some years ago I wanted to pull some papers out of my thesis, which I had stored on a standard tape in tar format (in 1988). I found a fellow who still had such an old tape drive, and he transferred it to a CD for me -- over 15 years later. No issues at all with data longevity.

My thesis was in troff, and it ran through groff without a hitch. Try that with a modern word processor.

For kicks, I took the code that I used for one of the larger calculations in the thesis. I ran it on the Compupro, and it took about 8 hours to execute. On a 500MHz PIII it took a few tenths of a second. On a modern computer you get into round-off error if you use a shell timing routine. That is much faster than the mainframes of the era; even the VAX 8600s of the day took about 5 minutes to execute the thing. Remember that this VAX was the hot box of the day, and it routinely supported well over a hundred users.

Many more stories, of course, but I'll end here for now. I still have the Compupro, BTW, and it works as well as it always did.

So much for keeping it short.

Last edited by DrJ; 5th August 2008 at 07:13 PM.
Reply With Quote