Thursday, January 03, 2019

I admit it. I Cheat.

Dang. It's only January 3rd and I'm already a day behind on Januwordy. I blame it on Nova and Ultima Thule.

I admit it. I cheat. Been doing it my entire career. Remember how in school you weren't supposed to work together? Except on that end-of-year team science project, where Jeremy just goofed off and you and Cathy wound up doing all the work? I cheat in a totally acceptable way. I use open source software. I'm a so-called knowledge worker, which means the callouses are on my brain, not my hands. I've been a more-or-less free rider where my software toolbox is concerned, contributing in small ways here and there, but mostly using the work of other people. That's kind of how open source software is supposed to work. Being now much closer to the end of my career than the beginning, I'd like to reflect briefly on some of the people who worked their asses off while I goofed off.

My first job out of college was at Lawrence Livermore National Laboratory. The environment was DEC PDP-11s and VAXes with (at the time) a line-by-line editor. (DEC also had EDT on VMS which took better advantage of the terminal's real estate.) I'd gotten used to a 2D editor in school which ran on PR1ME computers and lamented its loss when I moved on, but the initial environment I used (PDP-11) didn't have EDT as I recall. One of my colleagues, Bob Schectman, said, "There's an editor on the DECUS tape. Maybe that will work for you." And thus began my ongoing love affair with Emacs. This turned out to be the Emacs implementation written by James Gosling, of Java fame. Later (and today), I used both XEmacs (Jamie Zawinski) and GNU Emacs, letting Richard Stallman and the GNU crowd do the hard stuff.

Fast forward to 1994. I had just finished up a ten-year stint at GE's Corporate R&D Center, where most of my programming was in a C/Unix environment (so I freeloaded heavily while Ken Thompson, Dennis Ritchie and Bill Joy did all the work). I had a small grant from the NSF to look at putting an interpreted front-end on C++. I had encountered similar systems at  both GE (LYMB, thank you Bill Lorenson and Boris Yamrom) and LLNL (thank you Sara Bly). I wasn't interested in developing my own programming language, so went scouting around for something I could leverage. It wasn't long before I was using Python as my front-end language, letting Guido van Rossum do most of the work. Thus began my ongoing love affair with Python. I think I owe Guido at least one beer, as Python has been the common denominator to the rest of my professional career.

No comments: