Free software pressure creates more software freedom

Philip Langdale recently wrote about SD card readers and the Linux kernel. One of the conclusions he reaches seemed familiar to me (emphasis mine):

When it comes to hardware support, we often find ourselves confronted with statements that such-and-such a piece of hardware can’t be used to its full capability under linux or feature ”˜X’ isn’t supported yet. For a long time, the SD card reader in many recent laptops fell into that category but thanks to the efforts of Pierre Ossman, who managed to reverse engineer the SDHCI standard from trial-and-error and partial documentation, many of us are now able to use that reader. Although I can’t prove it, I feel that the subsequent publishing of the ‘simplified’ spec (without the DRM bits that we don’t care about) by the SD Association was provoked by his efforts (Why bother hiding it now?) Thanks to those specs, Pierre was able to polish the driver up even more and support a wider range of implementations (of course, there are some that are so out there that even having the SDHCI spec isn’t enough to get them working).

The claim reminded me of another similar example of free software pressuring non-free information to be published in such a way that it becomes useful for the free software community.

Consider the pressure of all the hackers working on free software Java implementationsThe Java logo. I’m convinced that Sun will free their Java software to stay relevant in a world where free software Java work (Apache Harmony, Kaffe, Classpath, and others) is becoming increasingly functional and available on more amenable terms than Sun’s implementation.

So of course Sun’s Simon Phipps is a big fan of GPLv3 so farGPLv3 is the upcoming version of the GNU General Public License—from how things look so far, GPLv3 will help keep Java free in such a way that improvements to Sun’s Java software will pose no threat to Sun. Sure, the license change will simultaneously make the free software community happy (which will turn the community into advocating for the use of Java instead of seeing Java as a trap), but it wasn’t long ago that James Gosling at Sun defended the status quo by claiming any opposition to Sun’s extant licensing was unclear (“It’s often difficult to get a good picture from the open source community of what they actually object to in what we’re doing”). Gosling is also quoted there saying that Sun’s Java customers would object to an “open source” Java:

We’ve got several thousand man-years of engineering in [Java], and we hear very strongly that if this thing turned into an open source project””where just any old person could check in stuff””they’d all freak. They’d all go screaming into the hills.

and Gosling was described as being ambivalent about Apache Harmony.