David Both: My Open Source Story


Image by: Opensource.com. CC BY-SA 4.0.

Here I am, almost 30 years into my personal crazy open source story, and it shows no sign of abating. And my problem is that I like to know how things work and to fix things. Even at an early age I was trying to figure out how things worked. Read on to discover how I made it into open source.

How it all started

As a kid I was always interested in how things worked. In those ancient days, all new radios and TVs came with a schematic diagram that showed the internal circuitry and the vacuum tubes that made it all work. Just out of pure curiosity, I used to study those. By the time I was ten or twelve—I don’t remember exactly—I had my little toolkit and was fixing TVs for family and friends.

I would observe the symptoms, look in my book if the symptom was one I had not seen before, and check the schematic for the tube that performed that function. I would take the tubes I thought might cause the problems I was observing to the drug store or the grocery store, both of which had tube testers, test them, buy replacement tubes, and install the new tubes in the failing device. I used to get paid in cookies. And it was fun! I was already learning some techniques of problem solving.

In my twenties, I started fixing audio equipment for a living. That in itself is a story that might fill a book. But I found that to be easy and fun, too.

I got started in computers in 1969 when I convinced the company I was working for to purchase an Olivetti Programma 101—one of the first programmable desktop calculators—to assist me with my calculation-intensive job. Soon after that, I migrated to IBM and gained another story too long to tell here. But I found fixing unit record equipment—a fancy name for machines that mangled punched cards—easy, too. And then I moved on to fixing real computers.

While at IBM, I managed to get into the IBM PC Company in the dealer support center as a support specialist. I worked for a few years mostly with hardware and applications, but then started supporting operating systems when OS/2 came out.

After leaving IBM I had my own consulting company helping customers with OS/2. It was enjoyable but I could see by the mid 1990’s that IBM was going to let OS/2 die. I really liked working at the operating system level but did not want to go the Windows route. One day a friend who worked at a large international company here in Research Triangle Park in North Carolina called me looking for someone to help them with their OS/2 systems. To make a long story short, I eventually took a full time job working for that company on the condition that I be allowed to learn Unix, which they also used to a great extent.

I took a few Solaris classes and even became a Sun Certified Systems Engineer, but during that time I started hearing about Linux. I could not afford to have a Sun box at home and thought I could use Linux to learn more about the Unix environment. That was certainly true, but I ended up discovering that Linux could be an end in itself. I decided quickly that Linux was the wave of the future, so over a few weeks I converted all of my computers to Linux. I switched over completely to force myself to learn how to do things in Linux rather than reverting to OS/2 with which I was very familiar.

Things broke—actually it was me breaking things, sometimes intentionally and sometimes unintentionally. And I learned how to fix them, in the process learning more Linux architecture and commands. If there is one thing I have discovered about myself and virtually everyone else I know who have landed jobs in open source, it is that we always have spent a lot of time learning about it on our own.

Ultimately, that led to a few months as an instructor at Red Hat, where I earned my RHCE (“Red Hat Certified Engineer” certification). After that I spent 5 years at the State of North Carolina working on the email system. I was responsible for writing and maintaining the Perl CGI scripts on an old computer that had Red Hat Linux installed. That computer provided the administrative user interface to the entire email system.

That job led to a few years at Cisco where I spent about half my time using TCL/Expect to write test programs for Linux based appliances, and the other half as a System Administrator in the lab. I spent a lot of time writing automation programs in BASH for the lab in addition to the test scripts.

After Cisco, I started my own business that provided Linux training and consulting for small businesses in the central North Carolina region. I found this very rewarding, and I could be very selective about the jobs I take on.

Then it all changed.

For me, getting started in open source was about freedom and education—my own education. I could see that IBM was going to dump OS/2 and I certainly did not want to deal with Windows, nor did I have the money to purchase Windows for all of my computers. I really wanted to learn Unix, which I felt was a real operating system that would offer me plenty of job opportunities.

So while I was working at a large telecommunications company supporting their OS/2 systems, I took classes on Solaris and started playing with a couple small Sun boxes on my desk. I learned a lot and found that I could do things undreamed of in other operating systems.

I wanted to learn more and faster. But without the funds to purchase even a small Sun box and Solaris, I thought I would be unable to do so at home.

One day in 1996, I heard about this operating system with the funny name of Linux. It sounded interesting because it was very Unix-like and I could install it on my Intel computers. In fact, I could obtain a single copy and install it on all of my computers. That was very important to me at the time, because my glacially slow Internet connection would take days to download the CD-ROM ISO image file needed to burn my own. I really had to purchase a CD so I would not tie up my connection.

I went to a now-defunct computer chain store and purchased a fairly inexpensive copy of Red Hat Linux 5. Not Fedora 5, or RHEL 5, but the old-timey “Red Hat Linux 5.”

I took the plunge and installed this Red Hat Linux on my laptop that was, even then, very old. Back in those olden days there was far less support for the wide range of hardware we now take for granted. So I was stuck with running in text mode only. That was actually OK because it gave me the opportunity—forced me, rather—to learn CLI commands. And it hooked me on the command line and the power and control that is intrinsic to that mode of human-computer interaction.

And, because the license allowed and even encouraged me to, I installed Linux on another computer (and then another) without having to purchase another license.

But I was still just dabbling, and my primary workstation was still my trusty OS/2 machine. No, I have never used Windows as a primary operating system on any of my own personal computers. Never Ever!

Ultimately, I decided that the only real way to learn as much as I could about Linux was to get rid of OS/2 completely and install Linux on all of my computers. So about a year after first hearing about Linux, I took the plunge and converted my main workstation and the remaining two of my computers that were still running OS/2 to Red Hat Linux. I have never looked back, and all of my computers have run Linux ever since.

Over the years, hardware support has improved, newer and better applications have become available, and I made a career out of open source. I was a Linux trainer, I wrote Perl CGI scripts on a Linux server, I was a lab administrator, and I tested Linux boxes.

But for me open source software has always been less about the career and more about being free to do what I needed on my own computers. I was just very lucky to be able to transform the knowledge gained through my testing, experimenting, and playing on my home systems, into a well-paying career.

Retirement, sort of

I am now allegedly retired, but I never get tired of installing new distributions of Linux on various computers that seem to be gifted to me — not to mention the ones I build for myself. I enjoy the freedom I have to then give away those computers with Linux installed and never have to concern myself with the possibility that the license police might show up and give me a legal thrashing.

I still fix things; I fix old computers by installing Linux and other open source software on them and making them useful again. I sometimes also must repair the hardware when old hardware breaks. So I sit here writing, surrounded by relatively new computers with covers removed, old computers with new parts undergoing tests, various drawers full of replacement parts that might one day soon be needed, and a few boxes partially filled with defective parts of various types—fans, hard drives, motherboards, video cards, memory sticks, and power supplies—that I will soon take to the R2 recycling center near me in North Raleigh.

I regifted most of those old computers. I have one very old Dell with a Pentium 4 CPU and 4GB of RAM, that I keep for myself so I can see how long old computers can continue to be useful. It’ll be 19 years old in August of 2024. It runs full blast 24×7 doing work for World Community Grid. You can read about it in “Saving Old Computers – and the planet.”

I’ve also written five books about Linux including a three book series, Using and Administering Linux — Zero to SysAdmin, which is in its 2nd Edition.

I think that, at least in part, due to our very inquisitive nature, we SysAdmins always want to know more. We want to find ways to make that bit of code better, faster, more general, more efficient, smaller, or whatever it may be—but definitely more elegant. For us, it is the journey as much as it is the end. And for many of us, like myself, open source is also a hobby. I spend my time on my own various open source projects the way that some people golf, or sail, or climb mountains. It is where I prefer to spend the majority of my time.

Supporting open source

One of my favorite open source projects is LibreOffice, which I used to write this article and all my books. In honor of the fact that I appreciate it so much, I have donated money to the LibreOffice project. That’s not the only project I’ve supported with monetary donations. It is important to support open source software in order to ensure its continuing development and availability. I encourage you to pick a project you appreciate and donate time and talent or money to support it.

If you want to share your own Open Source Story, please let us know. Send an email with your story or proposal to open@both.org. You could also post a short comment, if you wish.

Leave a Reply