Ten Years Ago Today

Ten years ago in the lonely town of Pullman, WA, I was sitting down in a dorm room wondering what to do with the first Friday of my college career.  I didn't know it during that forgetable evening, but I had taken my first big step down the road I continue to this day: code.  I had grown up with computers, watched the rise of the consumer internet, and knew software would make a worthwhile profession, but one decade later I'm still a student.

My first programming class at Washington State University jumped in at C with the most basic (and famous) of programs...

#include <stdio.h>
 
int main(void)
{
    printf("hello, world\n");
    return 0;
}

Aside from introducing me to curly-braces and semi-colons, this immediately gave me my first insight on programmers: we are not composers.  Instead of arranging every note in the symphony, programming is more like conducting.  We direct an existing orchestra of seasoned musicians, providing minimal reinterpretation of an existing body of work.  While sometimes we invent new melodies, largely we are remix artists with a very large sample library.

The symetrical moment to this in my life when I was ten years old and something special happened: my family bought our first computer.  It was an Apple PowerPC, with a 75mhz processor and a massive 1 gigabyte hard drive.  It's easily outclassed by the first smartphone I owned, but for the time, it gave me the internet and a digital landscape that could be reshaped.  In the form of the classic 2D space game Escape Velocity, I had my first experience modifying how a program behaved on a computer through its publicly available mod tools.

The discovery of meddling with its behavior, the anticipation of it loading (and sometimes crashing), and the triumph of it working.  At the time I was exploiting a game for total sprite-based galactic domination, now I experience that cycle everyday.  The thousands of hours playing EV, and the respective Star Wars, Star Trek, Babylon 5, and myriad other amateur made expansions taught me that anyone can build something special and trained me to have the willpower to attain it.  Recently, Jane McGonigal has been burning up the internet with insights along these lines, but I serendipitously discovered it in 1997.

Since sitting down in Diane Law's introduction to programming class, I've written apps in so many languages beyond C and harnessed so many more capabilities than "printf:.  Reflecting on the languages, frameworks, and lines of code that have passed through my eyes since then, I've found the rate of learning has not diminished since college.  The programmers I admire most acknowledge Socrates' insight that knowledge most often shines a light on our own ignorance and that insight is most often fleeting and incomplete.  On this equally forgettable Friday night, I will have had another week of new beginnings, another week of learning, and yet so many more to go.