I have a new job, a contract job working for Earth Networks, actually working for my son Mike. (He’s a physicist.)   My current assignment is to create a contour map showing detector error from a stream of data. After writing javascript for five years, I now need to learn to write C#, use the .NET framework, create sql queries, and serve web pages.  Although my past experience allows me to learn quickly, I feel barely competent doing this work.  That got me to thinking about competence as it relates to my past jobs.

Edgenuity c. 2010 – 2015

Rating: Extremely competent –  Every day I was sure of two things: 1) I knew what I was doing and how to do it;  2) No one could do it better.  I loved this job.  Looked forward to working every new day.  I was sure the people with whom I worked valued my contributions.  Until they deleted me.

Teaching Jobs c. 1998 – 2015

Rating: Shitso, as in schizomaniac –  On any given day, I was as good I did that day; no, as good as I did with my last student of that day.  Some days I came home depressed, thinking I had no clue how to reach the kiddos.  Other days I came home at the top of the world, thinking I was great and powerful.

Microsoft c. 1981 – 1994

Rating: Shitso – . Most days I felt utterly unqualified.  Worse, I was terrified that others would realize I was a complete idiot.  Some days, not many, I thought I was a god.  Actually, I still remember the day one of my bosses told me he thought I was a god.  Steve Ballmer didn’t think I was a god, but he thought I was good enough that he gave me an award one year,  a 10K bonus another year, and two leaves of absence when I could do whatever I wanted and then come back.

Oh, also, I met an old friend at a reunion a couple years ago.  Good friend.  He said – he was so glad I was there, he wanted to tell me that everything he ever learned about management he learned from me.  That was 20 years ago.  Since then he became a vice president. I became a teacher.

Wang c. 1979 – 1981

Rating: Competent –  My first computer job, first day, my boss Geoff said nice things to me.  Maybe a half year later, I overheard him grumbling to some other dude that I was underdressed for some occasion.  About six months later, he thought I was, well not a god, but maybe a godsend.  I thought I was hot shit until I got to Microsoft and everyone else was smarter.

First Days at Microsoft

I arrived for my first day at Microsoft during the afternoon of December 30, 1980. The company had just moved into their new location, occupying a third of the building at the corner of Northrup Way and 108th Avenue. Most of the offices were empty, and I had to work my way around boxes cluttering the hallways to find the way to my new boss, Charles Simonyi. He seemed a bit surprised, then ruffled through a stack of papers, handed me a stapled pair of pages to read, then walked me down the hall to select an office.

End User Group at Microsoft - Charles Simonyi is far left. I'm in the center.
End User Group at Microsoft – Charles Simonyi is far left. I’m in the center.

My office didn’t have a computer yet. I sat down and read the paper, which Charles had authored, describing the Hungarian naming convention for writing self-documenting code. Incidentally, Charles was from Hungary.

About an hour later, Steve Ballmer dropped by to say hi.  He had hired me as part of the first 100 people at Microsoft who would be writing applications targeted for the new MSDOS operating system and the IBM PC. Steve chatted with me for a few minutes, ending the conversation with “I’ll let you get back to work.” That meant re-reading Charles’s paper, which really didn’t make much sense. (Several months later, after a chat with Charles, I would become a hard-core adopter of Hungarian.)

The following day, the last day of 1980, Charles gave me a copy of Kernighan and Ritchey, so I could learn C, and a description of the Zilog Z8000 architecture and instruction set.  My first assignment would be to write a p-code  interpreter that would run on the z8k. Of course we didn’t have an assembler yet, but that didn’t matter because I didn’t have a computer yet either.

Evening of that day, Martha and I went to the grocery store, trying to figure out how to stretch the $30 that remained in our bank account to last until my first paycheck.  The next day was the New Year.

First day at work in 1981, someone installed a computer terminal in my office.  It was tied to a DEC PDP-11 time-sharing system.  Charles gave me another manual so I could learn to use Unix. A little later, I received a document describing the architecture of the virtual machine and p-code interpreter I was to implement on the Z-8000.

I was part of the new end user group Charles had formed at Microsoft.  Our mission was to create new applications that would run on personal computers: spreadsheet, word processing, charting and database. These applications would be written in C, compiled by their new CS compiler into p-code, which would run on virtual machines we also developed for the many different personal computer architectures at the time: the Radio Shack TRS-80, IBM PC, Osborne, Commodore, Apple II, and Olivetti’s new z8k box.  Charles’s strategy aimed at creating a revenue bomb because each new application would be written only one time, rather than separately for each pc architecture.  Also, it was easier to write interpreters for new hardware than it was to create a new C Compiler.

I believe it was April by the time my p-code interpreter was running on the z8k.  Proof came in the form loading and running compiled p-code from Microsoft’s new spreadsheet on the Olivetti computer.  That was Multiplan.


Win95 Reunion

Satya, David, Karl, Kevin, and Lin
Satya, David, Karl, Kevin, and Lin

September 12, 2015, twenty years after shipping Windows 95, the team reunited at Benaroya Hall in Seattle.  David and Charu did most of the work making this event happen.  Brad had to twist my arm several times to convince me to come. It turned out to be an incredible once in a lifetime experience.

I met Brad twenty five years ago, right after he first came to Microsoft from Borland.  Fittingly, it was on a bike ride.  Several days later he was in my office, refusing to leave until I agreed to join the Win 3.1 team.

Our development team was tightly knit.  As dev manager, I suppose I did a lot to make us that way. For many long hours together, we worked to create a product that would change the world.  Twenty years ago, I moved on to a new life.  Saturday evening we all stepped back in Time.