Between the Lines

Larry Dignan, Andrew Nusca and Rachel King

GPL's cloudy future

By | April 7, 2009, 3:00am PDT

One of the things about getting older is that you learn to ignore things until you have to do something about them. It’s a learned efficiency, I suppose, rationing your increasingly precious time out to the unceasing demands upon it. I finally realized I have to do some serious thinking about cloud computing.

“Hang on a minute, don’t you work at Google ?” I hear you say. Well, yes, but in my defense many of the people who work at Google don’t have anything to do with cloud computing. Some of us have to keep the conference rooms clean, write Open Source/Free Software, things of that nature.

But several recent events have stirred my aging brain into action. These events included the departures of two of my colleagues, who were leaving their current, extremely stable employment to join increasingly risky cloud computing startups. That’s not so strange here in Silicon Valley. I remember some wacky people leaving nice safe enterprise computing jobs to go do something strange with “Web 2.0″ startups, and look how that turned out. One of them drives a Ferrari now (but he always was a bit of a show-off). The third event was from a rather more unlikely source, the Free Software Foundation’s (FSF) annual General Meeting, LibrePlanet, held in Boston.

I was fortunate enough to get invited to give a keynote there, as a sort of comic relief whilst people were waiting for Richard Stallman (the founder of the FSF) to turn up and articulate the state of the Free Software universe. I was in the middle of my talk, “The Elephant in the Room: Microsoft and Free Software”, busily pontificating about Microsoft’s nefarious plans for dominating the Web and software as a service, when I got heckled.

It wasn’t any ordinary heckler either. It was Bradley Kuhn, the former executive director of the Free Software Foundation. Fixing me with a steely glare, he said “So doesn’t this mean that the GPL is the new BSD license and that Google is the new Microsoft ?” I must confess I was a little non-plussed.

I’ll answer the second charge first, then explain the first. Without speaking on Google’s behalf, my opinion is that companies, however large they become, tend to keep the character of their founders so long as the founders are still there. Google is still led by a couple of computing science graduates from Stanford University and one of the old school Sun Microsystems executives. Whilst they are around I have no fears of looking in the mirror and seeing a hazy reflection of Clippy the talking paperclip. Oddly enough, there is finally hope of change at Microsoft for exactly the same reason.

So what did Bradley mean by “GPL being the new BSD” ? The GNU General Public License (or GPL) is the most popular Free Software license. It’s a reciprocal or “copyleft” license in that in order to be allowed the right to redistribute the software (normally forbidden under copyright law) the distributor has to agree to make the source code available to the recipient under exactly the same terms. In other words, share and share alike. The main point of the GPL license is it is impossible to use it to create proprietary software. It’s deliberately designed that way by a man who views proprietary software as immoral. The Berkeley Software Distribution, or BSD license, is a much simpler document. Essentially it allows anyone to use the code without restriction, so long as the copyright notice and disclaimers of warranty are preserved. The main difference between the two is that BSD licensed code is freely used in proprietary software (Apple’s proprietary MacOS X is based on BSD code), whereas the GPL is designed to ensure all derivative works remain Free Software.

But the fatal flaw in the GPL is that the reciprocal clause is only triggered by the act of redistribution. This works well in the world of traditional software, where in order to use a program it must be directly distributed to the recipient. Under the GPL, that person then inherits the same rights to the software source code as the distributor had. But now consider the strange new world of cloud computing, and software as a service. The way software works in this world is completely different. Most of the complex logic and the actual programs themselves live as software only running within server farms, communicating solely by network requests sent from a client Web browser via downloaded Javascript programs.

There is no “distribution” here, so the reciprocal clause of the GPL is never triggered. In such a world, service providers can use GPL-licensed code in proprietary back-end server farms with impunity. This seems contrary to the spirit of the authors of much of the GPL-licensed code used in this way, although it strictly complies with the license. It means that, as Bradley warned, GPL code can be used in the cloud computing market in exactly the same way as BSD code can be used in the traditional software market.

So what can be done to fix this ? Should anything be done to fix this ? After all, traditionally distributed software is still the majority of software used in the world, so why worry ? The FSF think they have the answer, and so in conjunction with Affero, they created the Affero GPL license (AGPL). Affero is a company who writes network software used in the software as a service world and who firmly believes in the concept of software freedom as espoused by the FSF. The result was this creation of a variant of the GPL to cover this important new threat to Free Software. The current AGPL is a version of the GPL version 3 (the current standard GPL version), with one important addition:

“..if you modify the Program, your modified version must prominently offer all users interacting with it remotely through a computer network (if your version supports such interaction) an opportunity to receive the Corresponding Source of your version by providing access to the Corresponding Source from a network server at no charge, through some standard or customary means of facilitating copying of software.”

In other words, when you interact with this software running as a service in the cloud, you must be able to get the source code, just as you would when receiving a normally distributed GPL licensed program.

For network services running in a cloud, this brings back the fairness provision that the original GPL intended, and returns the freedom that Free Software promises to all users and developers.

Currently the AGPL is a minority license as compared to the GPL. Not much Free Software is currently written directly to serve cloud computing network services.

But cloud computing is going to change the industry in as profound a way as client server did in the late 1980s and 1990s. The ability to easily provision and scale up software services based on the Free Software LAMP stack  (Linux / Apache / MySQL /PHP or Perl or Python) or more modern fare such as the open source Java software framework Hadoop is going to massively change the way software is developed. Of course at my day job, it already has for many of the engineers.

Even old fogies like me are going to have to learn some new tricks in this world. Free Software is going to have to adopt as well. I still have lots of Samba code to write first (no, Samba isn’t a finished product yet), but if I ever work on cloud computing code, I’d like to see it under the AGPL, in order to preserve the freedoms I’ve been able to enjoy in conventional software development these many years. Without the AGPL, our freedoms will depend on the kindness of strangers donating their modifications to our code back to us, as they did in the days before the GPL license and the FSF was born.

The LibrePlanet conference also had some very interesting sessions on Free Software Web services, run by the people behind http://identi.ca and http://autonomo.us/. Check them out to learn more about Free Software network services and cloud computing.

Kick off your day with ZDNet's daily e-mail newsletter. It's the freshest tech news and opinion, served hot. Get it.

Topics

Related Discussions on TechRepublic

Did you know you can take part in these discussions with your ZDNet membership?
38
Comments

Join the conversation!

Just In

RE: GPL's cloudy future
musdahi Updated - 8th Oct
GPL's cloudy about it is bank that website attacked from the site support from any soldier site to the light home page is great future
0 Votes
+ -
In the Cloud: ANYBODY can do IT
no_zd_user_name Updated - 7th Apr 2009
ANYBODY. I believe that is the essence of the Cloud revolution.

Users old enough remember the IBM PC. It was a revolution. A maneuver around traditional IT which gave rise to a new generation of software and hardware development without the usual 'impediments' of traditional IT.

There will be growing pains, but I strongly believe that IT will benefit by it.

ANYBODY can do IT.

Dietrich T. Schmitz
http://www.dtschmitz.com
0 Votes
+ -
RE: GPL's cloudy future
musdahi Updated - 8th Oct
GPL's cloudy about it is bank that website attacked from the site support from any soldier site to the light home page is great future
0 Votes
+ -
Just to be contrary
Roger Ramjet 7th Apr 2009
For businesses, technology is secondary and DATA is key. The company's data is the company. I'm not sure how many are willing to cede control of their data to the cloud. I suspect that the larger the business, the less likely they would be to hand over control. Government regulations would prevent more company's from doing this (HIPPA/hospitals).

If a company wanted an INTERNAL cloud to be set up by a cloud provider, the original GPL would be in force since the OS is not "internal" anymore. This would affect companies like IBM and HP that could provide on-premise clouds.

So no change really needs to be made to the GPL. If you want control over your data - then you need to run a cloud locally - which means that the GPL is in force.
0 Votes
+ -
VPNs
no_zd_user_name Updated - 7th Apr 2009
>"I suspect that the larger the business, the less likely they would be to hand over control. Government regulations would prevent more company's from doing this (HIPPA/hospitals)."

I've been a Healthcare IT professional for over 16 years. VPNs are common-place and this is an addressable item in HIPPA, so no problem there.

A good VPN like openVPN is all you need.

Anybody doing non-compliant HIPAA stuff on their VPN remote PC will get put up against the nearest wall and shot. wink
0 Votes
+ -
Where is the cloud?
A.Sinic Updated - 7th Apr 2009
The trouble is, as a client of such a service you have no control of where the data is physically stored. That starts to matter when the cloud storage is in a different regulatory environment than you think it is.

How many US-based companies would be comfortable with finding their data has been subpoenaed from a Europe-based datacenter based on an application filed in a French court, and handed over to EU anti-trust officials for a little fishing expedition? All right thats a rather extreme example, deliberatly so, but it illustrates the problem.

How about if the data gets stored at a nice cheap facility in somewhere like Elbonia, where anybody (including journalists?) can get access if they bribe the right person? Again, just an example, perhaps unfair, but I'd like to illustrate the risk that others will assess on using cloud services of this kind.

One of my Swiss clients already expressed interest in cloud storage (for backup in this case), but wanted a solid guarantee that the data would never leave the same canton! Needless to say, cloud solutions that have to provide datacenters located in specific territories and keep the right data in the right jurisdiction, are not going to scale very efficiently.

As for VPN meeting requirements on confidentiality, I suppose that depends on whether the provider is certified trustworthy under the regulations. But I would want a LOT of insurance (hopefully paid for by the provider) against lawsuits and liabilites when the data is outside of my own company-controlled servers.
0 Votes
+ -
In some cases, the glass is half-empty.
no_zd_user_name 7th Apr 2009
Laws and Cloud governance will undoubtedly need to change to address new needs that arise locally, regionally, and globally.

A needed ingredient is the test of 'time' where the trust level improves and any perceived or real hindrances to Cloud implementation are seen through use and get addressed.

The old will tend to stay in their low-risk ways where possible. The young will likely be the early adopters and risk takers.
0 Votes
+ -
Definitions
Yagotta B. Kidding 11th Apr 2009
The old will tend to stay in their low-risk ways where possible. The young will likely be the early adopters and risk takers.

You know how to spot a pioneer?
0 Votes
+ -
Not so extreme
Yagotta B. Kidding 11th Apr 2009
How many US-based companies would be comfortable with finding their data has been subpoenaed from a Europe-based datacenter based on an application filed in a French court, and handed over to EU anti-trust officials for a little fishing expedition?

Or, as has already happened, European commercial data has been caught up by US electronic eavesdropping and passed on to US-based competition.

Do you really want your corporate existence to depend on whether a Texas magistrate allows law enforcement to confiscate an entire server farm?
0 Votes
+ -
RE: GPL's cloudy future
edward polling Updated - 4th Jul
Without the AGPL, our freedoms will depend on the kindness of strangers donating their modifications to our code back to us, as they did in the days before the GPL license and the FSF was ipad bag blog sutudeg education news and pclos hwdb born. k l
0 Votes
+ -
You know what I can't understand?
storm14k 7th Apr 2009
Whats running in these datacenters like Rackspace or The Planet now? People keep knocking this cloud idea but as far as I can see there are many companies running their applications and storing their data in The Cloud v1.0. I really don't see the difference.
0 Votes
+ -
SMBs
Roger Ramjet 7th Apr 2009
SMBs are the current clients of clouds. They don't have the cash to build their own datacenter, so this is a good avenue for them.
0 Votes
+ -
RE: GPL's cloudy future
gaberdiye03 Updated - 21st Jun
@storm14k For businesses, technology is secondary and DATA is key. The company's data is the company. I'm not sure how many are willing to cede control of their data to the cloud. I suspect that the larger the business, the less likely pembe maske energy balance oyna oyunu moliva orjin krem tutune son nanomatik complex 41 new fx15they would be to hand over control. Government regulations would prevent more company's from doing this (HIPPA/hospitals).

If a company wanted an INTERNAL cloud to be set up by a cloud provider, the original GPL would be in force since the OS is not "internal" anymore. This would affect companies like IBM and HP that could provide on-premise clouds.

So no change really needs to be made to the GPL. If you want control over your data - then you need to run a cloud locally - which means that the GPL is in force.
0 Votes
+ -
Configuration files are as much a part of how software works as the compiled code. So does that mean if you run AGPL code you must publish the contents of your /etc folder? And could one charge an additional fee for distribution of the code, or is it like GPL where the cost of distribution of the binaries automatically includes the cost of distribution of the source (upon request)? I ask that last one because a lot of Web 2.0 programs are gratis (usually ad-supported) and adding the cost of source distribution may risk that profit model.
0 Votes
+ -
I asked the same questions....
storm14k 7th Apr 2009
...on multiple blogs and have not seen answers to this yet.
0 Votes
+ -
It is working out great for Google
GuidingLight 7th Apr 2009
to be able to modify the code to their needs, and not have to distribute it to anyone else.

For that very reason is why Google is where they are at today.
0 Votes
+ -
For that very reason...
kozmcrae 7th Apr 2009
is why Microsoft is where they are today.
0 Votes
+ -
Which is why...
storm14k 7th Apr 2009
...FOSS is great if you ask me. I disagree with the AGPL. The GPL is supposed to be about distribution and not usage or remote access.
0 Votes
+ -
For that very reason is why Google is where they are at today.

No, Google is where it is today because it knows how to do search. The platform on which it implements its search algorithms is immaterial.

Going by your logic, Live Search would be where Google is today if it used Linux.






happy
0 Votes
+ -
I see it now
rapson 7th Apr 2009
Turns out "cloud computing" is really just a plot by Microsoft to get around the GPL. Who would have thought?

Carl Rapson
0 Votes
+ -
Not at all
Michael Kelly 7th Apr 2009
MS's fingerprints are nowhere to be found on this one. If anything this will turn Google into the next "evil empire".
0 Votes
+ -
.
0 Votes
+ -
Sarcastic, certainly
rapson 7th Apr 2009
Although it's not beyond certain people to attempt to tie Microsoft into this somehow. Even Jeremy admits that he was actively engaged in issuing dire warnings about Microsoft when the "heckling" occurred, and Jeremy is known for nothing if not fearing Microsoft's influence. Also telling is how Jeremy, by strange coincidence an employee of Google, neatly side-steps the issue raised by the "heckler" and proceeds to explain why it won't matter even if Google does have such designs, because the GPL will eventually be supplanted by the AGPL. So there's nothing to fear from Google after all, leaving Microsoft as still the only entity to fear.

Carl Rapson
0 Votes
+ -
re: Sarcastic, certainly
none none 7th Apr 2009
it's not beyond certain people to attempt to tie Microsoft into this somehow.

So your remark was preemptive.

Personally, I don't see any more value to the discussion from a post with a point of view of defending MS when no one attacked it than from a post attacking MS out of the blue when MS isn't part of the story.






happy

0 Votes
+ -
Death to the AGPL
storm14k 7th Apr 2009
I disagree with the AGPL. The GPL is supposed to be about distribution and not usage or remote access. How could the community have NOT thought about this when Linux was intended to be a server OS. If the point was to cover remote access under distribution then it would have been done from the get go.

No the AGPL is cooked up by those that simply can't stand the idea of software being used to make money if you ask me. It has only become a problem now that some companies are growing very large by using FOSS and customizing it. To me that is the beauty of FOSS. I can start with the same base as Google with little to no overhead and work to reach their level. The AGPL just seems to wreak of jealousy to me.
0 Votes
+ -
I agree.
No_Ax_to_Grind 7th Apr 2009
Leave it alone.
0 Votes
+ -
re: I agree.
none none 7th Apr 2009
Leave it alone.

When did you become so generous toward the GPL???















happy
0 Votes
+ -
Bob Dylan was right
no_zd_user_name 7th Apr 2009
The times they are a changin'
0 Votes
+ -
Never had an issue with it.
No_Ax_to_Grind 7th Apr 2009
And use GPLed code where its appropiate and meets my business needs. Yes, there are times I can't use it do to its limitations, but, everything has some limitation somewhere.
0 Votes
+ -
It's about user freedom
weex 7th Apr 2009
The AGPL and GPL were not construed as a plot against making money. The point is user freedom. The kind of lock-in experienced by users of Microsoft Outlook pales in comparison to that offered by a network service like Facebook.

Just as file formats are the most poweful tool to hold people in non-free software use, lack of complete data export tools is what locks users into network services. Just as I can open a .docx file in Open Office, I should be able to export my friend graph from Facebook, load it into an instance of Noserub and get on with my life. That is, if I don't agree with the direction Facebook is going.

Free software is not about spite. It's about practical, long-term, self-determination.
0 Votes
+ -
Access more Important in SAS
icebike 9th Apr 2009
Quoting Storm14k:

" The GPL is supposed to be about distribution
and not usage or remote access. How could the
community have NOT thought about this when
Linux was intended to be a server OS. If the
point was to cover remote access under
distribution then it would have been done from
the get go."

The community did think of this, but since
servers were built using common tools
availability was never an issue as long as the
base distribrution was available.

When you toss your database into the cloud
wouldn't be nice, nay, essential to see the
code managing that data?

Does the plumber object to you looking at his
tools? You pay him for what he DOES not what
he does it with. But you are still entitled to
look into his tool bag when he brings it in
your house.

Without a million eyes, who will keep the cloud
clean? The closed source community hasn't done
a stellar job of security and reliability now
have they?

As for the AGPL being opposed to people making
money, how can you put that in the same post
where you mention Linux as a server OS. How
many companies are profitably providing web
services running Linux? How many are increasing
profits by running Linux in their own data
centers?

Copyright and patent the service, not the
tools. Or better yet, just compete on price,
quality and speed.


0 Votes
+ -
Within your rights
Yagotta B. Kidding 11th Apr 2009
I disagree with the AGPL.

So by all means don't use it to license software you produce.
0 Votes
+ -
RE: GPL's cloudy future
GWD-rackIT Updated - 7th Apr 2009
I interviewed RMS a while back at http://rackit.gartnerwebdev.net/2009/01/on-the-front-lines-with-richard-stallman/ and recently asked him what his opinion on this issue is. I'll let you know when I hear back.
0 Votes
+ -
Tons of problems
Yensi717 7th Apr 2009
One of the main problems I can see is if you use the code for "Cloud service X" but really you want it tied into some of your other backend systems (authentication comes to mind) you have to reveal your source code which may expose way more than you legally want to.
0 Votes
+ -
Bad idea, not everyone is Google.
No_Ax_to_Grind 7th Apr 2009
I sort of (almost) understand why Google is the focus, it being a "public" service. But lets say I build something for my own company and only those in my company use it. Say limited to 500 employees. It would make no sense to show my competition how my system works and lose a competitive advantage.
0 Votes
+ -
If you dont give access
A.Sinic 8th Apr 2009
you dont have an obligation to share.

For in-company applications, under GPL2 you are not distributing anything, and under AGPL you are not providing a service to anyone else. So you dont need to share your code in either case.
0 Votes
+ -
samba isn't cloud computing code?
JasonWoof 8th Apr 2009
Jeremy,

Great article, and great speech at Libra Planet.

You said "if I ever work on cloud computing code" in a sentence about that started out about working on samba... How is samba not cloud computing code? Seems to me it's sole purpose is to interact over a network. Hmm... maybe I need a more sophisticated definition of "cloud computing"?
0 Votes
+ -
Samba not cloud computing.
JeremyAllison 13th Apr 2009
Samba doesn't feel like cloud computing to me. Yes, it provides RPC services, but it uses so many different RPC mechanisms due to the age of the protocol that it really is in a different class (Network service ?) than what I'd define as cloud computing. It is not safe to expose SMB outside the corporate firewall for example (and no I don't know of any security issues in Samba but this just makes sense on general principle).

Jeremy.
0 Votes
+ -
THE fatal flaw in the GPL is RMS
Too Old For IT 30th Apr 2009
The all or nothing approach to GPL licensing will be the death of the GPL yet.

Join the conversation!

Formatting +
BB Codes - Note: HTML is not supported in forums
  • [b] Bold [/b]
  • [i] Italic [/i]
  • [u] Underline [/u]
  • [s] Strikethrough [/s]
  • [q] "Quote" [/q]
  • [ol][*] 1. Ordered List [/ol]
  • [ul][*] · Unordered List [/ul]
  • [pre] Preformat [/pre]
  • [quote] "Blockquote" [/quote]
ie8 fix

The best of ZDNet, delivered

ZDNet Newsletters

Get the best of ZDNet delivered straight to your inbox

Facebook Activity

White Papers, Webcasts, & Resources
ie8 fix