Should Debian be more commercial, as Ubuntu is? A look inside one of the GNU/Linux movements leading distributions.
Every now and then, someone suggests that Debian GNU/Linux should be more commercial. To further this goal, some create derivative distros like Linspire, Ubuntu, or Xandros, or organizations like the stillborn DCC Alliance. Others act as pundits, whispering advice from off-stage, like Debian founder Ian Murdock, or, more recently, columnist Steven J. Vaughan-Nichols.
However, as a long-time Debian user, I have to wonder what the discontent is about. According to the Linux Foundation's 2007 Desktop/Client Survey, Debian accounts for a healthy 26.5% of corporate clients and 21% of personal desktops. Take Ubuntu and other Debian-derivatives into account, and 90% of those participating in the survey were deploying Debian technology (although they were often using other distributions as well).
Or look at any random collection of SourceForge projects; if they bother to provide native packages at all, chances are they provide .DEBs. By any standard, Debian is the ultimate success story among distributions.
Sure, the Debian release cycle is unwieldy. Sometimes, too, the community can be so ill-mannered and punctilious than any sane person would chew off a leg to escape the pointless bickering.
But there are reasons for these traits. Debian coordinates the releases of more hardware architecture than most other distros, and its structure means that formal releases matter less than in most distros. As for the bickering, the fact that all issues are publicly discussed in the project constantly causes outsiders to misjudge their seriousness.
And so far as such concerns are legitimate. The project is revising its practices. We'll be able to judge how successful the reforms were by how closely the developers can stick to their plans to have the next release ready by September.
Imperfections aside, Debian is exactly what its manifesto proclaimed it would become. Debian is "not a commercial product and . . . it never should be," Ian Murdock wrote in 1994 (obviously, he changed his mind later).
Rather, it was conceived as a non-commercial distribution, rather than one with "the destructive goal of enriching oneself at the expense of the entire Linux community and its future."
The truth is, few other distros can match Debian's combination of user choice and community egalitarianism. In many ways, it is the epitome of what free software is supposed to be -- a sprawling, chaotic proof that the ideals of the community work.
And I, for one, wouldn't have it any other way. I value the choice that Debian gives me as a user, as well as the non-compromising idealism of its community.
A big tent made from choice
Part of my allegiance to Debian is pure habit. I discovered free software when I worked for Stormix and Progeny, two deceased Debian-derivatives. Yet, as a free software journalist, I have reviewed dozens of distributions, and, despite being frequently impressed along the way, I stubbornly keep my main system running Debian.
Even when I decided I should broaden my horizons by installing a distribution that uses RPM packages on my laptop, the fact that I chose Fedora is no accident -- as former Debian Project Leader Martin Michlmayr remarked to me, Fedora is probably the distro community that most closely resembles Debian.
So why do I keep returning to Debian? One reason that is not a factor is its geek cred. Even before its new installer, Debian was never that hard to install. And while it is true that Ubuntu is responsible for major improvements in usability, these improvements filter quickly into other distributions, and none more quickly than Debian; it's the nature of free software to share, and the fact that many Ubuntu developers are also Debian maintainers means that, if anything, Debian gets Ubuntu's improvements quicker than other distributions.
In fact, one reason that I appreciate Debian is that it is designed for all levels of users. Where Linux from Scratch or old-style Gentoo are for hardcore geeks, and Ubuntu is aimed at new users, Debian manages to accommodate all users.
One longstanding piece of code that, last time I checked, was still in the installer and dpkg-reconfigure, makes this goal explicit. The code gives users three ways to configure their monitor. These range from the simple one of selecting the monitor size from a drop-down list; through the medium one of selecting the desired resolution; to the expert one in which users enter the exact Horizontal Sync Range and Vertical Refresh Rate. Users can choose the method they are most comfortable with, though results may vary.
In much the same way, Debian benefits from the steady improvements in the KDE and GNOME desktops. However, unlike many modern distributions, it doesn't neglect command line tools, and it comes with the most heavily commented configuration files I've ever encountered. While beginners using many distros are hard-pressed to expand their knowledge beyond the desktop, Debian users who want a more hands-on experience are given the tools they need to learn.
Moreover, just as users can choose their level of expertise, Debian offers choices in other aspects of computing. For instance, its package repositories are divided into three sections: main, which contains only free software; contrib, which contains software that is free but dependent on non-free software; and non-free, which contains such non-free items as Adobe Acrobat.
The project strongly encourages you to use only the main section -- Debian installs without contrib and non-free enabled, and a vocal minority in the project would like to do away with them altogether -- but the point is that users can choose their level of software freedom. Even though I tend to stick with main, I appreciate that the choice is mine, not some anonymous developer acting unasked on my behalf.
The same is true of Debian's larger repository system, which allows you to choose your level of risk when you install software. Those determined to have the bleeding edge versions can install software from Experimental, whose packages have been slapped together because of high demand but are completely untested, or from Unstable, whose packages have passed minimal requirements and correspond roughly to the new software introduced into most other distributions.
The more cautious can use Testing, which is often a reasonable compromise between dependability and cutting edge versions. And for those for whom dependability is the main issue -- for instance, those building a server -- Stable is available, supported as needed by security updates.
While this system is organized largely for building the distribution, it also allows users to balance their desire for dependability against their desire for the latest software. By looking up the packages on the Debian web site and seeing all the dependencies for a given package, users can determine how dangerous an upgrade may be to their computers.
(The system also explains why official releases tend not to matter -- new packages are constantly passing through the system, regardless of whether the project is gearing for another official release or not.)
The community and its charters
As a free software supporter, another reason I favor Debian is the structure of the community. Other distributions such as Ubuntu may have invented a code of conduct -- partly out of a wish to avoid some of the rudeness found on Debian mailing lists -- but just about every other component of free software communities was done first by Debian, and probably on a larger scale at first.
You would be hard-pressed to find a more thoroughly democratic community than Debian. What other free software project votes for leaders using the Condorcet method of counting ballots in order to maximize the effectiveness of every vote? Or can vote on general resolutions about the project's direction? Or attempt to impeach the project leader, as happened with Anthony Towns last year?
The Debian Constitution spells out exactly how these actions are taken, creating one of the flattest organizational structures that I've seen, especially in a community that numbers in the thousands.
An equally radical document is the Debian Free Software Guidelines (DFSG). While most of the free software world relies on the Free Software Foundation's four freedoms to define free software, in the DFSG, the Debian community has developed a definition that is, if anything, even more radical. In some cases, such as the GNU Free Documentation License, Debian has gone so far as to reject or qualify the Free Software Foundation judgments about what is free.
At the same time that I respect the Foundation, I can't help thinking that having at least one source of independent judgment on software freedom creates a dialogue that benefits everyone by encouraging second thoughts. What's more, I suspect that the Foundation appreciates the independent viewpoint, too; its members have often met with Debian representatives to discuss differences of opinion.
For all its raucousness, the Debian community works, and at an astonishing level of idealism. This idealism is so firmly built on the tenets and implications of free software that I can only conclude that anyone who argues that Debian should be more commercial has either forgotten those tenets or wants to turn Debian into something that it's not.
Debian and Ubuntu
Some would argue that distributions such as Ubuntu offer many of the same advantages as Debian. And clearly Ubuntu has made its mark, particularly in innovation.
In some cases, too, such as the Restricted Drivers Manager, Ubuntu might be said to follow Debian's example of allowing users to choose their degree of software freedom.
Yet as Ubuntu pushes toward commercialization, one or two reports of increasingly corporate behavior are starting to emerge. Moreover, while Debian can recall its leader, or call for a resolution on the project's course, Ubuntu lacks any method of deposing Mark Shuttleworth or deviating from his decisions.
True, Shuttleworth has so far given no reason for any to call him to account; so far as I can tell from his writing, he seems a sincere free software advocate who practices what he preaches. Yet without such mechanisms, community input is restrained by hierarchy. And, to that extent, Ubuntu seems less open than Debian.
Perhaps that relative lack of democracy is the necessary price for a more focused direction and greater market share. And there's nothing wrong with that. Of all the commercially-oriented distributions, there are none that I would like to see succeed more than Ubuntu -- and not just because its success directly aids Debian.
However, we have no shortage of commercial distributions, and far too few non-commercial ones large enough to have an influence. If nothing else, we need Debian as a counter example, just so we can remember the basic concerns of free software and the full range of possibilities.