30 years ago today, I sat down at a computer for the first time,
and I wrote my first program.
I was in Fifth Year of secondary school in Ireland—the equivalent of eleventh grade.
Personal computers were just coming into Ireland;
few people had them.
I had been taking an extracurricular course in computer programming,
in the school's physics lab.
We wrote code on paper at our desks, as there were no computers in the room.
Somehow, I hadn't realized that there was another room with computers,
in a normally off-limits part of the school, until late January.
Once I sat down at a computer, I was hooked.
PRINT 2+2? 4!
Writing code on paper was boring.
This thing was fun!
There were five Apple ][s in that room and eight regulars, if I remember correctly.
I spent a lot of time after school in that room over the next few months.
I became comfortable with AppleSoft BASIC
and I wrote some sloppy 6502 assembly language.
(Over the next seven years, I wrote a lot of very tight 6502 code.)
Up to that point, I had some vague notion that I wanted to be a scientist.
Now I knew I wanted to work with computers.
That year, I got my first summer job so that I could buy a BBC Micro.
I worked as a car park (parking lot) attendant at a supermarket,
standing out in the rain all day long,
charging customers for the privilege of parking while buying groceries.
It was so traumatic that I've never had a non-computer job since—and only the following summer's job required no programming skill.
I finished secondary school in 1983 and applied, successfully,
to study Computer Science at Trinity College Dublin.
I had a part-time job over the next five years,
writing software for RTÉ, the Irish national TV station.
I had one full-time job in Ireland.
I came to the States in 1989 and got a Masters in Computers Science at Brown.
I moved to Seattle in 1992 to work for Microsoft.
I left Microsoft the following year, though I later went back.
I've spent the last 20 years in the Seattle software industry.
I've written a lot of code over the last 30 years.
I still get a thrill out of creating elegant software.
I've written code that's shipped on every Windows box in the last decade—http.sys is available from Windows XP Service Pack 3 onwards—and Vim comes with every Linux and Mac.
I had no idea that day that I had changed my life, that I had found my vocation.