Sunday, November 30, 2008

My First Computer


Like your first love, you never forget your first computer.


In the late 1970s, I worked for Beckman Instruments as a QC inspector in their hybrid microcircuits department. Hybrid microcircuits are very complicated things, so they had to be tested by computers connected to racks of testing equipment. The QC lab was filled with computers (mostly DEC PDP-11s) and innumerable shelves packed with electronic testing equipment – all of it the finest gear money could buy. It was an electronic technician's heaven.

I'll never forget walking into the lab on my first day of work. On the back wall there was this one equipment rack that stood out. It was sleek, modern, imposing. It had an angelic glow. I think I heard a choir when I first saw it. On a desk next to the rack was the computer that controlled it – a desktop device that looked like a large calculator. Eventually, I was allowed to use it - and that's when I fell in love.

It was a Hewlett-Packard 9825.

As a QC inspector, my job was to operate the HP 9825 - not program it. I didn't know anything about computer programming, but I wanted to learn. I wanted to learn because I wasn't satisfied with operating the 9825 - I wanted to explore it. I wanted to get intimate with it. So, on every 15 minute break and lunch break I would read the 9825 manuals. In time, I got a good understanding of the computer's language, but I didn't know how to write a program. I needed a printout of an existing program to use as an example, but there was no way for me to get one without asking one of the in-house programmers for it.

The programmers in our department were a group of about 4 guys. They were brilliant because they had to know more than computer programming - they also had to know electronics. It wasn't enough to know how to construct a for-next loop - you also had to know Ohm's law, fast Fourier transforms, frequencies, etc.

In that group of programmers were two personality types – the territorial ones and the not-so-territorial ones. I approached the not-so-territorial ones about my desire to program the 9825, and asked if I could see a program printout. They gave me several. I pored over the printouts and eventually wrote a few routines of my own that manipulated the computer's display. The day came when I demonstrated my routines to the programmers - they were impressed. I continued learning and exploring. As long as I wasn't messing around with their programs, the programmers were happy to answer questions and give advice. But then things changed...

I was working with the 9825 one evening after the programmers left work. A test that needed to be completed before the end of my shift wouldn't run – because the program was stuck in a loop. It would ask the operator a question, and no matter what was entered, it would keep asking the same question. I agonized over what to do. I knew I had the capability to fix the broken loop, but I also knew that doing so might destroy the friendly relationship I had with the programmers. I reasoned with myself, “It's a simple one-line fix – it doesn't alter anything important. Surely they will be okay with it.” I fixed the program, completed the test, and then left the programmers a note about what I did.

My solution didn't go over well. The territorial types used my actions as a reason to lock the source code so that no one except them could alter it. Most of the programmers became less supportive of my efforts to learn computer programming. Except for one – he gave me a personal computer so I could continue learning at home. He also came to my house to help me learn other programming languages. In time, I started doing side programming jobs, which later became a thriving full-time business.

I've worked in all kinds of environments, from PC to mainframe, from single user systems to complicated enterprise class client-server systems. Through it all I have never forgotten my first love – the HP 9825.

No comments: