Russ Nelson
I've been giving away my software since 1983, full time since 1991. I don't do it for fun, although I enjoy it. I do it because it's a way for a small business to earn money and it's fun. Each of my software interests started as a hobby, and some have turned into a profession. Not every hobby of mine has turned professional, and I hope to explain why some have and some have not.
Three of my hobby projects, which I'll talk about in depth after I introduce myself, have turned profitable. They are Freemacs, Packet Drivers, and qmail.[1] Freemacs is an MS-DOS text editor, styled after Emacs. It's still used today as the official editor of the FreeDOS project. Packet Drivers hide the difference between Ethernet cards in an MS-DOS system. If you've ever eaten at a McDonald's restaurant, your order was communicated through Crynwr Packet Drivers. Qmail is a mail transfer agent (MTA) for sending and receiving Internet mail. Qmail is the engine behind Rediffmail's 30-million-user, multiterabyte, 100-node email cluster, and many smaller sites.
I did hardware hacking long before college. Digital electronics was too expensive for me: $1 per TTL quad nand gate at a time when vinyl records cost only $5. So, I fiddled around with analog electronics. I invented a trigger sweep for my dual-beam oscilloscope, and an analog computer throttle for my model railroad.
My high school was a member of LIRICS: Long Island Regional Instructional Computer System, which had a PDP-10 students could use to learn to program, via teletypes operating over modems. I was at Baldwin Senior High School from 1972 to 1975, but took advantage of the program only in my last year, from '74 to '75. I learned BASIC and wrote a four-banger calculator program. I also wrote a word processor in BASIC, for which I had to do all sorts of horrific string manipulation. It took hours to format a two-page social studies paper. Partway through I got an Instant Message (IM) from an operator who asked me what I was running, and if it was looping.
During this period I learned PDP-10 Assembly language. JRST, HRRLZ, and SKIPNE are all familiar friends to me. Unfortunately, none of my candidate colleges had a PDP-10. MIT almost certainly did, but I was a poor scholar who was more interested in getting an education than in proving that I had one. Of course, everything on the PDP-10 was what we'd now call "open source." Nobody thought of holding back the source code in those days.
Many colleges will teach you how to become a businessman. I didn't have that desire upon entering college, and so I sought a degree in electrical engineering. Only later did I decide to run my own business, but how to learn? I started slowly, learned through experience, and didn't take too many risks.
I learned "on the job," and discovered new ways to profit from open source software. Everyone in the business had to teach themselves. There is no master's degree of open source business administration—not yet anyway.
Hewlett-Packard recognized my "genius" and hired me and my wife to work in its calculator division doing integrated circuit design. I missed programming, so I bought a RadioShack Color Computer (CoCo). This led to my first freelance income associated with programming.
I wrote programs for fun and sold them to CoCo Magazine for distribution. They were just little cute things, but they were in Assembly language, so they were fast, small, and easy to distribute. The standard distribution was on audio cassette through a paid subscription. It was nice to receive money for writing a program for fun. Without a local user community, it was also the only way I could distribute my software.
[1] Qmail is an all-lowercase name, and will be capitalized here only at the beginning of a sentence.