October 31, 2007

Fedora struggles with harm reduction via Codec Buddy

Author: Bruce Byfield

In public health, harm reduction is a practice that, rather than trying to eradicate potentially dangerous choices like prostitution, tries to minimize their effects. Often, the practice involves a limited condoning of the practice, such as safe injection sites for addicts. Harm reduction is the path that Fedora 8 has chosen on the issue of MP3 and other non-free codecs in the form of Codec Buddy, a Codeina-based program that tries to educate users about free software while giving them easy legal access to codecs by linking to the commercial Fluendo site. It's a decision about which the Fedora Board and community leaders feel considerable ambivalence.

In a more commercial distribution, the issue would barely exist -- the company would cut a deal to include non-free codecs, and the problem would be solved. Conversely, in a distribution more used to public debate, such as Debian, where the eradication of the non-free repository has become an issue several times in the last few years, the issue of Codec Buddy could easily cause a community firestorm. However, if the Fedora's user list is any indication, many in the community are more interested in the pragmatics of running their system than in upholding software freedoms in public. According to Fedora chair Max Spevack, the board has received very little reaction to the inclusion of Codec Buddy, and it is true that, although a few negative criticism can be found, such as Ronald S. Bultje's blog comment last March, you have to search to find them.

In this situation, the Fedora board and community leaders can only fall back on their sense of stewardship. On the one hand, Fedora has always been a distribution that prides itself on shipping only free software -- so much so that this month, the Fedora marketing list was considering "Freedom is a Feature" as the distribution's slogan. On the other hand, if Fedora's leaders become too out of sync with their users, they risk a loss of credibility. "I think it's dangerous to moralize against your users too much," Spevack observes.

"People want this stuff. And it's common knowledge for anyone who uses Fedora that there are third-party repositories out there that can give it to you. But, for legal reasons, Fedora can't put the third-party repository on our wiki or in our release notes. So, either that functionality is not mentioned at all, and people have to know where to find that stuff on their own, or we try to do something that gives people a legal way to solve their problem and try to use it as an educational opportunity."

Fedora 8's solution is to include Codec Buddy, and point it toward's Fluendo's legal but non-free codecs. At the same time, Codec Buddy opens with a message that "Fedora does not condone the use of audio and video codec that require patent licenses to be written and/or distributed. Due to the existence of such patents, Free Software implementations of such codecs might not be legal in the country you live in, or the file you're trying to play back might not be available in free formats." The message can be disabled after its first appearance.

"The key line that every distribution has to decide whether they cross is the difference between including anything non-free and allowing access to things that are non-free. And Fedora still includes nothing that is non-free," Spevack says in defense of the inclusion of Codec Buddy. At the same time, he worries that the harm reduction route will "come across as hypocritical."

Another issue, though one even less talked about, is the significance of a community-based distribution pointing to a commercial source. According to Spevack, no formal agreement exists between Fedora and Fluendo, nor does Fedora receive any revenue from the users it directs to Fluendo. "I have to be very clear: There is no official agreement at all -- no revenue sharing and no professional agreement between Fedora and Fluendo, other than the fact that, right now, that is what the software points to. We're using Fluendo because a couple of their engineers who helped write the upstream Codeina have been helpful to Fedora over time. But we could change it tomorrow."

All the same, the current setup of Codec Buddy could potentially be viewed a blurring of the usual distinction between community and commercial distributions, particularly for those with an anti-corporate philosophy who support community distros in the belief that they are more trustworthy for users.

These are complex issues, and Spevack frankly admits his dilemma. "On many of the big debates about Fedora, I've always been real clear what side I came down on. For me, this one is the most muddled and nuanced one. I can see the validity in all the different arguments that I hear both for and against [shipping Codec Buddy].

"What's difficult for me is to reconcile all these issues. It's like a big mathematical optimization problem. There's all these potential trade-offs and benefits, and you want to try to find a solution that provides some benefits to our users."

Spevack is keenly aware of the possibility that many will consider Codec Buddy the first compromise in values, the one that allows an avalanche of others. However, "what stops this slippery slope argument," he says, "is the fact that the Fedora community and leadership wouldn't tolerate something that made us feel that we were betraying our core values."

For now, Fedora 8 is going ahead with Codec Buddy and its warning against restricted codecs -- but with caution. "We'll see what reception Codec Buddy gets," Spevack says. "Well see if people use it, and if people care. If we don't try something like that in Fedora, then that's also not true to what Fedora is trying to do, which is to provide an opportunity for new software to get in front of a lot of people and to see how they react to it."


  • Free Software