Hack and /: What Linux Journal's Resurrection Taught Me about the FOSS Community

"Marley was dead, to begin with."—Charles Dickens, A Christmas Story. By Kyle Rankin

As you surely know by now, Linux Journal started in 1994, which means it has been around for most of the Linux story. A lot has changed since then, and it's not surprising that Linux and the Free and Open Source Software (FOSS) community are very different today from what they were for Linux Journal's first issue 25 years ago. The changes within the community during this time had a direct impact on Linux Journal and contributed to its death, making Linux Journal's story a good lens through which to view the overall story of the FOSS community. Although I haven't been with Linux Journal since the beginning, I was there during the heyday, the stroke, the decline, the death and the resurrection. This article is about that story and what it says about how the FOSS community has changed.

It's also a pretty personal story.

A Bit about Me

Although it's true that I sometimes write about personal projects in my articles and may disclose some personal details from time to time, I generally try not to talk too much about my personal life, but as it's useful to frame this story, here we go. I grew up in an era when personal computers were quite expensive (even more so, now that I account for inflation), and it wasn't very common to grow up with one in your home.

In high school, I took my first computer class in BASIC programming. This class fundamentally changed me. Early on in the class I knew that I wanted to change any past career plans and work with computers instead. My family noticed this change, and my grandparents and mother found the money to buy my first computer: a Tandy 1000 RLX. Although there certainly were flashier or more popular computers, it did come with a hard drive (40MB!), which was still pretty novel at the time. Every time I learned a new BASIC command in school, I would spend the following evenings at home figuring out every way I could use that new-found knowledge in my own software.

I never got internet access during high school (my mom saw the movie WarGames and was worried if I had internet access, I might accidentally trigger a house call from the FBI). This just made it all the more exciting when I went to college and not only got a modern computer, but also high-speed campus internet! Like most people, I was tempted to experiment in college. In my case, in 1998 a neighbor in my dorm brought over a series of Red Hat 5.1 floppies (the original 5.1, not RHEL) and set up a dual-boot environment on my computer. The first install was free.

Desktop Linux in the Late 1990s

If you weren't around during the late 1990s, you may not realize just how different Linux was back then, but hopefully a screenshot of my desktop will help illustrate (Figure 1).

Super-leet Desktop

Figure 1. My Super-leet Desktop from 1999

I'd like to point out a few things in this image. First, check out that leet green-on-black theme! Second, notice the GNOME foot in the top-left corner. This was early GNOME 1, back when it used Enlightenment as its window manager. Next, notice the top Netscape Navigator window open to Slashdot. If you are new to the FOSS community, Slashdot was the Hacker News of its time (or Reddit, or Digg, or Fark—depending on when you started arguing about technology news on the internet). Check out the specs on the server for sale in the banner ad: 266MHz processor, 32MB RAM, 2GB storage and 2GB of bandwidth.

The window below the top Netscape window is another Netscape window with a full chat application implemented inside the browser with Java. I know what you are thinking: that server in the ad only had 32MB of RAM, and you need two or three gigabytes of RAM to run a JavaScript chat application inside a browser, but I assure you, it was possible with Java.

Back in the 1990s, you would install Linux from a set of three or four floppy disks (unless you used SUSE, which required about a dozen). The user interface for the install was a curses terminal console that you would navigate with a keyboard. This install assumed that you were well familiar with disk partitioning, OS internals, networking and Linux overall. When you completed the install, you normally would reboot into a console. If you wanted to get a GUI, you then needed to configure obscure X11 configuration files by hand—that is, if your graphics hardware worked under Linux at all.

Because of how much deep Linux knowledge you needed to install and use Linux back then, a number of Linux Users' Groups (LUGs) sprung up around the country. These groups would meet and share tips and overall knowledge about Linux, and they started a new phenomenon: Installfests. During an Installfest, new Linux users would bring their computer to the LUG, and the experts would try to get Linux installed and working on it. Often experienced users also would bring their own computers to get help with that one piece of stubborn hardware they couldn't get working.

Server Linux in the Late 1990s

I started using Linux professionally in 1999. Although Linux servers were found in office networks in the late 1990s, they weren't too common and often were used in secret. Linux was considered a hobbyist toy with most IT departments, and you could get in a lot of trouble for setting up a Linux server. The problem was that Windows file servers were notoriously unreliable, so sysadmins would install Samba servers covertly on the network. If anyone noticed the difference, it was only to comment on how stable the file server was.

Initially, Linux servers were selected as an improvement over the lower stability of Windows servers or the high cost of commercial UNIX servers. The dotcom boom caused a huge demand for websites and web servers. The Apache web server software and its ability to host more than one website on a piece of hardware using its new "virtual hosts" feature saw Linux spread rapidly in the data center.

Soon dynamic and interactive websites became important, and system administrators found that the combination of a Linux OS with an Apache web server, MySQL database and Perl scripts (later PHP) for dynamic content was a free, easy and stable platform for their dynamic sites. This LAMP stack grew in popularity and continued Linux's spread beyond web servers into the application and database tier.

Running a Linux server in the late 1990s required deep knowledge of Linux, networking and programming. Although a few companies (such as Red Hat) were starting to offer paid support, most of the time, support was a combination of your own troubleshooting and research as well as reaching out to LUGs, friends, IRC and forums.

FOSS Community in the Late 1990s

The FOSS community in the late 1990s was rooted in FOSS ideals. Just about everyone could give you a brief history of the Free Software movement, knew what the GNU project was, knew what the GPL was, and had strong opinions on the difference between "Free Software" and "Open Source Software". Most of the community also had strong opinions on whether it should be called Linux or GNU/Linux. For many, joining the community and using Linux and Free Software was about advancing those movements against the threats of proprietary software.

When you consider how much technical knowledge one needed to install and use Linux back then, it shouldn't be much of a surprise that the members of the community reflected the state of the OS—hobbyist geeks, engineers, scientists and CS students. In short, we were nerds. Because of the dotcom boom though, this community was starting to expand, as people started wanting to use Linux professionally. All of these professional newcomers created a strong demand for Linux support, and many FOSS companies came into existence during that time to fill the demand.

If you didn't happen to be in this community during the late 1990s, check out the 2001 documentary called Revolution OS. It does a good job of capturing the particular flavor of the community at that time, has interviews with the luminaries of the day and describes the beginnings of the Free Software movement from the initial work of Richard Stallman to the creation of Linux and all the way to Red Hat's IPO during the dotcom boom.

My Start at Linux Journal

The next part of the story begins almost a decade later in August 2007 during the Linux World Expo conference in San Francisco. Linux Journal had announced a writer's "happy hour" event during the conference. The idea was to invite prospective writers to come meet the editor and pitch article ideas.

I found out about the event and got really excited about the prospect of writing for Linux Journal. I had published a couple books on Linux by then that were full of different Linux tips and tricks, and my mind was racing with all the ideas I could incorporate into articles. I was so excited about the prospect—and so afraid that other people would get there and somehow pitch all of the good ideas before I had a chance—that I showed up to the event early and paced until it started.

I pitched way too many ideas. Somewhere after I pitched between six and a dozen distinct articles and they all seemed well-received, I got a little boost of confidence that caused me to dare pitch something more: a monthly column. By the end of that session, all of those article ideas turned into a column I started in January 2008: Hack and /.

FOSS Community in 2007

In many ways, this era was the golden age for Linux and FOSS. Just to set a few historical placeholders, in 2007 Debian released version 4.0 (Etch), and Red Hat released Red Hat Enterprise Linux (RHEL) 5.0 with the 2.6.18-8 kernel. All of the installs were influenced by some of the ease-of-use breakthroughs in the Corel Linux installer, and the install process was simple and featured nice graphics that guided users through a few basic questions. After the install, the graphics hardware and most of the rest of the hardware on the system tended to work pretty well unless you were using cutting-edge hardware. The Linux install process was much simpler (and faster) than installing Windows from scratch.

Linux was now mainstream in corporate IT, and it was much rarer to meet much resistance when you wanted to set up Linux servers, unless your company was a 100% Windows shop. The main requirement for some organizations was paid support, and at this point, that also was mature and similar to support offerings from proprietary vendors. These FOSS companies were making a lot of money, and developers were being paid to work on Linux and FOSS full time.

While the FOSS community still had the original nerdy members and new nerdy members continued to join, most of the growth in the community was from professionals. Many different professional Linux and FOSS conferences existed that were priced to attract people who could get their company to pay for them. These new community members were more focused on the practical benefits of Linux and FOSS (low cost, compatibility and the ability to modify code from a FOSS project for company use). Unlike the original community, these members were less focused on FOSS ideals.

The Stroke

In the aughts and early teens, the overall print publishing industry went through a number of changes. During this time, there was a large consolidation in the bookstore industry with companies like Barnes and Noble and Borders crowding out indie bookstores. Later in this period, more people started to get comfortable with the idea of using a credit card online, and competition from Amazon started to threaten even the large bookstores. Ultimately, this led to Borders closing all of its stores, which in turn caused a significant drop in newsstand magazine sales.

Along with those difficulties, overall publishing and distribution costs went up. Ultimately, this combination of lower newsstand sales and higher costs caught up with Linux Journal, and it had to face a difficult decision: either cancel print magazines and go with a digital-only model or close the magazine completely. On August 19, 2011, Linux Journal announced it would cancel print magazines and be digital-only.

Suffice it to say, the response to this announcement was generally negative. No one (especially Linux Journal) wanted to cancel print magazines, but at least some of the readership didn't seem to understand that the alternative was closing down altogether, and some subscribers responded with quite a bit of anger. The responses fit into two main categories. The print-or-die readers canceled their subscriptions with varying levels of bitterness. The wait-and-see subscribers decided to try reading the issues online or on their e-readers.

The Decline

For some time, things continued working. Now that Linux Journal was free of the high costs of putting out a print magazine, belts were tightened, and over time, finances started to stabilize. Although some people had canceled their subscriptions, those that remained were loyal readers. We often would hear statements from this core readership like "I have every print issue", and "I regularly go back to my archive of issues as a reference." That kind of support encouraged the team to focus on this core audience in our content.

The lack of a newsstand presence meant we lost one of our main avenues for attracting new readers to the magazine. More important, our focus on the core audience didn't factor in that the Linux community had changed since 1994. It wasn't just that we weren't attracting the new members in the community, many of the long-time members of the community also had changed through the years to view Linux and FOSS much more pragmatically and with less idealism. This meant that we not only failed to add new readers, we also started losing some existing readers and writers.

Death

Ultimately, we couldn't keep the lights on. Linux Journal announced that it was shutting down on December 1, 2017. I followed up that announcement with an emotional farewell of my own. If you read that farewell, you'll see that somewhere in the middle it changed from a memoir into a manifesto. My sadness at seeing something I had worked on for ten years going away was replaced by anger that the Linux community had seemed to lose its way. I lost my way. I took Linux and FOSS for granted. It became clearer than ever to me that while Linux and FOSS had won the battle over the tech giants a decade before, new ones had taken their place in the meantime, and we were letting them win. Although I had written and spoken about Linux and FOSS for years, and used it personally and professionally, I felt like I hadn't done enough to support this thing I cared about so much. The death of Linux Journal was a major factor in my decision to put my money where my mouth was, quit my job, and join Purism so I could work full-time helping to forward this cause.

So yeah, I took the news pretty hard. We all took the news pretty hard, but where I had just lost a freelance writing gig, all of the core Linux Journal team had just lost their full-time jobs. It was a difficult time, yet we also were flooded with so much support from you, our readers. Some people contacted us just to tell us how much they loved the magazine and how sorry they were to see it go. Others offered to pay more for their subscriptions if that would somehow help. Others still contacted us to see if they could develop a fundraising program to keep the magazine alive. I can't stress how much this incredible outpouring of support helped all of us during this difficult time. Thank you.

Resurrection!

We really thought we were dead. It turns out we weren't quite dead. Shortly after we made our public announcement, London Trust Media—the folks behind Private Internet Access (PIA), a security-focused VPN provider—reached out to us. In a short time, they worked out a plan not only to save Linux Journal, but to put it on a good path for future success and growth.

While that happened, we set to work on our postmortem. We did not want to come back to life only to make the same mistakes that put us in the grave, so we set out to figure out what killed us, and how we could prevent it from happening again. One major theme that continued to come up from this soul-searching was the recognition that the FOSS community had changed. Although the same core group was there, they accounted for only one part of the overall community. The FOSS community of today was different and more diverse. We needed to serve the whole community by writing articles for our original loyal audience while also covering what mattered to the rest of the community. To understand what the community is like today though, you must look at what Linux and the tech industry as a whole looks like currently.

Linux in 2019

Today, Linux has wide hardware support, and a number of vendors offer hardware with Linux pre-installed and supported. The internet itself is full of FOSS projects, and one of the first things people do when they are about to start on a software project is to look on GitHub to see if anything that meets their needs already exists. Linux absolutely dominates the cloud in terms of numbers of VMs that run it, and much cloud infrastructure also runs FOSS services. Linux also is in many people's pockets and home appliances. Linux and FOSS are more ubiquitous than ever.

Linux and FOSS also are more hidden than ever. So many of those FOSS projects on GitHub ultimately are used as building blocks for proprietary software. So many companies that seem to champion FOSS by helping upstream projects they rely on also choose to keep the projects they write themselves proprietary. Although Linux dominates the cloud, more and more developers and system administrators who use the cloud do so via proprietary APIs and proprietary services. New developers and sysadmins get less exposure to Linux servers and FOSS services if they use the cloud how the providers intended. And, while Linux runs in your pocket and in your home, it's hidden underneath a huge layer of proprietary applications.

For the most part, the FOSS philosophy that defined Linux in its early days is hidden as well. Many people in the community tout FOSS only in terms of the ability to see code or as a way to avoid writing code themselves. It has become rarer for people to tout the importance of the freedoms that come along with FOSS and the problems that come from proprietary software. Indeed, most Linux application development in the cloud these days is done on Mac or Windows machines—something that would have been considered unthinkable in the early days of Linux.

Tech Industry in 2019

It's not just Linux that has changed since 1994, the tech industry has changed as well. Technology is ubiquitous. Everyone interacts with computers in some form every day, and being able to use a computer in itself is no longer considered a special skill. That said, technology skills across the spectrum are in high demand, and tech employees are generally well paid. Programming has become the new shop class as a way to provide high-school graduates with a set of skills that hopefully will land them well paying jobs.

Technology tools also have become much more accessible and less obscure. You no longer need to isolate yourself in a basement in front of a computer for years to get the skills to land a good technology job. The industry overall is starting to become more diverse, and I don't just mean in the sense of race, gender and ethnicity. The technology industry is also becoming more diverse culturally.

In the past, technology was largely the domain of the nerds. These days, you're just as likely to see popular kids, jocks and MBAs using technology and writing software. There's even a "brogrammer" designation given to software developers who culturally are more akin to fraternity members. Many parents who traditionally would encourage their children to go to Ivy League schools to become doctors or lawyers are instead encouraging them to get an MBA with a minor in software development and create their own software startup.

This change in cultural diversity has created a culture clash that I'm not sure people on each side truly appreciates. From the nerd perspective, it's as though they threw a party where their friends could come over and play Dungeons and Dragons, and suddenly a bunch of popular kids heard there was a great party at their house, barged in, said "this party sucks", and turned it into a kegger. They find all of the new social pressures from the popular kids to be difficult to navigate. The popular kids, on the other hand, find the nerds in the group incredibly frustrating, because they don't seem to pick up on social cues and have a hard time adapting to norms that seem like second nature to them.

FOSS Community in 2019

The FOSS community today reflects these changes in Linux and the overall tech industry. The original FOSS community is still here, but the professional community surrounding it has changed a great deal. Many people within the community use Linux only professionally and don't work on FOSS projects or use Linux after they clock out for the day. FOSS advocates in many circumstances don't use Linux themselves, and they often make presentations on the benefits of FOSS from proprietary laptops running Windows or macOS. Many if not most web application developers write their web applications intended for Linux from Windows or macOS environments, and if they use Linux at all, it's within a VM.

It's important to stress that all of these people are contributors to and members of the FOSS community! It's a mistake to exclude members of the community for not behaving like the original core or not devoting their whole lives to FOSS. The fact is that as time has gone on and the community has grown, it has added people who simply weren't around for the original fight of Linux and FOSS against proprietary software. They joined the community in a world where Linux and FOSS were ubiquitous. In a world like that, it's easy to take the original principles behind FOSS for granted, because you haven't experienced the harm that comes from the alternative. In other cases, people who have been members of the community for a long time have relaxed their principles over the years and become much more pragmatic. Their focus is more on "the right tool for the job", and in many cases, they feel that FOSS is the right tool for some jobs, but proprietary software is the right tool for others.

What Does It All Mean?

There are lessons and work to be done for all members of the FOSS community today. If you are part of the original community, realize that we have an opportunity and an obligation to pass on the lessons we have already learned from fighting the original tech giants. Not everyone in our community knows these lessons, and if they did, they might rethink some of the choices they've made that you disagree with. This will work only if you are welcoming to newcomers from all walks of life—not just people who are nerdy like you. If you alienate them when they make early mistakes, they will be less motivated to learn more. This means no computer knowledge litmus tests to see if someone knows enough technical arcana to be worthy to join the community.

This also means continuing to work on empathy and social skills. Although it might be a challenge, we are up to the task. I don't believe that someone who can recite the TCP handshake protocol, get into flame wars on proper mailing list etiquette and can quote the entire Klingon coming-of-age ceremony (in Klingon!) finds human social protocols unknowable.

If you are a new member of the community, empathize with your nerdy cohorts! You pride yourself on empathy and social awareness, so apply that to the task at hand and attempt to see where your colleagues are coming from. They come from a different culture from you with different social norms. Show them patience as they learn the current social norms. If you alienate them when they make early mistakes, they will be less motivated to learn more.

I also encourage you to learn from your nerdy brothers and sisters about the past fights with the old giants. The current tech giants are largely playing from the same playbook, and it's incredibly valuable to know about what can happen when a tech giant achieves complete vendor lock-in. In addition, I encourage you to learn about all the social principles underneath FOSS. There is much more to the FOSS movement than your ability to see source code or even to use it in your own projects. Learn about the "four freedoms" that form the foundation of Free Software licenses.

Finally, I encourage everyone from all corners of the community not to take FOSS and Linux for granted. The world of readily available code and mostly open protocols you enjoy today isn't a given. If current trends continue, we could be back to a world of proprietary software, vendor lock-in and closed protocols like the world before 1994.

This new battle we find ourselves in is much more insidious. The ways that proprietary software and protocols have spread, in particular on mobile devices, has made it much more challenging for FOSS to win compared to in the past. If we want to win this battle, we need the whole community to work together toward a common goal.

Resources

About the Author

Kyle Rankin is a Tech Editor and columnist at Linux Journal and the Chief Security Officer at Purism. He is the author of Linux Hardening in Hostile Networks, DevOps Troubleshooting, The Official Ubuntu Server Book, Knoppix Hacks, Knoppix Pocket Reference, Linux Multimedia Hacks and Ubuntu Hacks, and also a contributor to a number of other O'Reilly books. Rankin speaks frequently on security and open-source software including at BsidesLV, O'Reilly Security Conference, OSCON, SCALE, CactusCon, Linux World Expo and Penguicon. You can follow him at @kylerankin.

Kyle Rankin