A Different Kind of Instrument

HELLO

REM “It's a game much more involved than chess, a game where you can make up your own rules and where the end result is whatever you can make of it.” - Linus Torvalds

I think everyone secretly fancies themselves an artist. 

There’s something sexy about being able to create, shape and express in a medium. When the sound of someone practicing Your Body is a Wonderland nearby fills my room, I can’t help but think of Bluto smashing a would-be folk singer’s guitar against the wall. But 26 years after Animal House it’s undeniable that the badass guitar player hasn’t lost his appeal. After all, John Mayer is very clearly not having any discernible issues, and the guy playing his music in Wheeler almost certainly has more luck with girls than I do. 

Sexiness is relative, I suppose. Maybe you’ll be intrigued by the girl playing guitar on the porch of a house in a way you wouldn’t be if she were playing classical piano in a practice room in the Hop. And I’d bet you wouldn’t give a second look to the fellow entering Sudikoff with a PC under his arm.

This is partly a symptom of what computer programming means to the average member of society. For every film about a hacking prodigy smacking keys while staring intensely at a black and white screen (is there a reason it’s uncool to hack in color?), it seems there’s one about a loser programmer trapped in the bureaucracy of a software firm. We feel good at the end of Office Space because Peter can pursue a career in construction after his company is engulfed in flames. Why aren’t there any films about shitty guitarists that are unfulfilled by their careers and only find true happiness when their recording studio spontaneously combusts? Talk about prejudice. 

Programming is still a black art to most people, because a computer program isn’t really appreciable by the masses. You probably aren’t surfing GitHub like you might SoundCloud, looking for the latest fork from that Swedish guy who’s been churning out some interesting work lately. A good program is elegant, not pretty; we’re enthralled by tight, clever solutions to intractable problems. But there is still beauty in that, even if it’s a little harder to see. 

Back in the 60s, computers weren’t even close to consumer products. They were huge, expensive, lumbering beasts, and mostly a privilege of wealthy universities. Running a program could take hundreds of punchcards and hours to yield a result, and you joined a long queue of all the other people who were just as eager to run their latest project. Code was convoluted and often written at the machine level. This meant that using a computer required not only intimate knowledge of the hardware and its limitations, but also a great deal of patience. It’s no wonder that the layperson thought of programming as a purely analytical exercise; after all, where was the humanity, the emotion, in shifting and adding bits and bytes? 

Like all great Dartmouth endeavors, it was four in the morning when John Kemeny and his student researcher flipped the switch on the first BASIC terminal. We’re not sure if they ran a program to generate a list of primes, or calculated 2+2. We could probably guess what the results looked like (I’ll leave this as an exercise for the reader), but it wasn’t the programs that mattered: it was how they were written.  The commands were English words – “print”, “let”, “input”. The syntax was intuitive and accessible to anyone who took the time to check out the manual. BASIC abstracted the minutiae of coding and allowed users to focus on solving problems. If you could read and write, you could code. Kemeny and Kurtz had cut a window into computer science, and the novice could peek in. Now anyone at Dartmouth – student and Professor – could take a few hours to learn the language, write a program and access a timesharing system to get a result remotely (even from across the country!). BASIC had democratized computer programming. 

40 years later, give or take a few days, my dad gave me a book on QBASIC and installed an interpreter on our old desktop. QBASIC is a derivative of BASIC, and its syntax is almost identical to the original code Kemeny once wrote, but I didn’t know that at the time. And I had no idea that it would lead me to a serious hobby or even a career. 

A quintessential aspect of my resume as an Indian child was weekly piano lessons (right below my asthma, thick glasses and healthy distrust of sporting equipment). But learning classical piano just frustrated me. No one wanted to hear a mediocre 10-year-old piano player’s compositions, so there was no room for creativity. As far as I was concerned, Beethoven took all the fun out of the Moonlight Sonata when he committed it to paper. I wasn’t creating but mimicking. My success was measured by how closely I copied, and how it was supposed to sound. Failure was a lack of conformity. BASIC was the opposite. 

Programming wasn’t memorizing multiplication tables, or where to play forte and where to play pianissimo. Like the notes on my piano, the commands that made up BASIC syntax were deceptively basic (I agreed to only use this pun once). A “let” statement assigns value obediently every time you call it, just like pressing middle c will obediently play the same note every time. But the beauty of it all comes from the vast complexity, the harmony, and the symmetry you can create through your choice of a few notes. The computer wasn’t only a medium or a device – it was an extension of my will and my creativity. If I could describe a solution, I could make it a reality; using a couple words, I could solve problems I wouldn’t be able to work out in a lifetime. Talk about a power trip. 

When I found out I could write BASIC games on my calculator, I started failing my math classes. I made some real progress on a version of Pac-Man though. But even though it took me forever to figure out how to factor polynomials, some good came out of it all. Learning to code taught me to approach problems modularly instead of getting bogged down with the big picture. It taught me patience, after many hours of hunting a missing semicolon. It changed the way I thought about language, mathematics, and their intersection. It gave me an intellectual passion that I followed through high school, and eventually, college.  

I couldn’t have imagined that 10 years after I typed a few commands in BASIC I would be sitting at its birthplace. Funny how that works, isn’t it? Things have changed a lot from Kemeny’s time to ours. Now, we worship startup founders instead of being intimidated by hacking prodigies. But it’s progress. Computer science programs are exploding across the country; Cosmo now runs articles entitled “7 Reasons to Date a Geek” (though I assure you, there are at least 3 more reasons than that). And people like me, inspired by BASIC, clumsily try to share the creativity and beauty we see in code with those who might not have cared 50 years ago.  

Kemeny and Kurtz peeled back the inhospitable skin of computer science, exposing a little more of its heart to everyone. I looked in and fell in love with it. Maybe you will too. 

Or maybe you just think programmers are a bit sexier than you did before.

I can live with that.  

GOODBYE