Monday, February 23, 2009

Technology time-line

Charlie Stross blogged a better than average roving questionnaire (please don't call it a "meme") today. I answered on his blog, but the process was interesting enough that I thought I'd share it here. The question is, what technology has changed your life, and when did you first meet it? I didn't have time to really do it justice, but I had a lot of fun answering it anyway.

Electronics lab kit: aged 10. My parents were good about giving me learning gear, so I got my first electronics lab kit (basically a board with a bunch of spring connectors connected to various electronic parts that could be connected together temporarily to form various circuits) when I was about ten, and got newer ones every year or two for a couple of years after that.

3-speed bicycle: aged 10. I'm guessing on the age, but this was revolutionary for me because I lived in a rural area, and for the first time I could actually get into town without my parents' help (how times have changed!).

Pocket calculator: age 10. This was my mom's calculator - a non-programmable TI model with rechargeable NiCd batteries. I took the thing apart, examined it in detail, figured out how to compute square roots on it using the newtonian method. I suspect that the time I spent playing with this is what developed the programmer's mindset that served me well later on.

Ham radio, age 10. Lots of really old surplus equipment, and later on equipment given to me by older (much!) ham friends. Learned about ham fests (swap meets) and boat anchors (equipment you don't need, but can't resist buying). Fortunately I didn't have much money.

Mini-computer: age 11. My high school had access to a PDP-11/45 over a 110-baud modem link. This is where I started to learn to program.

Reel-to-reel stereo tape, around age 13. Somewhere in here my father stopped telling me I couldn't use his Hi-Fi (remember that term?). So I'd listen to his tapes, and I also bought tapes of my own and used them to record off the air.

GAME:ADVENT, age 13. Sometimes in the evening when the computer center wasn't crowded, Estatrek (that's what we called the sysadmin there, Jay Estabrook) would allocate us the 16k of core needed to run Adventure, and we would explore the colossal cave. Normally we only had 8k, which was not enough.

Sears 10-speed bike, age 14. The thing weighed a ton, but it was fast enough and light enough to get me all the way into the computer center without having to ask my dad to drive me. Sometimes he would track me down at the computer center and drive me home, though. I still give him a hard time about that - he didn't think computers were good for much back then. I still love bicycles, 29 years later.

Apple II, age 15. The same high school, years later, set up a computer lab with Apple II computers, which is where I first encountered machine language programming and a computer that wasn't shared, and thus on which one could not get in trouble by getting supervisor privileges. This is also where I first encountered Pascal and the UCSD p-system.

Atari 800, Age 16. The atari was a bit revolutionary for me because it had such a complex set of I/O and graphics systems, some of which could only be programmed usefully at interrupt-time, so I got my first taste of real-time programming here.

DECsystem 20, age 17. A real computer, finally. This is where I first encountered EMACS, a real LISP system (not that I got to play with it much), a real Pascal compiler, etc. I even got to hack on the Johnson portable C compiler - we did a port that ran on the '20.

Car, age 19. I did actually buy a new car when I got my first job. In retrospect, not a very smart decision, but it made sense at the time. Prior to this I'd used a bicycle for most transportation, including bicycling home from college (about 50 miles).

Oscilloscope, age 19. I worked for a company that did both digital and analog, and the hardware engineer was willing to show me things, so I learned how to use a 'scope for debugging real-time software.

Logic analyzer, age 20. Even cooler than a 'scope, because it could track CPU cycles and figure out what instructions the CPU was executing, in real time. This was back in the days when we had pipelines, but not multiple execution units, so simulating the internal state of the chip was still possible.

Free Software, age 21. Somewhere in here I encountered the Free Software Foundation and started hacking on the GNU C compiler. (I realize that you may have meant hardware more than software, but to me some of the most interesting technology I've encountered was software). This is also when I really started to grok LISP. Free software was a huge deal to me because I got kicked out of my high school for cracking security on their PDP-11 so that I could read the O.S. sources.

Internet, age 21. My first personal encounter with the Internet was at the Free Software Foundation, which was essentially a bunch of turists at MIT's artificial intelligence lab. The Internet really revolutionized my ability to waste time.

Motorcycle, age 23. This was the first ICE I had access to that was something I could actually work on myself. Not that I ever turned into a serious gearhead, but it was nice to stop being helpless around motors - over the years I had many opportunities to fix problems like water in the gas line, clogged carbs, wrong air mixture, dead battery, and so on.

Open source kernel, age 27. For the first time, access to a real operating system in source code form that I could improve and the changes to which I could share (NetBSD).

56k link to the internet from my house, age 29. My first online presence, my own domain, my own SMTP server, my own FTP server. No web at that point.

TDMA cell phone, age 30. With the small battery, it would fit in my pocket. It seemed like a win at the time, but over the years I've grown disenchanted.

Laptop, age 33. Not my first laptop, but the first one that was really useable as a computer. Running NetBSD. I never went back - laptops have pretty much freed me from being stuck in one place, so that now I can travel anywhere and still work full time or as much as I need to.

Slashdot, age 34. The first news feed I'd encountered for geeks (aside from RISKS). I don't think we've yet seen the full implications of the shift that sites like /. began, but at this point I do not really read any news other than news sourced from feed sites like /. I'm not sure whether this is a good thing or a bad thing.

Mac OS X. Age 38. Commercial unix on a laptop, with a nice UI. The shine is off the apple a bit at this point, but at the time it was huge.

Prius. Age 40. Possible to take road trips again.

iPhone, age 42. Makes road trips a lot easier. Can check email anywhere, even between towns. Don't have to stay at brand-name motels. Can find exactly what I want (I'm a foodie) even in a town I've never visited. Useful enough that I remember to keep the battery charged (mostly).

OLPC XO, age 42. Finally someone attacks the price half of the price/performance curve instead of the performance half. And a screen that can be read in the sunlight. I really, really hope this goes mainstream (none of the netbooks I've seen yet really qualify, but Pixel Qi is making interesting noises, and it's starting to sound like some ARM-based netbooks might hit the streets in the next six months).

Facebook, age 43. It's been tried before, and facebook still doesn't have it quite right, but it's the first really plausible social networking site that's believable enough that most of the people I know have joined. People worry about privacy on facebook, but facebook has an aspect of Little Brother about it that I think people are currently underestimating.


Anonymous Patricia said...

Interesting to see all this stuff through your eyes/perceptions! (And nice to know that we weren't able to traumatize you past recovery.)

Wednesday, February 25, 2009 5:02:00 PM  

Post a Comment

<< Home