Why do *you* want open software?

There’s a certain amount of consternation about as to why there’s so little up-take on the Affero GNU Public License (AGPL(1)).

  • Stephen O’Grady, of RedMonk, recently cataloged AGPL adoption at around one in a thousand open-source projects. His explanation? Open-source projects don’t need the extra protection (or at any rate, don’t perceive the need).
  • Matt Asay suggests no one really wants to change source code, anyway (or at any rate, to contribute it back).

What I think we actually have going on here is the growth of open-source products beyond their original market: those competent to modify them. You can see these roots of the open source movement as recently as last week, when Richard Stallman criticized Amazon’s Kindle e-book reader for using closed-source software:

The reason that Amazon can turn off the screen reader capability is that the machines use non-free software, controlled by Amazon rather than by the user.  If Amazon can turn this off retroactively (does anyone know for certain if they did?), it implies the product has a dangerous back door.


True enough, if you’re the sort of person with the time and talents to change the code to close the back door. Academic, at best, if you don’t have that time or those talents. But if you view hacker freedom in this (what I can only call) moral light, then sure, extending the protections of the GPL to new deployment styles makes sense.


But the open source community has developed several models other over time. The Apache Software Foundation, for example, pioneered open source techniques as simply a more effective way to create software, through cooperation and collaboration instead of competition. The Apache License does not forbid you to use, combine, or redistribute the products, so the AGPL’s tightening of redistribution rights is uninteresting.


Similarly, some have adopted a so-called “dual licensing” strategy (MySQL perhaps most famously), where their product is available under GPL for non-commercial purposes, but not for commercial ones; for that, you need some other, more conventional commercial license. Matt Asay (mentioned above) has frequently presented his product, Alfresco, as being open source primarily in order to achieve adoption and market penetration, which seems to be the common thread for all dual-licensing strategists. For these licensors, the extra protections of the Affero clause don’t really apply, either: while they might well not want their code used, gratis, by some hosted service, as a practical matter that would probably be commercial application, and already covered by their system.


What you can see here is that the Affero clause reveals some core differences in open-source community  motivations. If you’re considering contributing to or starting an open-source or inner-source project, it’s something to think about: are you a missionary out to save the world, or are you just trying to get some work done? Are you using the techniques to create more and better code, or for market reasons? Your license, your community management, and your expectations should all be aligned.



  1. In brief, the “Affero GNU Public License” adds one clause, that extends the base GPL’s requirement that your product be open-source if you use GPL’ed components in certain ways (what is sometimes called the GPL’s “viral” clause). The “Affero Clause” extends this “virality” to uses in hosted software (whereas the base GPL only applies it to software that is “distributed”).

Jack Repenning

Jack Repenning is Chief Technology Officer at CollabNet. Jack joined CollabNet in 2002; as chief product architect he was primarily responsible for building the product architecture that enabled CollabNet to grow its user base to well over one million users. Jack is also an early member of the wildly successful Subversion open source project, a version control system that is widely viewed as the de facto new industry standard. Consistently engaged in developer productivity topics, Jack has participated in open source software projects since the early 1980’s. Prior to joining CollabNet, Jack worked at well-known Silicon Valley companies such as Hewlett Packard, SGI, Informix, and Rational where he developed expertise in a wide range of technical areas, ranging from inside the kernel to GUI and database design, as well as data center deployment architecture. Jack holds degrees in Electrical Engineering and Information and Computer Science from the University of California, Irvine.

Twitter - More Posts

blog comments powered by Disqus