How Linux became my job

IBM engineer Phil Estes shares how his Linux hobby led him to become an open source leader, contributor, and maintainer.
396 readers like this.
How Linux became my job

Opensource.com

I've been using open source since what seems like prehistoric times. Back then, there was nothing called social media. There was no Firefox, no Google Chrome (not even a Google), no Amazon, barely an internet. In fact, the hot topic of the day was the new Linux 2.0 kernel. The big technical challenges in those days? Well, the ELF format was replacing the old a.out format in binary Linux distributions, and the upgrade could be tricky on some installs of Linux.

How I transformed a personal interest in this fledgling young operating system to a career in open source is an interesting story.

Linux for fun, not profit

I graduated from college in 1994 when computer labs were small networks of UNIX systems; if you were lucky they connected to this new thing called the internet. Hard to believe, I know! The "web" (as we knew it) was mostly handwritten HTML, and the cgi-bin directory was a new playground for enabling dynamic web interactions. Many of us were excited about these new technologies, and we taught ourselves shell scripting, Perl, HTML, and all the terse UNIX commands that we had never seen on our parents' Windows 3.1 PCs.

After graduation, I joined IBM, working on a PC operating system with no access to UNIX systems, and soon my university cut off my remote access to the engineering lab. How was I going to keep using vi and ls and reading my email via Pine? I kept hearing about open source Linux, but I hadn't had time to look into it.

In 1996, I was about to begin a master's degree program at the University of Texas at Austin. I knew it would involve programming and writing papers, and who knows what else, and I didn't want to use proprietary editors or compilers or word processors. I wanted my UNIX experience!

So I took an old PC, found a Linux distribution—Slackware 3.0—and downloaded it, diskette after diskette, in my IBM office. Let's just say I've never looked back after that first install of Linux. In those early days, I learned a lot about makefiles and the make system, about building software, and about patches and source code control. Even though I started working with Linux for fun and personal knowledge, it ended up transforming my career.

While I was a happy Linux user, I thought open source development was still other people's work; I imagined an online mailing list of mystical UNIX geeks. I appreciated things like the Linux HOWTO project for helping with the bumps and bruises I acquired trying to add packages, upgrade my Linux distribution, or install device drivers for new hardware or a new PC. But working with source code and making modifications or submitting them upstream … that was for other people, not me.

How Linux became my job

In 1999, I finally had a reason to combine my personal interest in Linux with my day job at IBM. I took on a skunkworks project to port the IBM Java Virtual Machine (JVM) to Linux. To ensure we were legally safe, IBM purchased a shrink-wrapped, boxed copy of Red Hat Linux 6.1 to do this work. Working with the IBM Tokyo Research lab, which wrote our JVM just-in-time (JIT) compiler, and both the AIX JVM source code and the Windows & OS/2 JVM source code reference, we had a working JVM on Linux within a few weeks, beating the announcement of Sun's official Java on Linux port by several months. Now that I had done development on the Linux platform, I was sold on it.

By 2000, IBM's use of Linux was growing rapidly. Due to the vision and persistence of Dan Frye, IBM made a "billion dollar bet" on Linux, creating the Linux Technology Center (LTC) in 1999. Inside the LTC were kernel developers, open source contributors, device driver authors for IBM hardware, and all manner of Linux-focused open source work. Instead of remaining tangentially connected to the LTC, I wanted to be part of this exciting new area at IBM.

From 2003 to 2013 I was deeply involved in IBM's Linux strategy and use of Linux distributions, culminating with having a team that became the clearinghouse for about 60 different product uses of Linux across every division of IBM. I was involved in acquisitions where it was an expectation that every appliance, management system, and virtual or physical appliance-based middleware ran Linux. I became well-versed in the construction of Linux distributions, including packaging, selecting upstream sources, developing distro-maintained patch sets, doing customizations, and offering support through our distro partners.

Due to our downstream providers, I rarely got to submit patches upstream, but I got to contribute by interacting with Ulrich Drepper (including getting a small patch into glibc) and working on changes to the timezone database, which Arthur David Olson accepted while he was maintaining it on the NIH FTP site. But I still hadn't worked as a regular contributor on an open source project as part of my work. It was time for that to change.

In late 2013, I joined IBM's cloud organization in the open source group and was looking for an upstream community in which to get involved. Would it be our work on Cloud Foundry, or would I join IBM's large group of contributors to OpenStack? It was neither, because in 2014 Docker took the world by storm, and IBM asked a few of us to get involved with this hot new technology. I experienced many firsts in the next few months: using GitHub, learning a lot more about Git than just git clone, having pull requests reviewed, writing in Go, and more. Over the next year, I became a maintainer in the Docker engine project, working with Docker on creating the next version of the image specification (to support multiple architectures), and attending and speaking at conferences about container technology.

Where I am today

Fast forward a few years, and I've become a maintainer of open source projects, including the Cloud Native Computing Foundation (CNCF) containerd project. I've also created projects (such as manifest-tool and bucketbench). I've gotten involved in open source governance via the Open Containers Initiative (OCI), where I'm now a member of the Technical Oversight Board, and the Moby Project, where I'm a member of the Technical Steering Committee. And I've had the pleasure of speaking about open source at conferences around the world, to meetup groups, and internally at IBM.

Open source is now part of the fiber of my career at IBM. The connections I've made to engineers, developers, and leaders across the industry may rival the number of people I know and work with inside IBM. While open source has many of the same challenges as proprietary development teams and vendor partnerships have, in my experience the relationships and connections with people around the globe in open source far outweigh the difficulties. The sharpening that occurs with differing opinions, perspectives, and experiences can generate a culture of learning and improvement for both the software and the people involved.

This journey—from my first use of Linux to becoming a leader, contributor, and maintainer in today's cloud-native open source world—has been extremely rewarding. I'm looking forward to many more years of open source collaboration and interactions with people around the globe.

User profile image.
Phil is a Distinguished Engineer & CTO, Container and Linux OS Architecture Strategy for the IBM Watson and Cloud Platform division. Phil is currently an OSS maintainer in the Docker (now Moby) engine project, the CNCF containerd project, and is a member of both the Open Container Initiative (OCI) Technical Oversight Board and the Moby Technical Steering Committee.

6 Comments

Great story, and I laugh at your college-age experience because we had Vax VT100 mainframe server and one Windows 3.1 the lab assistants (only) were allowed to use. I graduated 1994 too, but took a different route. I didn't get into IT or Linux until 2000s but now sort-of am using Linux at work.

Great story! I like seeing how people get to where they are!

Great story! I can remember some of that from graduate school in the early 1990's. We had access to the Vax cluster. I have a copy of Red Hat 6.1 with the CD and documentation.

This is an awesome story! And because of your work on IBM's Java for Linux, I was able to bring Linux into our enterprise. I wrote about this last year on OpenSource, that we were unable to keep our university course registration system running on Java on AIX - but once IBM's Java became available for Linux, we were able to move the whole thing to Linux.
https://opensource.com/article/17/7/how-introduced-organization-linux

So thanks for your work on Java for Linux!

Thank you for your nice article on how you got hooked on Linux. I am almost 67 years old and by profession a mechanical engineer. I worked from 1976 till 1993 in the Oil Service industry for a large American company to support and to setup JVC's in South East Asia. Working in China at that time for almost five years I got involved in my first installation and maintenance of the JVC's administrative software needs which gave me my first exposure to Linux. Back than it had been selected for cost reasons. To cut a long story short, I fell in love then and there and decided subsequently to start an IT Consulting business in the U.A.E which I am now just in process of closing down after over twenty five years of fun and good fortune to go back home! Needless to say, those years in IT were more rewarding than I could ever have imagined in my wildest dreams. I got hooked on Linux and subsequently on Lotus Notes for Linux after IBM took over the company and created the Linux version of Lotus Notes Domino application. I believe to this day that it is the most stable communication software ever created. In all those years of self-employment I have never ever lost data in any of my Linux/Domino installations and even after fatal hardware crashes data recovery and rebuilding was never and issue. Yet I have had numerous Exchange installations which gave me a lot of grey hair over the years. The biggest problem, however, back than and still today, was/is to find qualified young IT engineers who knew/know about Linux and where/are as passionate as I was. Unfortunately, over the years, I had to learn that the majority of those IT Engineers who were coming mostly from India for this part of the World grew up on copied Microsoft products and found those much easier to handle subsequently thus thought that it would be better to get more accustomed to what they already knew it in order to land a job. I also learnt that a typical secretary back than would rather work with Microsoft Word and Outlook instead of Wordstar, WordPerfect or Lotus Symphony and Lotus Notes Domino. Most of them didn't know the capabilities of either anyway but they learnt their computer writing skills through copies of Microsoft Word thus found it easier to continue with the same as secretaries. Microsoft won the game not because of quality software but because of freely available copies! I would call that today "clever marketing"! IBM, on the other hand, had different marketing issues over the years. Although the company knew that their products were top of the class they didn't do enough to share that information with their customers! Maybe, and I can only assume, IBM was alway interested in the big corporate clientele only? When I retire now I will take my Lotus Notes Domino server with me wherever I go knowing that I have a trusted reliable partner as long as I want it. Please keep up the good work and don't ever give up on Linux and Lotus Notes Domino!

Cool. Thanks for sharing your story. I remember it felt great when IBM announced their billion dollar support for Linux.

Creative Commons LicenseThis work is licensed under a Creative Commons Attribution-Share Alike 4.0 International License.