In the 25 years since Richard Stallman wrote the GNU General Public License, free and open source software (FOSS) have become pervasive in computing: Linux, Apache HTTP Server, MySQL, and more can be found in large numbers of enterprises across the globe. And open source is now increasingly undergirding cloud computing as well.
"Open source is certainly at the foundation in terms of building out cloud technologies," says Byran Che, senior director of product management at Red Hat and responsible for its cloud operations offerings, management software and Red Hat Enterprise MRG, (Red Hat's Messaging, Real-time and Grid platform). "If you take a look at market share in the server space, as you look at traditional data centers, about 70 percent are running on the Windows platform and about 30 percent are running Linux. As you take a look at what operating systems people are choosing to build applications on in the cloud, the ratio flips completely."
The reasoning is simple, Che says: With a fresh start, you get to build a whole new architecture from the ground up, and open source gives you the best value.
"You can't get to the Amazon scale or the Google scale and pay the license fees," he says.
Cost isn't the only thing giving the open source model an edge in the cloud space. Che also points to the capability to create a community around a project and thus drive rapid innovation.
"That's what open source is really good at," he says. "Amazon, Google, Facebook, all the people building out all these cloud applications, infrastructure and services, they're all doing it on open source. The fact that they're using open source software is the only way they can innovate at the pace they need to. They can't wait for their vendors to go through the development cycle."
Does SaaS violate free software principles?
But what exactly is open source doing in the cloud? Stallman, for whom free software is intensely political (he disdains the term open source), claims that cloud computing -- specifically Software as a Service (SaaS) -- cannot be free by definition.
"SaaS and proprietary software lead to similar harmful results, but the causal mechanisms are different," Stallman wrote in an article published by the Boston Review in 2010. "With proprietary software, the cause is that you have and use a copy which is difficult or illegal to change. With SaaS, the cause is that you use a copy you don't have."
"Many free software supporters assume that the problem of SaaS will be solved by developing free software for servers," he adds. "For the server operator's sake, the programs on the server had better be free; if they are proprietary, their owners have power over the server. That's unfair to the operator, and doesn't help you at all. But if the programs on the server are free, that doesn't protect you as the server's user from the effects of SaaS. They give freedom to the operator, but not to you."
Stallman's contention has its roots in the philosophical divide between free software and open source software. The open source movement, Stallman says, is a development methodology with a practical focus on making the source code available. The free software movement, on the other hand, promotes an ethical stance on how users should be able to interact with their software.
For Stallman, free software must provide users with four essential freedoms:
1. The freedom to run the program as you wish