DynamicDomainProperties and the AGPL

Click here to lend your support to: Un-AGPL DynamicDomainProperties 1.0 and make a donation at www.pledgie.com !

I just released the DynamicDomainProperties plugin for Grails, which allows domain classes to have dynamic properties. It’s pretty nifty, if I do say so myself.

Based on my frustration with the Grails plugin culture because of differing cultural assumptions about open source works, and based on my lack of appreciation for the promises of indirect compensation offered to me as an open source developer, I’ve decided to release it under the GNU-Affero GPL 3.0, which is like the GPL but (among other things) requires the source to be available to the users of a web app that use this plugin.

I’m open to the idea of releasing it under the more “biz-friendly” BSD, but then I’m going to want a different form of compensation. So I’m putting up a bounty via Pledgie: if I was building this plugin as a consultant, it would have cost a client about $2500. So, if the commercial community contributes $2500, I’ll do a BSD release. Anyone who donates $250 or more gets a single-domain usage license right away.

For more information on the plugin, see the plugin page on grails.org. (I’ve had enough difficulty with GitHub’s wiki freaking out on me and would rather avoid that.)

This entry was posted in Open Source and tagged , , , . Bookmark the permalink. Post a comment or leave a trackback: Trackback URL.

12 Comments

  1. Posted February 22, 2010 at 10:04 AM | Permalink

    I’m interested to see how this pans out Robert – good luck!

  2. Posted March 4, 2010 at 9:06 AM | Permalink

    Way to go. This looks like the way forward to me. In the Microsoft’ arena GUI component vendors started to sell there wares this way too, like Infragistics. I always thought plug-ins would have to go the same way to get support for your plug-ins. You have to put food on the table somehow..

  3. Sakuraba
    Posted March 18, 2010 at 4:11 PM | Permalink

    What part of those profits will go back to the creators of the software you benefit from? What if you had to pay for using Grails source code?

    You basically take freedom, but you close down your extensions on top of that. How is that fair?

    In my mind, if you dont stand by your contributions and pass by the freedoms that you have received to others, you shouldnt release those contributions at all.

    • Posted March 18, 2010 at 8:14 PM | Permalink

      The Grails source code developers aren’t asking for AGPL freedom. They’re apparently feeling sufficiently compensated with the Grails Apache license: indeed, they’ve done very well by it. And they’ve done very well by touting the number of (totally uncompensated) open source plugins which are available for the platform they built. My plugin makes their platform more valuable by its very existence. So they’re certainly getting their compensation.

      I, on the other hand, am not sufficiently compensated by the Apache license, so I’m releasing it under the free-as-in-freedom AGPL as my compensation.

      Even more, I’m not “closing down” my extension, but actually asking for exactly the kind of freedom-in-kind that you’re describing. You can use my plugin all you’d like: your web-app just has to be free-as-in-freedom, too. If Grails wanted that kind of license, they could have released under the AGPL.

      • Sakuraba
        Posted March 19, 2010 at 3:59 AM | Permalink

        >> I, on the other hand, am not sufficiently compensated

        Nobody forces you to do anything. It is your choice to write plugins and make the Grails ecosystem more valuable. It is your choice to do so. If you dont like to let other people benefit from your work, why do you give people access to it?

        >> Even more, I’m not “closing down” my extension

        I think you do, because the only two choice you give people are: Pay me money or dont use it, because your client wont let you opensource his app anyway. Those choices are fine in general as you can do whatever you like with your work, but please dont label it as granting people freedom, when it is actually the opposite. If at all (and I wish you luck with that), the only person gaining anything is you ;)

        >> If Grails wanted that kind of license, they could have released under the AGPL.

        Then you wouldnt be writing extensions, because nobody would have given a f*** about Grails then.

        • Posted March 19, 2010 at 8:07 AM | Permalink

          Your argument—that people “can’t” use it—is nonsense. Completely ignoring the site license I’m offering as a thanks for $250 donations, you can still use the plugin by open sourcing your web application (and thereby helping the community). The only time I’m putting restrictions on your use of this plugin is when you take and use my plugin without returning anything to me or the community.

          Since I don’t care for the compensation the Apache license affords me, I’ve decided that I would rather support the open source community to an advantage over the commercial community, and I’ll take that as my compensation. Grails made a different choice, because they leverage adoption into compensation in a way that I don’t care to.

          And quite frankly, I think offering a site license in return for a $250 donation is a steal. It took me a bit more than 25 hours to write this code, so making it accessible for $250 is a pitiful wage. Even more, you can try out the code locally for free and then only decide you want to invest enough to receive the anti-open-source license once you know the code actually works in your case.

        • Posted March 19, 2010 at 8:22 AM | Permalink

          And yes, I am preventing you from taking one action—I’m preventing you from taking my hard work and using it for your commercial advantage while leaving both me and the wider community to rot. If you consider that kind of parasitic siphoning a right and a freedom to be defended, then you’ve got a warped, ungrateful, and vaguely evil concept of open source, and I don’t want you to use my stuff.

          • Sakuraba
            Posted March 20, 2010 at 6:06 AM | Permalink

            >> $250 donation is a steal
            I have no problem with you getting compensated for your work. If that plugin would fundamentally help me, then 250 bucks is not much, you are right. I think I d have some problem with my employer transfering the money to Pledgie but maybe other organizations are capable of that.

            The only thing I have a problem with, is the fact that you label your actions as a way of granting anybody freedom, when essentially you license your code in a way that reduces people’s choice. The fact that it is not a standalone library, but something that offered you more freedom then you are willing to give others only intensifies this, as you benefited from being able to use Grails without compensating anyone.

            >> I’m preventing you from taking my hard work and using it for your commercial advantage while leaving both me and the wider community to rot.

            That is all I wanted to hear, since now your motives are clear and not hidden behind a “i do that to give you freedom”-mask ;)

            >> If you consider that kind of parasitic siphoning a right and a freedom to be defended, then you’ve got a warped, ungrateful, and vaguely evil concept of open source, and I don’t want you to use my stuff.

            I never accused you of things, so I am not gonna do it now. But that is not my view of opensource and not the reason why I was writing this. All I wanted was to let others reading this know that before making such a license choice they should remember whether they have benefited from others work in the process and whether it is fair to them to do such a move.

            • Posted March 21, 2010 at 12:03 PM | Permalink

              Yes—as I stated in the OP, I want compensation for my open source work. And if that compensation isn’t active engagement in a reciprocal open source community (a la the JavaScript/jQuery community) and isn’t money, I’ll take supporting free projects to the advantage over commercial projects as my compensation.

              Once upon a time, I viewed open source as just ‘sharing useful code’ (hence WTFPL/CC0), but that’s not the relationship the Grails community seems happy with—see the links in the OP for that story. So if I put a lot of work into something and I’m concerned about needing to support it, I’m structuring my relationship differently.

  4. Posted March 18, 2010 at 8:41 PM | Permalink

    I find awesome your endeavor. We all love open-source but monetizing from it is often really hard if you’re not Jboss, Sun or Mozilla.

    I’ve made a donation. Not for this plugin especificaly but for this and all others that you have contributed and that make my job easier. Thanks Rob.

    • Posted March 19, 2010 at 10:50 AM | Permalink

      I appreciate the donation.

      Although I’ve used it, I’m starting to reconsider the word “monetizing”. I’m not really concerned about “monetizing” my software—I’m concerned about making time in my schedule for open source software. My time is a zero-sum game, so developing open source software means not doing things that I can “foodetize” or “tuititionetize” or “keep-utilities-running-etize”. Once upon a time, I had the (quite literal) free time to dedicate to open source—but now that free time is dedicated towards graduate school, so I need to make time some other way in my schedule.

  5. Posted March 19, 2010 at 9:31 AM | Permalink

    Robert,

    I really like the idea. You as the author have the right to distribute your work in any way you want. If someone doesn’t like the terms they can go write it themselves.

    I think doing a Pledgie drive to cover your labor costs before releasing something under a liberal license is a good way to do it.

    Mark

One Trackback

  1. [...] I have time to, I can completely comprehend Robert’s point of view and his desire to get a different kind of compensation for his open source work. In fact, there should be plenty of space for both approaches (and [...]

Post a Comment

Your email is never published nor shared. Required fields are marked *

*
*

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre lang="" line="" escaped="">