Saturday 24 November 2018

Norm Hardy

Norm Hardy died at the end of October at the age of 85.  He was a very important mentor to me at a very unstable time of my life.  I'd like put him in perspective as well as remember his achievements.

For me, high school was a horror.  I wasn't exceptionally good and wasn't exceptionally bad and so no one took notice.  It was excruciatingly boring and I was just marking time.  I had no idea what I was going to do in the future except "go to college".  What saved me was Tymshare.

The Palo Alto Unified School District (PAUSD) created an experimental program called the "Research Observers Program".  This was a great idea: The school district would find a student a "research" slot in a company.  My choice was Hewlett-Packard.  I was placed in the Microwave Lab because an engineer there thought it was important to mentor students and because I was intrigued by a particular microwave instrument in the catalog.  But I was way over my head.  But a curious event changed my direction: It was suggested that I learn how to program computers.  HP had a small room (more like a closet) with three teletypes.  The accounts and passwords were written above the teletypes.  And you could connect (via an acoustic modem) to two timesharing services: GE and Tymshare.  GE offered Dartmouth BASIC and that's what I started to learn.  I quickly figured it out.  What next?  Somehow I knew that the machine had an "assembly language" that was closer to the machine.  That's what I wanted to learn.

My nerd buddies Hal Sampson and Bill Parrish were a year ahead of me.  We used to go up to the Stanford AI Lab on Friday nights and explore the system (and play Spacewar).  Bill informed me that Tymshare had a machine room only a half a mile from my house.  Furthermore, there were teletypes in the room next door.  This was the best: I could ride my bicycle to the teletype room and work on my assembly language code to explore the system calls.  I used HP's accounts to do all this work.  Now I have no doubt that I was burning up HP's money at a fast rate.  I was frequently spending my weekends working on my program and that's how I met Norm.

Norm was a distinctive character: he was tall and lanky with a distinctive craggy voice.  He came in on the weekends (driving his white "bathtub" model 356 Porsche) to debug his changes to the operating system.  He was always friendly and offered me advice when I asked.   My mother, meanwhile, wanted me to be employed over the summer.  So she pestered me to ask Norm for a job.  Being rather shy, I was extremely reluctant ... But when I did ask Norm, he said he'd look around.

What Norm found was the same job that other high school students were doing: writing regression tests for Tymshare's top selling product "Super-BASIC".  I handed in my badge to HP and joined in the effort for $1.50 an hour (no benefits).  When the summer was over, I was rehired at $2.10 an hour.  At this point, I was reading  the kernel code and becoming part of the Tymshare crew.  I spent all my spare time thinking about code.   Whenever I had a question, I would head for Norm and he would explain why the code was the way it was.  My favorite example is this one: When a page is created for the first time, the memory should be zeroed.  So, a loop cleared the memory.  But the page clearing routine wasn't as short and simple as expected, so I asked Norm  about it.  He laughed and asked me about the branch instruction.  Such a insightful question: just one instruction gives the whole answer.

Through the good auspices of Norm's wife, Ann (who was the main kernel programmer), I was able to be rehired constantly (mainly to work on the system call manual, which entailed reading the kernel code and writing the text to explain the calls).    I should note that I was reading assembler code constantly and doing the minimal school work to get by.  I did my homework during the lunch hour (with Arnold Wong)  and went to Tymshare immediately after school.  I arrived late for dinner because I was having a most excellent time and I could avoid the chaos of the family dinner.  Evenings were spent finishing homework and reading more code.

Norm always functioned as a kind of factotum for me.  One year, when I came back from college, Norm presented me with a paper about an operating system design.  This design evolved over many years to become an elegant and secure operating system and that's where Norm's passion really belonged.  Norm never really published in the technical literature but he was widely respected as a creator of a novel state-of-the-art operating system.  His blog (Cap Lore) is filled with stories and observations about computing.

But later I found out he had another passion: music.  I once visited him at his house in Portola Valley.  He had installed an enormous pipe organ!  Like Knuth, Norm liked his Bach both loud and very real.  And I had no idea.

At a critical time in my life, Norm appeared and showed me that one could be passionate about computers and make a life out of it (or from it in my case).  At a time when I wasn't sure "how to be", Norm was an exemplar of extreme competence in math and computers.  And he also exhibited a  joy and delight in explaining concepts.

My other recollection is that Norm had a huge collection of stories about various computers.  His first job was at Lawrence Livermore and he had extensive experience with many very fast and very expensive machines.  And he loved to tell tales about them.  And I liked to listen and learn.


No comments: