Lately, with Microsoft claiming that Linux infringes on their IP, it has occurred to me that what is widely regarded as free software cannot introduce disruptive change into the world.
Without a doubt, free software has introduced some very clever things to the world. For example, KDE showed file thumbnails in their file browser before Microsoft had ever thought of doing so - they beat Microsoft by a few years. UI features routinely show up in free software several years before making it into Windows. Windows has yet to offer a transparent taskbar, but it has been available in Linux for what seems like ages.
But this is largely irrelevant. The reason is that these features, while unique and interesting, are always offset by some other, larger disadvantage. Just the effort of installing an operating system and finding drivers for their hardware is sufficient to keep many users using Windows. And the Gimp's user interface - and their insistence on using GTK - makes it little more than a toy compared to Photoshop. It utilizes one of the least usable GUIs I've ever seen. As this has been flamed about elsewhere, I'll not repeat the argument, largely because UI difficulty is endemic to almost all free software, not just the Gimp. Need I mention my Mom trying out vi?
But what would happen if the Gimp suddenly "got it" with regard to usability? What would happen if Wine was suddenly better than Windows at running Windows programs? What if Linux was fully automated to the point that the installers could find and configure drivers for all existing hardware?
We are seeing the consequences of the what-if scenarios even now. If the Gimp was a serious threat to Photoshop, or Linux a serious threat to Windows, you can bet that Adobe or Microsoft would set their lawyers to work finding some way of diminishing the threat. They would claim patent infringement. Or, they'd claim copyright infringement, or that said software was divulging proprietary and confidential information. They might even go so far as to let one of their employees contribute to the project, and later fire the employee, claiming that the contributions were without company permission. They could claim the employee divulged proprietary algorithms - which, while they might not be patentable, could be forcibly removed from a project if they represented a company trade secret. Even if said algorithms could have been implemented by any of the other coders, the fact that they came from an employee gives reasonable credence to the claim that they are trade secrets. Such an estoppal could prevent any other coders from implementing the same algorithm, regardless of the copyright or patent status of such.
But these are just a few of the ways that large businesses could interrupt open source work. The real problem lies in that, regardless of the merit of a lawsuit, the fact is that most contributors to open source projects would simply pull their code rather than spend tens of thousands, if not hundreds of thousands of dollars, defending themselves in a lawsuit. It would be very difficult for most developers to justify spending this kind of money to defend something, that for most, is little more than a hobby. Thus, developing software which can change the world must necessarily be a commercial undertaking, for without the revenue provided by commercial software, most developers won't be able to afford the cost of the inevitable lawsuits which would follow. A company can sue without any merit to its claim whatsoever - witness the SCO vs. IBM debacle, where the CEO's statements regarding SCO code in Linux now appear to be deliberately fraudulent. Regardless, SCO has effectively lost against IBM, but had they brought their case directly against the kernel developers, how many of them would have had the monetary and legal resources to stand up to a company with 30 million dollars to burn on litigation? That's more than most developers will make in their entire lifetime.
I like free software; I want to see it flourish. It has brought some great ideas to the world. Yet, I'm disturbed by the fact that the corporate legal climate in this country dictates that it is nearly impossible to bring innovative new software to the world without charging sufficient money to afford legal counsel. It seems that producing the best software is more a matter of having good lawyers than it is of having good coders and architects.