DevelopersDirk & Swap: Conversations on Open SourceFeaturedOpen Source

Dirk Hohndel Reflects On What Made Linux So Successful

0

Guest: Dirk Hohndel
Company: VMware
Show: Dirk & Swap: Conversations on Open Source

Linux isn’t the same operating system it was in the early days. Back in the 90s, the open-source operating system was a pet project of a student (Linus Torvalds) who simply needed to be able to use a Minix-like operating system without having to pay for expensive hardware. Today, Linux has become a platform enterprise businesses depend on.

Dirk Hohndel, VP and Chief Open Source Officer at VMware, remember those early days fondly. He remembers only having a 286 computer and sending Torvalds a message asking if the new operating system would work. After receiving a negative reply, Hohndel (then a student at the University of Würzburg) purchased a 386SX 16 MHz processor. Of that machine, Hohndel says, “The machine had two megabytes of memory. And so in November, I started with version .011 of Linux, which was the first one that actually was able to page. So the previous version didn’t start on my machine because it didn’t have enough memory for that. Linux had a four-megabyte system requirement back then. So to me, I had kind of a front-row seat through the early days of all that.”

At first, it was all about having fun and programming as a hobby, sharpening your skills, and learning how to collaborate with other people. Hohndel adds, “We were trying to build something that we thought was interesting, that was fun to us.” But things didn’t always go smoothly. Hohndel and Torvalds often disagreed. Linus wanted to implement the project standard. In fact, one of Linus’ core goals was to look at the project standard and say, ‘This is what I want’. To that, Hohndel always said, “Come on, no one is going to use this.”

In fact, for the first couple of years, no one working on Linux thought the project would ever go anywhere, that it would be nothing more than a project for college students and would be forgotten in a couple of years.

How wrong they were!

One of the pieces of Linux Hohndel wrote in the early days was the virtual terminal that allowed users to have multiple terminals available. But because of the very bad graphics card he had, it never worked properly. Hohndel continued working with Linux and finding new problems to surmount, such as a 50-megabyte hard drive he purchased that wouldn’t work. Turns out, a student in San Diego, named Dhruv Eckerts, was working on that. Since Hohndel had the hard drive in question, they collaborated together and got it to work.

And that’s how Linux continued to evolve. As a problem was discovered, those working on the project would collaborate together to overcome it. In fact, in the early days, it was all trial and error. On that, Hohndel says, “And the big part of this was the willingness to admit that you were wrong. And that’s one of those personal abilities, to accept that you said, ‘Oh, let’s do it this way,’ and then a year later you say, ‘No, that’s actually the wrong way to do it. Let’s do it differently.'”

When Linux version 1.0 was released, one of the things Linus came up with was an odd versus even release development. They tried that for a while, but it nearly killed the project. “I think it was 2.5, 2.6, that took forever, but we had this problem, where at one point it took us three years to get the next stable kernel out. And, that was one of those issues when we said, ‘No, we need to switch to a time-based model’, which we still have today; the 13-week cadence that we use today. And a lot of the things that we developed here are things that have changed over time.”

As to the key factors that aided in the success of Linux, Hohndel says he’s been asked that same question a lot over the past 25 years and he always says what was key was the Intel 386—the third generation of Intel’s processors. This was, according to Hohndel, “a processor that was affordable enough, fast enough, and capable enough to do something like this.” He also makes it very clear that the internet was a key factor because it made it possible “to bring together people from all over the world to work on this together.” Another crucial element was the availability of the new C compiler and the suite of tools around that.

One of the key events in the early days of Linux was an investment from IBM to support symmetric multiprocessing. IBM was a major driving factor for SNP systems. Another milestone was when Digital Equipment Corporation said they’d love to have Linux running on their platform. That was the moment when it became a multi-platform OS, instead of just being Intel 386. At that point, Linux could support multiple platforms and architectures.

Finally, Hohndel brings up Oracle porting their database to Linux saying, “that seemed to be this seismic shift where suddenly, one of the most important enterprise applications, the Oracle SQL database was available as an application under Linux. So it would support Linux, Solaris and AIX.”

Linux was also instrumental in helping companies feel safe with open-source software. To that point, Hohndel says companies were already using a ton of open-source solutions, they just didn’t conceptualize it as such. It was just something they did. But when Linux came into the picture, it became so visible that the corporate hierarchy couldn’t avoid the subject any longer. He also adds that Microsoft changing their language (with regards to Linux) was a key catalyst for this change. And as Linux continued to grow in popularity with enterprise businesses, they began to feel more comfortable with the GPL.

Hohndel ends with “And this is how so much of history is written. It’s a million small steps. And we try to make it about one person in one project in one big thing. So to me, the 30th anniversary of Linux is a big deal. It’s wonderful to look back at that. To me, Linus Torvalds as a person has had a huge role in this. But if I look at the bigger picture of that history, it’s so many other pieces, so many other projects, so many other people that sometimes too much focus on this one hero project. And this one hero developer kind of hides the complexity that is part of all this and the complexity that got us here and the willingness to make mistakes that got us all here.”

Summary for this interview/discussion was written by Jack Wallen


Here is the rough transcript of the show:

Swapnil Bhartiya: Hi, this is your host Swapnil Bhartiya once again, and we have with us Dirk Hohndel VP and Chief Open Source Officer at VMware, and this is a kind of special edition of our Dirk & Swap Conversation on Open Source is 30 years of Linux. And Dirk, as I think we were talking last time, or during some conversation that I started my journalism career as an Open Source journalist, when I met a lot of luminary, actually, Jim Zemlin, I met back in 2005 in India. That changed my whole approach towards life. So Linux has also kind of played a very critical role in making who I am today, so I attribute a lot of that success to that. But if I ask you, if you look at these 30 years, you have been involved from the very early on, anything interesting from the very early days that you still remember?

Dirk Hohndel: Well, I’m one of the guilty people who started before this was cool. I saw Linux’s posts to combos mimics in August of 91. Back then I didn’t have a 386, I only had a 286. I sent him an email and said, “Hey, does this work?” And he is like, no, it doesn’t work. So I ended up saving money, I was a student at the University of würzburg and bought myself a 386SX 16 MHz processor. The machine had two megabytes, two megabytes of memory. And so in November I started the version 011 of Linux, which was the first one that actually was able to page. So the previous version didn’t start on my machine because it didn’t have enough memory for that. Linux had a four megabyte system back then. So to me, I have kind of a front row seat through the early days of all that.

And I remember all of this just being about having fun, and programming as a hobby, and sharpening your skills, and learning about how to collaborate with other people in the distance. I mean, internet speeds back then were very different from today, you didn’t have video calls, our university had a 64 kilobit link to the internet. And so everything was text-based and the whole method of communication was very different. The tools that we have today didn’t exist. Everyone today uses out, let’s go to GitHub and create a pull request, none of that existed. And so you would send a patch to Linux, he would tell you that you were stupid, and that this was all wrong, would rewrite it his own way and would add it to his precious Kernel, very very different feel. But the thing that strikes me when I look back is that all of us just scratching our own itch.

We were trying to build something that we thought was interesting, that was fun to us. And I often actually disagreed with Linux, he really wanted to implement the project standard. That was one of his core goals was to look at the project standard and say, this is what I want. And I always said, come on, no one is going to use this. Let’s make it fun. Let’s make it ours. He didn’t want that. But for the first, at least couple of years, none of us thought that this would ever go anywhere, that this would ever be more than a project we do while in college. And that it would be forgotten in a year or two. And so to me, looking back, that is always the biggest surprise. Here I am, 30 years later, and I am still involved in this, and Linux still runs it. It seems absolutely crazy to me.

Swapnil Bhartiya: Yeah. Thanks for sharing that. But I am still curious, what got you involved? What were you doing back in those days that you had to get involved with the new Kernel, which was not going to be as promising and big as GNU?

Dirk Hohndel: So I was assist admin at the University of würzburg in the department of Computer Science, and budget at universities is always short. So I had a wise green terminal to administrate the VACS, the SUN workstations and a couple of others. It was super frustrating because you could not multiplex, I could not use it the way I wanted. So I bought this 286, put Mimics on it, which is why I joined Combo with Mimics. And I was trying to use Mimics and Kermit and screen to be able to better do my job from my spot where I was sitting. And to me, this was literally just a slightly better terminal emulator that I could use to administrate the Unix Boxes, that is what I cared about. And so when I started and I bought my 386 and things didn’t work the way I wanted. There was a bug with the file system. Back then, we didn’t have a login process, you just ended up in a root prompt.

And there were things that didn’t work for me, and then with every new patch that came from someone else, or the first login was written, as I said, paging virtual memory started to work, and I continued to find box, I continued to find things that didn’t work on my system. Tutors, so wrote the first code for a switching virtual terminal, so that you could have multiple virtual terminals, you didn’t have to use Screen for that anymore. Or there was a predecessor of Screen, I think it was not called Screen back then. And so I was playing with that, and because of the very bad graphics card that I had, this didn’t work for me.

It was always, here is a new thing, oh this doesn’t work, let me see if I can fix this. And then I wanted a bigger hard drive. I found a super cheap deal on a Seagate ST01 SCSI controller, a blast from the past, and a 50 megabyte hard drive and turns out that didn’t work. Linux didn’t support that. And a student in San Diego named Dhruv Eckerts was working on that, and I was like, Hey, I have one, that is worked together. But it is that same story over and over again, you see a new piece, it doesn’t work. You have a new hardware component that doesn’t work, you use something in a slightly different way and it doesn’t work, and then you try to fix it. It was all about scratching my own itch. There was no vision for my future as a software developer. Linux had this joking signature line, Linux got Torvalds, a world domination fast, which was a running joke for all of us, because we all thought this would never go anywhere. We were just having fun.

And so I got involved with X386 with the implementation of the X Window System for PC Unix Systems, which didn’t work on Linux. And I helped port that, and I helped work on shared libraries for Linux, and the GTC poured in all kinds of weird stuff. And I really, for the first couple of years, anything that looked interesting, I would jump on and do this, like a hyperactive squirrel. I had no focus, oh this is the thing I am going to do, and I am going to make a name for myself. No, I was just doing stuff. And then X386 actually was the thing I got sucked into and started to do more work on and focus on for the next six-seven years or so until I left that community in around, I want to say 2001, so 10 years later. But initially it was whatever didn’t work, I was trying to work on it.

Swapnil Bhartiya: There’s so much to unpack there. One word that you use were that you did not have any vision and I asked to Linux also. And he says, it’s not just the code that he also shares the vision people bring their own vision to the Kernel, to the community. He doesn’t spread his vision top down approach there. So if I ask you, if you look back at the Kernel and you said, you know that the little Scott or walls or word domination fast, actually most of these things have happened, Linux kind of dominates the world today. Everything literally runs on Linux. Whenever I talk to people, the question I don’t ask is that, can you tell me what runs on Linux? It’s actually easier to ask what doesn’t run on Linux? So if I ask you, since you have been part of the community and you have been part of Thick and thin. What are the things that worked for Linux, because first of all, it is very very unorthodox approach. Your folks are still maintaining it over the mailing list. Linux also create a lot of things to solve his own problem, but you would like Git is a very good example. You are not controlled or managed by any foundation kind of thing. And we talk about diversity. Kernel is one of the most diverse, I talked to folks who are all around the globe. We talk about remote work culture because of pandemic. It has always been work from home everybody was working from. So talk about a lot of things that worked for Linux and a lot of things that word should have learned from the community.

Dirk Hohndel: So one of the interesting things here is that almost all of the things that you just list really weren’t there at the beginning. A lot of what we now look back at and say, oh, these are some of the key factors why Linux has been so successful. A lot of those are kind of trial and errors, things that, we figured out the Linux figured out over time of how do you actually successfully run such a project? We were very much learning as we were doing. And the big part of this was the willingness to admit that you were wrong. And that’s one of those, personal abilities, to accept that, you said, “Oh, let’s do it this way”, and then a year later, or whenever you say “No, that’s actually the wrong way to do it. Let’s do it differently”.

So if you look at, for example, the initial model, when we finally released the Kernel 1.0 in March of 94. One of the things that Linux came up with was this odd versus even releases development, DCIS versus stable releases, which we tried for quite a while, and which nearly killed Linux. When I think it was 2.5, 2.6, that took forever, but we had this problem, where at one point it took us three years to get the next stable kernel out. And, that was one of those learnings when we said, no, we need to switch to a time-based model, which we still have today. The 13 week cadence, roughly 12, 13 week cadence that we use today. And a lot of the things that we developed here are things that have changed over time. Initially the vision was Linux vision.

He wanted to create a posix clone, and very quickly other people came in and say, “Oh, I want to do this thing, I want to do that thing”. And Linux realized that if he would impose his will on people, then it would always be just the thing that he was doing versus giving people the space to do their thing and be inclusive and bring in more thoughts and more ideas. The other thing that you mentioned that, there is no foundation that controls Linux. Well, there is the Linux foundation, which helps facilitate a lot of off how Linux works, but we have been extremely successful. Linux has been extremely successful in avoiding any dominating corporate influence, but always, or not even corporate any dominating outside influence, always having that independence from any entity that wanted to control it and always bringing in people with diverging views and making it better for it.

And so if you ask me, what are the key factors for the success of Linux? Well, I have been asked this question a lot over the last 25 plus years. And I always say, key was the 386, the Intel 386 processor, a processor that was affordable enough, fast enough, and capable enough to do something like this. It was certainly the internet, the ability to bring together people from all over the world to work on this together. And it was the availability of the new C compiler and the suite of tools around that, the user space that we didn’t have to worry about.

But the fourth thing that I would add to that list, looking back over all these years has been this willingness to bring in new ideas, to bring in diverging ideas and to really not exclude things just because Linux, or some of his key lieutenants disagreed with an idea, there was always the openness to try new things, to add new things, to add more people, to add more use cases, to add really crazy ideas that we thought would never work, but if someone wants to work on them, great, let’s include them in what we’re doing.

And this has created this insanely large community with thousands and thousands of people working together productively. And then over time we help built the tools to make that better. I keep saying we in a should not Linux has helped build the tools that make this all better. I mean, obviously the introduction of Git is one of the highlights here, but there are so many other small things that he and many of the key lieutenants, the key early contributors worked on to make it easier to deal with a patch flow. So the patchwork tool. For example, quilt, a lot of these things were integrated into our workflows to make it easier to bring a lot of developers together. And that really, is also the reason why there is so much focus on the ability to do everything remotely. If you work in a corporate context, at some point, someone will say, oh, we need to have all these people in a room and they work together for this next deadline.

And yeah, we have had some conferences where a lot of people came together. I remember in 1994, the Linux Congress in Carlsville, Germany, the first real Linux conference, spring of 94, where I don’t remember maybe 70 of us came together and it felt like, oh, wow, all of the key developers are in this room. That felt great, but that was never part of the required process. All of the processes are always designed to just allow anybody to work from anywhere as long as they had access to email. And I think that in inclusiveness, the infrastructure around us with the Intel 386 the internet and the GNU user space and that willingness to make it super, super easy for anybody to be part of that, that really is what worked,

Swapnil Bhartiya: Do you remember, or do you want to point out some key events that happened in the history that also helped in popularity of Linux or adoption of Linux?

Dirk Hohndel: Obviously the ones that I mentioned again without the internet, this would not happen. I think if I look back at some of the inflection points that seem to, to change the trajectory. There was this investment from IBM in the early, early days to support symmetrical multiprocessing. Initially the next was a single-threaded thing. It ran on one CPU. And in one, I say like two years in, and I am getting a little uncertain about my dates, 93 ish, I think is when this happened. First work was done on to support SNP systems and IBM was a driving factor there. And then digital equipment corporation, which was later bought by Compact, which was later bought by HP. When they brought out the alpha architecture, they were the first hardware manufacturer that went out and said, we would love to have Linux running on our platform.

And so that, that is the moment when the next suddenly became a multi-platform. Whereas instead of just being about the Intel 386, which is where it started, so that is another major inflection point. We support multiprocessor. We support multiple architectures. And after that, a lot of things started happening where and more vendors thought that this is a great way to introduce new Hartford technologies. So that, that first couple of them pulled after them a long, long, long a sequence of other technologies that were brought to Linux by their vendors, which brought in just a completely different set of developers into the community. But the other big inflection point that we often talk about is almost random. So, when the community was growing, the first large conferences were happening more and more people got interested, commercial use started up, but there was still a lot of skepticism.

There was very, very aggressive anti Linux rhetoric out of Microsoft, of course, some of the commercial Unix vendors were trying to, straddle the fence on the one hand work on Linux, because they saw an opportunity here, but also try to differentiate well, you know, for the serious stuff, there is our proprietary Unix OS, but for the other stuff you could play with Linux and then add a Linux world conference on in San Francisco. And maybe in San Jose, in the bay area, Oracle made the announcement that they had ported the Oracle database to Linux and would make that available as a supportive platform. And that seemed to be this seismic shift where suddenly, one of the most important enterprise application, the Oracle SQL database what is available as an application under Linux. So it would support Linux and Solaris and AIX.

It changed the way a lot of people perceived Linux. And it changed really the trajectory of how companies suddenly viewed Linux as a viable option for things where, six months previously, they would have said, well, it’s fun to play with, but we can’t run the core of our business on this. And, by 1999, 2000, that suddenly seemed like a very reasonable thing to do. And that really changed our industry. That really was a it’s this one event that by itself would not have changed anything, but that seemed like this inflection point after which people started talking about the differently.

Swapnil Bhartiya: Can you also kind of quickly talk a bit about that? How Linux kind of made companies comfortable with open source and don’t have to worry about, I don’t want to say the word free software and free so that, Hey, the free stuff is bad as stuff. No, they got comfortable because they can see a very powerful technology that they can use. They can collaborate on it, but they cannot compete against the same players compete with. So talk about how, I mean, how Linux kind of become a catalyst in adoption of open source, everything runs on open source. And I think we should talk about that a lot of the next day.

Dirk Hohndel: I Think that’s a very very complex topic because the trajectory was very different for different companies often for different teams within companies. And you have to look at the supplier side. So the heart vendor side, the ISV side, you have to look at the customer side. And then another aspect that plays into this is, in 2000, the always Elwha started as this, corporate 12 with the foundation level meeting point, where were the large companies felt that even under the scrutiny of, not being viewed as anti-competitive, they could still collaborate on something, even in areas of the market where they actively were competing. So Linux was in many ways, the facilitator, the reason why companies started looking at that companies started looking at the OSD later, the Linux foundation and companies started looking at open source solutions for, to solve their problems.

But I don’t think it is fair to say that Linux really was the reason why they did it. It feels far more like the excuse, because typically when you look at these companies, they are already used a ton of open source. They just didn’t conceptualize it as such. And they just didn’t think about it as, oh, we are using open source components. There was just something that you did, that was just something that happened to make your developers lives easier. And Linux was the one that was so visible that it would bubble up in the corporate hierarchy and people would make more conscious decisions about this, but yet it’s really a multi-year. I would almost say a decade long transition from the super early adopters who started in the late nineties. I mean IBM with their famous billion dollar bet. And they are painting on San Francisco streets, which got been so much trouble.

There are a lot of companies that try to very early on to find a way to make this work for them. And then you have this transition over pretty much a decade until 2009, when it started to become really hard for a company to say why they would not do a Linux when Microsoft changed their language that they used and how they interacted with these developers. And so, yes, Linux was a key catalyst. I don’t think Linux was the only catalyst I would not even say they were, the Linux was the main reason for that. It was just one of the many parts to this puzzle.

Swapnil Bhartiya: I Think the visibility of Linux and how, of course, as you mentioned, marketing, it did play some role at maybe with the visibility and marketing and Linux foundation. It played a very critical role too, with that so.

Dirk Hohndel: I think one of the differentiating factors here is one that goes back to the license. Linux was certainly one of the key pieces, the key software pieces that made companies comfortable with the GPL. I think that when the Netscape server was discontinued and Apache became a household name with the Apache license and the Apache web server, a lot of companies would use that instead of proprietary web servers, even companies that maybe were not as comfortable running GPL software. And so there is this transition where many pieces played together and, this overall question of what is my corporate policy. You mentioned Microsoft being involved in open source failure early. If you remember back to what they were doing, initially, they created their own license, which actually wasn’t an open source license. There was a shared source license where you could see the sources, but certain rights were withheld from you.

You could not modify it. You could not build your own binaries. You could not run a version built from those sources. You still had to go back to Microsoft for the proprietary software, the sources for just for illustrative purposes. And we saw quite a few other similar models where companies were trying to figure out, how wet can we get our toe without really getting wet ourselves? And over time, this has changed. And today none of the companies in this industry are truly open source hostile. We still have companies in this industry that are fairly GPL skeptical, obviously not the place to blame some, but some of the largest players in this industry try very, very hard to focus on permissively licensed project, only to the point that some of them quite explicitly reject all GPL, licensed parts in their whole ecosystem. A big part of why we have LLVM is to allow to replace GCC, the GPL licensed compiler with a permissively licensed compiler, because some of these companies didn’t want to rely on the GPL based component.

And, this is why it is such a difficult topic to make a snappy and quick soundbites about, because this is all so multilayered, so complex. So, many tiny steps leading to bigger steps. Many misdirections, many approaches that were tried and given up on so many failed attempts. So many new roads that we tried to travel. And in hindsight, it is super easy to call back and pretend that there is this big story arc and this storyline that you can illustrate and say, oh, this is how this all made sense. And Hey, I knew it in 1991, this was going to be big. And anybody who tells you that is lying to you because they are making things up retractably to justify what happened. And in many cases, what happened really fields, even, and I look at it today, totally random and pure luck and coincidence.

And this is how it was so much of history is written. It’s the million small steps. And we try to, to make it about one person in one project in one big thing. So to me, the 30 year anniversary for the next, it’s a big deal. It’s wonderful to look back at that. To me, Linux Torvalds as a person has had a huge role in this. But if I look at the bigger picture of that history, it’s so many other pieces, so many other projects, so many other people that sometimes too much focus on this one hero project. And this one hero developer kind of hides the complexity that is part of all this and the complexity that got us here and the willingness to make mistakes that got us all here.

Swapnil Bhartiya: Dirk, thank you so much for sharing 30 years old. It’s a journey of that set. It has played a very critical role in my own life as well. So even if I am not a developer, I do feel, kind of being part of the connected and kind of community and connected there. So, thanks for sharing that journey. And as usual, I will see you in the next episode. Thank You.

Dirk Hohndel: Thanks for having me. I love talking about the sister. I love reminiscing about where we came from and I look forward to our next chat. Take care.