Happy Birthday BASIC!

Forty four years ago today, John Kemeny and Thomas Kurtz fired up the very first Basic computer program at Dartmouth:

The college’s General Electric GE-225 mainframe started running a Basic compiler at 4 a.m. on May 1, 1964. The new language was simple enough to use, and powerful enough to make it desirable. (via Wired.)

Like many people my age, I got started programming in Basic. At first, I loved it. It was so simple to learn, yet expressive and powerful enough to do some amazing stuff. Of course, I didn’t really have any point of comparison. Then my high school math/computer teacher got approval to offer an “advanced” programming class to the few of us already proficient in Basic. The class ended up being an applied algorithms course–pretty advanced for high school, at least at the time–and the language of choice was Pascal. Learning to use UCSD Pascal on an Apple IIe was quite a hurdle, especially while simultaneously trying to learn the intricacies of sorting algorithms. But my eyes were opened to what a computer language could be. To my 17-year-old brain, switching from Basic to Pascal was like switching from a Ford Pinto to a Koenigsegg CCR. My love affair with Basic was over.

When I got to college, I discovered that, yes, there are languages even worse than Basic. All of my college programming was done in FORTRAN. To continue my analogy, FORTRAN felt like a rusty old Model T that had spent the last 40 years in a muddy ditch. I got to be quite proficient in FORTRAN, but never much liked it. In the midst of this FORTRAN wilderness, I had a chance to do some more Basic programming and I enjoyed in immensely. The summer after freshman year, I worked at Georgetown University Medical Center. The department I worked for had an old Wang VS minicomputer they’d been using for word processing for years. At the time, Wang didn’t provide a way to move documents off their system, but the department was switching to IBM PCs with Wordstar (or was it WordPerfect?) and wanted access to all their old documents. I reverse-engineered the file formats on both the VS and PC sides (though I think there might have been some documentation for one or the other), then wrote a program in Basic to do the translation. After working in FORTRAN my freshman year, I was actually pretty happy to be working in Basic again. Pascal was still my love, but Basic would do.

The funny thing is, I haven’t programmed a single line of Pascal since high school. But Basic? Oh, yes, there was much more Basic. In my first job out of college, I did quite a lot of programming in Microsoft QuickBASIC, a little in FORTH (strange, beautiful FORTH), and a tiny bit in C. When I learned Macintosh programming, I figured it was time to learn a “modern” language, so I jumped in with both feet and learned C. Since then, I’ve worked in C++, HyperTalk, SuperTalk, Java, Perl, PHP, JavaScript, and my current love Objective-C.

Like they say, though, you never forget your first love. Happy Birthday, Basic.