This article was published in two installments, in the July and August 2015 issues of Maximum PC. For more trusted reviews and feature stories, subscribe here.
Modified Creative Commons image by McKay Savage
Real or perceived shortcomings in software offerings keep too many users away from the free OS
Dual-booting Windows and Linux really sucks. It's not because I hate Windows, either. It's because I feel it should be unnecessary. It's a half-measure that allows a lot of Linux users to play games or get things done.
It doesn't have to be this way, but Linux is faced with a chicken-or-the-egg problem. Users won't switch to Linux until their apps and games will work as expected. Companies like Adobe aren't going to develop native Linux versions of their products unless they have a really good reason (read: they can make money).
I must've rewritten this next part ten times or more, so I think it's best to come right out and say it: The Linux desktop, for the time being, needs proprietary software to draw users.
The gods were thus angered, and Richard Stallman clenched his fists in rage.
I know that sounds absolutely crazy coming from a free and open-source software advocate, but hear me out.
People dual-boot for the same reason more people don't switch to Linux in the first place: One essential piece of software isn't available in Linux. Never mind that Linux offers a customizable and more secure environment; never mind that the monetary cost of installing and using the OS is zero; they need that software. It's the biggest hurdle I face when it comes to trying to make an argument for my favorite OS.
Like it or not, there are holes in the Linux desktop experience if you don't use proprietary software. Skype and Nvidia's video drivers are prime examples of how proprietary software fills a need for Linux users. Right now, you're not going to grow the Linux market share by telling new users, "Sorry, you can only do it the free and open-source way." Business users, designers, and gamers don't want to hear that garbage. They just want to use their machine and complete the tasks they set out to do, preferably without missed sleep and skipped meals from trying to configure Wine properly.
Like it or not, the proprietary Skype client is still the best option for the video chat and messaging service on Linux.
To improve the catalog of programs available to desktop Linux, we need to grow a user base that will pay for software. That means regular users and gamers, not just hobbyists and enthusiasts. If there's one thing I've learned over the years, it's that software companies sure as hell aren't going to release a Linux version of their software unless it makes financial sense. Evernote is a prime example. The company isn't developing a Linux client, as it has said numerous times, despite the howls of desperation coming from Linux users on its forums.
We as users can start sending market signals showing desktop Linux has the customers software companies are looking for. By surfing the web on Linux, we send the signal to research companies who publish statistics based on user agent strings. For gamers, using Steam on Linux sends the same type of signal to game developers.
The people who still use Windows XP (I'm looking at YOU, Uncle Sam) represent a great opportunity for Linux adoption. If these users try a live distribution like Ubuntu and choose to switch, they get to keep their older computer, and get a faster, more reliable experience for surfing the web, typing documents, and reading email.
There are over 2,000 games on Steam available for Linux, including Dota 2, Bioshock: Infinite, and all of Valve's titles. That's a pretty good number, but it's a small share of the over 12,000 titles on Steam. Also, remember that the vast majority of games are proprietary. People want to be able to play GTA V, not just Tux Racer. Releasing more titles to Linux though Steam machines or Steam for desktop Linux helps bring gamers to the OS.
Once there are enough potential customers, hardware and software vendors will have a financial incentive to support desktop Linux. When big vendors release software for Linux, more developers and users may follow. Linux gets better as more users install it as their primary OS.
If I haven't lost you or convinced you that I'm not stark raving mad, I'm going to explain how the free software community can draw users to Linux next.
We don't yet live in a world where we can ditch proprietary software and still have the same level of functionality and convenience with free software, but that world is possible. This year marks the 30th anniversary of the Free Software Foundation, the organization that oversees the GNU project and pushes for a future of software freedom.
GNU brought us most of what we now consider the core tools (like the GNU C Compiler) in GNU/Linux. For that, every GNU/Linux user should be grateful. As Richard Stallman would say, Linux is just a kernel; GNU is the operating system. And lucky us, the programs and utilities that comprise GNU are free (and not just like beer).
For now at least, proprietary software offers a usable experience to those who need features unavailable through free or open-source channels.
That's not all bad, either. The vast majority of games are proprietary and are likely to stay that way. Games, like entertainment films, don't easily lend themselves to an open-source or free software model. Games are artistic storytelling media, not utilitarian tools.
I talked about how bringing proprietary software (besides games) to GNU/Linux could draw more users to the OS. I can still hear Stallman's howls of rage in my head. (I hope that my uses of "GNU/Linux" satiates the beast.)
We won't need as many proprietary solutions if there are more free software solutions that meet users' needs. Free software too often falls short—or has the perception of falling short—of the capabilities of its proprietary counterparts. But here's the thing with free software: The onus falls on us, the community, to fill the holes and create a better experience.
Software costs money to develop. Even while a lot of free and open-source contributions are made through someone's want to contribute as a hobby or passion, hardware and server costs are hefty burdens to lay on development teams. We can grow Linux as users by donating a few bucks to the software projects we use.
Big-name corporate sponsors back many free software projects with money, or even by hiring full-time employees who contribute code. It's great that companies are contributing to programs that everyone is free to use because they realize the value and utility of free software in day-to-day operations. However, not all free software and Linux projects are lucky enough to be backed by a corporate sponsor.
The Apache web server gets lots of big corporate love. GNOME and KDE? Not so much.
Companies tend to back projects that further their own bottom line, which results in a big disparity in funding between desktop applications and server applications. If you need an example of this, look at the number of big-name corporate sponsors for the Apache Foundation. When you look at the patrons for the GNOME and KDE projects, corporate names are far fewer in number.
Lest someone think that the free software community is made up of a bunch of long-haired hippie commie pinkos looking for handouts, there is money to be made in free software, too. There is nothing in the GNU General Public License that says you can't sell programs. It simply stipulates that the source code of those programs must be made available to the end user, so they can change and modify it as they wish. The legal ability to do is what makes the software free. Companies like Automattic (WordPress), Red Hat (Fedora), and others have built successful businesses by selling or offering support plans for free software. Making or using free software does not necessarily cede the competitive edge.
If you don't have deep pockets and dollars to spare, there are other ways to contribute. If you know how to write code, consider squashing a bug or two. There are also plenty of projects—like gnuTaxes—that need developers to pick up where the original creator left off because real life intervened, rendering the project orphaned.
You don't need to be a coder to contribute, either. If you're a writer, create some documentation or write a how-to when you solve a specific problem. Graphic designers can contribute artwork to make interfaces more beautiful. Even helping someone out on a forum, IRC channel, or social media goes a long way to make the community more welcoming for those new to Linux.
Investment—whether it be in time or money—by the community will make free software grow. Just as democracy is best realized when citizens participate, the free and open-source community requires the contributions of users. That's the spirit of free software: software for the people, by the people.
People will flock to freedom when they start to see its prosperity, but will hesitate if it means a rough trail of usability and lack of features. Once we pave the roads, others will follow en masse.
Freedom is hard work, but we can do it.