Referred to Webmaster forum from initial post.
Central question: Has there been any push behind making developer compensation more central to the drupal community, and not an afterthought incorporated on an individual basis (usually with ad-hoc solutions or embedded "Donate" buttons, if at all)?
Forum topic: Selling Drupal Mods? Can I?
I was reading through the above thread, and GPL licenses came up in regards to what they allow, and what they don't, and how Joomla is/was friendlier to developers by not being as "hardcore" GPL. Basically, people were saying that it was more in the Joomla culture to charge for modules, and so it was easier to be a Joomla developer. Eventually, people were talking about how it's difficult to honour the license (and true open-source spirit) and still make a living doing development.
I've dropped in on a few local Drupal Developer meetups in Toronto, and as great as the community is, there does seem to be a quasi-cynical undercurrent that says "Drupal is GREAT! Buuuuut... don't count on being able to live off of it."
It seems that there's this sort of tacit acceptance that you can't make money as a drupal developer and that it certainly doesn't show great returns on time investment. And that's probably correct. As someone who works as a casual drupaler for a good chunk of his day-job, it's easy to get into a take-take-take, look-how-wonderful-and-free-open-source-is mentality. This will become particularly important as Drupal becomes even more end-user friendly, and it becomes even simpler to work with drupal as an end-user without the open-source-community point of reference. And by that, I'm referring to the fact that with the way things are going, end-users will likely be able to update modules completely from their own UI. This will decrease the points of contact between the general user and developer, hurting their prospects of donations.
I believe that, if a system of donating to maintainers were integrated into drupal.org and drupal core itself, it would be a lot harder for maintainer contributions to be ignored. And it's not only that it would make it simper for even casual drupal and drupal.org members to donate -- it could also help make these contributions more transparent (if the maintainer/donor allowed the records to be shown). I think would help people see when maintainers or modules are under-served by donors. There's a lot to be said for clarity and unity, particularly when dealing with online payment. Frankly, these donate buttons and behind-the-scenes paypal exchanges are no way to financially support the people you depend on.
So long-story-short, I think some sort of concerted effort is in order.
Here are my thoughts on a potential solution:
Drupal.org integration
The best solution would likely be integrated with drupal.org, in the same way that the Update status module and usage statistics are. If this would involve storing information on donations (as I think it should), there'd be trust issues with any other setup.
Location of information
- Each project page should have a donation block, or a current block should be repurposed to serve as one. This feature could easily go into the profile as well, but having it right on the project page is important. After all, you're donating to a contributor's efforts for a specific project, so that's intuitively where this info should be displayed. We use project pages all the time, but how often do we browse to maintainers' profiles? The most fitting place would be to make changes to the Maintainers for < module > block.
- Given that D7 seems to be heading toward having updates occur totally through the UI of each drupal install, it's entirely possible that site builders/maintainers of the future might not visit drupal.org nearly as regularly. For this reason, it might make sense to integrate any central donation system with the Update status module itself. After all, it's on this page that we are about to reap the fruits of a developer's labour, so it makes sense that this is the place where users will be most inclined to donate.
Sure, a "Donate" button would technically suffice, but giving the request some depth and context would increase the likelihood of donation (Think kiva.org). Something as simple as basic contributor information beside a donate button might help to give the faceless "module maintainer" this depth.
Since multiple maintainers will work on one module, I suggest having donations work on a per-maintainer basis. On the Update status module, display of a single maintainer would be used so as not to overwhelm the end-user who's updating. After all, no one wants to see a list of 8 module maintainers pleading for donations when all they wanted to do was update their module. Perhaps this display could rotate between maintainers in a way that's proportional to their module activity/commits. More commits means that their name comes up more often as the suggested donor.
Relevant information
Various pieces of this information could be displayed in the module maintainer block of the profile page, on the maintainers profile page itself, and as part of the Update status module.
Key pieces of information that might be relevant to potential donors are:
- Total donations - Total quantity and amount of donations for each project maintainer. ($500 [45 donations])
- Average donation amount - To give people an idea of the "going rate". There might be something better than a simple average (like mode/median?), so that exceptionally large donations (Ha?) don't give skewed expectations of donation amounts.
- Number of commits - Already present in block.
- Last commit - Already present in block.
- Simple issue queue statistics - To give an idea of how active they are in support.
- Simple usage statistics - Per project (not per maintainer). It's important for everyone visiting the project page (or status update module) to easily see how prolific a module is. This could influence things both ways, either "Hey, this is really high-use, but no one is donating," or "Hey, this is a great concept, but the contributor doesn't have much support yet." You could easily judge when current donations don't match usage.
Information privacy
Contributors and donors would need to be able to have veto power over whether their donations we publicly visible. There could be different options to anonymize individual donations.
Transferring donations to maintainers
Ubercart's Marketplace module makes use of Paypal's MassPay API, and this would be perfect for this situation as well. This API allows a central site to send paypal transfers to the individual paypal accounts of users (the information for which they've inputted themselves). The going rate at the moment is $1 per transfer, which would be paid by the sender, drupal.org. Module maintainers could pay a yearly fee to enroll in the integrated donation framework. This might sound like alot, but if donations were sent to maintainers on a monthly basis, then only $12 a year to cover transfer costs. Given the opportunity to increase donation frequency, this seems like a great deal.
---------------------------------------------
I realize this is no small task, but if anyone else interested in pursuing a project like this, I'd be open to starting a group. So what do you say?
Keep in mind, I'm not a top-notch developer (nor a maintainer at all, to be honest), so I absolutely can't handle development on my own, but I'm totally willing to take on a role in information gathering within the drupal community. The intention is that this would help maintainers turn a buck, and it would be stupid not to consult on potential features and needs before jumping in :)
TO DO
- Look into Project module to see how this could fit
- Look into modules that could provide dependencies (and reduce module redundancy)
- Sketch some UI ideas and wireframes
Anyone have any thoughts or (perhaps more importantly) criticisms?
Cheers all! Sorry for the length!
Comments
Comment #1
Crell commentedI don't know why Toronto would be saying that at all. Lots of people make quite a good living off of Drupal. You just can't do so by productizing modules and selling per-unit. That is by design. That doesn't make it "developer unfriendly", unless your intent is to sell modules per-unit.
I'm not against the idea in principle necessarily, but not because "Developers can't make money otherwise". That's pure FUD.
Comment #2
patcon commentedAck! Before I get in trouble, I want to set it straight that this was a business-themed meeting, so maybe underemployed developers were more vocal/prominent. I could very well have misread. "Toronto" isn't saying anything :)
But you're right. I suppose I was calling it developer unfriendly because, as someone who's currently more an end-user than anything else, it doesn't encourage me to be friendly to developers, cash-money wise. Not to say that you guys are especially unhappy, but I think you could be better served financially by the infrastructure -- That's all.
Comment #3
gerhard killesreiter commentedThis has changed since that discussion happened. Also, I don't see this as being developer friendly at all, it's maybe business friendly. The developer has done his job when the module is written, it's the business person that wants to sell it over and over again.
OTOH, there are plenty of people who make a very nice living from developing Drupal related stuff.
I wouldn't want to rely on living from donations that some people would make or not. Realistically, you need about 20-50 contrib modules for a website. If you don't develop this for a client, you don't really gave a budget for meaningful donations.
I fear that in the end the only entity that profits from this would be paypal...
There are a couple of developers who ask for donations on their module pages. We should ask them if they ever got something out of it.
Comment #4
dave reidI have kinda liked what addons.mozilla.org has done although I think they place too much emphasis on donating to the extension developer(s). See https://addons.mozilla.org/en-US/firefox/addon/7661
Although I think the main problem with this is how would we determine where money goes to? There are sometimes people that help maintain issue queues, but don't make as many commits. Sometimes projects have several maintainers across several branches. I don't think any kind of solution would work on Drupal.org, so its something best left to the module maintainers themselves.
Comment #5
Anonymous (not verified) commentedI agree with Dave that this is something the single maintainers should arrange for themselves.
Adding a module to Drupal.org, with the risk it doesn't get update for Drupal 7, doesn't seem a good idea, IMO; the effort on doing what proposed doesn't seem worth the time taken to implement it.
Comment #6
patcon commentedok, cool. I can respect that :)
Maybe I get a little too excited about the concept...
Thanks for the feedback though, folks.
Comment #7
tstoecklerper #5?
Comment #8
patcon commentedYou know your stuff Dave, so perhaps the idea as proposed isn't practical, but just to close this out, I'll address the lingering points.
@ #3: Good call Gerhard: Doing a search of "donate" on projects, these maintainers come in on top:
- gor (11)
- regx (8)
- boombatower (5)
- infojunkie (5)
- greenSkin (4)
- Docc (3)
- dealancer (3)
- ivanjaros (3)
Anyone know of others? I suppose this doesn't find people who have a non-text "Donate" image. I might send some of them a quick message to let them know about this thread -- just to see if they have any input.
@ #4: Thanks for the heads-up on Mozilla, Dave. I know their development economy is very different (not service-based, as many have pointed out about Drupal), but their experience might still be a good reference.
Here's the blog post from when Mozilla announced the "Contributions pilot", as they call it:
http://blog.mozilla.com/addons/2009/07/15/firefox-add-ons-contributions-...
And here are two follow-up blog posts, analyzing the contributions:
http://blog.mozilla.com/addons/2009/10/19/contributions-a-look-at-some-n...
http://blog.mozilla.com/addons/2010/01/25/contributions-sources/
It's worth noting that in 4 months, they pulled in over $40,000 for 410 developers, which seems decently significant.
Comment #9
patcon commentedI sent messages to the users listed above, asking them to drop by and leave their thoughts.
@ #7: Sorry, I replied, but then had a change of heart and wanted to add something else. Hopefully no one minds if I open again?
Comment #10
Anonymous (not verified) commentedI have three modules with Paypal dontation link. So far no donations. But my modules are very simple, so no suprprise :) (my modules are used on 700+ websites)
Ive created a forum thread about this topic, but without any replies.
When I came to the Drupal community, I was really happy that I dont have to pay for allmost every module like with Joomla. But that was when I was just an average user. Since i began to develope, I see that some "payback" is good. Im absolutely against paying for modules like with Joomla(means total commercialisation), but Im definitively for donations. I know that donations for Drupal modules wouldnt pay for my bills, but that depends on usefullness of the module. I can imagine that I wouldnt get a penny for lets say my Decounter module, but I can see some real money with Views or CCK.
So Im definively for some donations integration with Drupal.org and absolutely against paying for modules(at least on Drupal.org). We have a great non-greedy community, so Id be verry dissapointed if this would change.
Comment #11
infojunkieFor more than a year now, I've been freelancing as Drupal developer / site architect. This is my only full-time work and I would love to rely on it to make a living and sustain my family, although I am not there yet. Prior to this, I co-ran a Drupal services company for 5 years which we unfortunately had to close down, in part because I moved to another country.
So Drupal is central to my livelihood as a free agent. I contribute back in the ways that I can - I publish and support all my modules, I submit patches to other modules I use, I attend conferences and user groups whenever I can. More significantly perhaps, I require from all my jobs that the work I do be publishable.
I've put up a donation link on my user and module pages, but no one has clicked it (or at least, no one has gone as far as completing the payment). On the other hand, I also put up a "contact me for paid work" link through which I *do* receive a decent amount of job requests - a nice addition to my revenue and portfolio. I believe I receive those job requests because of my contributed modules, the most successful of which exceeds 10,000 active uses.
Sorry for the lengthy introduction, but it's important to understand how Drupal members, especially contributors, make a living. I suspect most of them have a day job which more or less involves Drupal, allowing them to contribute modules and maintain them - and they have a paycheck at the end of the month that is not commensurate with their community contributions. Some might be running their own companies, although when I did so I spent far more time trying to sustain the business rather than actively contributing to the Drupal community. Those who freelance as Drupal consultants are probably in the tightest spot, totally relying on their networking skills and online presence to "sell themselves" and find each next job. It would be great if the Drupal.org website could help us contributors increase our income. After all, a community remains healthy when its active members remain happy. But what's the best way to help us increase this income?
I don't think donation is necessarily the best route. To me, contributed modules are my tools and my portfolio. I don't expect payback for them as much as new job leads that will utilize the same skills that I applied to build those modules. Plus, why donate to my humble modules when the whole Internet is standing on the shoulder of open source giants such as Apache, MySQL, PHP, Linux, and Drupal core itself ? Maybe the donation model is not sustainable.
What I would like to see on Drupal.org is better visibility for Drupal contributors who wish to be engaged professionally. Although I haven't followed the Drupal.org redesign process, that's where I would look for opportunities to focus on contributors. Some examples:
* A reputation system based on contributions and peer feedback.
* A skill system where members can advertise and be rated on their skills.
* A user search based on location, reputation, skill.
* A clear "hire this contributor" icon next to the member name when they specify that they're available.
These are issues that have been on my mind for a long time, so I am grateful to be able to discuss them and I apologize if the outcome is a bit messy. One of my current projects, AdHack, incorporates some of these ideas for the advertising creative freelancers. The feedback we get from these freelancers is very positive, so maybe a similar direction could be considered for Drupal.org.
Comment #12
patcon commentedThanks for the feedback guys, but I'll leave it to the big dogs to reply directly.
Just wanted to point out something else I found in my digging:
Interesting cnet story that makes me think the Mozilla add-on model ain't all it's cracked up to be...
Is Mozilla's contributions program working?
However, there is this interesting quote that seems to be most relevant to drupal:
Comment #13
heine commentedI'm underwhelmed. I know couples who'd consider it a slow month when they pull in this amount in a month.
40K in 4 months for 410 developer comes down to about USD 24 per developer per month. Is that worth the effort? If you think so, you're free to join me at lunch to feed yourself of the table scraps.
As to donation experiences.
A 5.x module of mine (not hosted on d.o.) that has been downloaded nearly 10.000 times resulted in EUR 10 of donations.
Comment #14
patcon commentedhaha alright alright, but when you say "Is it worth the effort?", it depends who you're asking: For a student who's looking for a CMS to dig into, the question would be "Is it worth the effort of typing in my paypal login to potentially get a free book or free coffees every month?" That might be one of the little things that helps sweeten the pot for the drupal camp. I'd say it's hard to quantify these matters of image and brand. Were it not for the clear data showing otherwise, some might say that it's not worth going to all the effort to figure out "how to arrange menu items".
And as much as there aren't piles of money coming in with the Mozilla feature, you'd be hard-pressed to find a developer who didn't appreciate the gesture -- not much criticism in the comments.
But maybe my thinking's out of line =)
Aynhow, I think it's safe to say that not many people are behind this. If no one else has anything to say, feel free to close it I suppose :)
Comment #15
michelleI like the idea and wouldn't mind getting some donations from my modules since I don't make money with Drupal. A little spending money from it would be cool. I think the problem is ROI. It would take someone's time and effort to build something into d.o and it's not clear that it would be used enough to make it worthwhile.
Some big name modules have had donation links on the project pages and got nothing from it. As much as I'd love this to work, I just don't think there would be enough donations to justify putting a lot of effort into it. :(
Michelle
Comment #16
Anonymous (not verified) commentedI totally agree with Michelle.
Comment #17
kbahey commentedHere is another anecdotal data point.
I have been a Drupal contributor close to 7 years now. My contributions include a few core features, but more visibly, tens of modules on d.o. Drupal is my full time job, mainly services and consulting.
While I have not asked for donations on the project pages on d.o, there is a link on my business site that allows people to donate. Over the 3 or so years that this feature was enabled, it brought in about 3 or 4 donations of a total of $40 dollars.
Having said that, I do support a donation link as a feature that individual maintainers can enable or disable for their project. If it is a feature in project* then at least it looks the same on all projects, rather than having a button here, a link there and a Flash widget there.
Comment #18
patcon commentedThanks guys... appreciate the consideration of the idea :)
@ #17
I like this idea, kbahey! It's simple, but could make a big difference! And the button could be customized to integrate best with the new design:
Paypal's Advanced "donate button" techniques
Anyhow, I realize that this issue is dead in this water for now, but I'll post some links, partly because I feel that eventually the climate might be better suited. Hopefully I don't come across as too stubborn in saying that!
For anyone else who stumbles upon this later, these links might be of interest:
Interesting quote to consider, should something similar ever be undertaken:
Interesting quote addressing the sort of response Drupal might see (with a user-base very different than Firefox Add-ons):
Comment #19
patcon commentedAdded note:
As mentioned elsewhere in regards to Mozilla's pilot, asking for donations on download isn't the best tactic, as people by definition haven't taken the contrib through its paces yet. If done correctly, asking during update might be more effective.
A potential model for drupal would be to focus on donations mainly during update. You click "Update" from your install's UI, and a popup appears prompting you to consider donating. You can easily skip this by entering a sum of $0. This would make it simple and low-pressure enough to avoid being inconvenient, but would also make the user confront the fact that they are in effect saying that this module is worth nothing to them. And considering that they're in the process of getting the latest and greatest update, this might smack of cognitive dissonance.
Anyhow, just a thought as I close this!
Comment #20
Anonymous (not verified) commentedI apologize for re-opening this report, but considering that most users are not allowed to use full HTML in the project page, it would be good to have a module that allows to add a donation link in the project page, in the same way done from other sites, where in each project page can appear a button to donate.
The reason to have a module that add such button is that, in example, the button created by PayPal uses a form, and it cannot be added in a project page, if not from users who are site maintainers, or user maintainers, who are a minority if compared to all the users with a CVS account.
Rather than a complex solution, it would be enough to have a module that adds a donation button to project pages, with a settings page that allows the user to decide which button must appear, or to paste in the code obtained from third-party sites (like PayPal, in example).
Comment #21
patcon commentedCame across a service called Flattr, which was started by a co-founder of The Pirate Bay.
Intro landing page: https://flattr.com/support/intro
Animated intro video: http://www.youtube.com/watch?v=kwvExIWf_Uc
Drupal project page: http://drupal.org/project/flattr
Seems they're trying to encourage an alternate business model for content creators on the web (while encouraging a culture of showing appreciation).
The gist is this:
It's a really great concept and a system that I think jives very well with the Drupal culture! Flattr is still trying to get off the ground, and so I imagine that getting a whole open-source community behind it would give it a well-needed push.
So I realize it's a long-shot, but is there any way that this could be implemented officially through drupal.org? It seems the main issue was previously the ROI for developing the proper system, but I imagine this would be a comparatively straight-forward integration of an existing solution. Perhaps it could be piloted on module pages or something like that, and pushed further to issue queue posts if it's succesful?
Not sure how others feel, but I find it really exciting to think how this might contribute to the helpful atmosphere around here. Perhaps it might convince more of those silent developers to become more vocal with contributing :)
Any thoughts? I'd love to help out with integrating the module if there's any interest!
Comment #22
patcon commentedMore appropriate title?
Oh, and this is from the FAQ and might be useful info:
Basically, you can't receive unless you're actively giving, which I think would be a positive influence in the Drupal community :)
UPDATE: Also, according to the forums, a REST API is in the works, and will hopefully be released within the next month or so. The devs seemed to be pre-occupied with something in December that slowed down progress ;)
Comment #23
voxpelli commentedBeing part of the Flattr crew I'm of course in favor of implementing Flattr into Drupal.org - would be very nice to be able to flattr modules :)
In response to #22: The Flattr REST API is already available in an alpha-state - contact me or anyone else at Flattr for more info.
Comment #24
itangalo commentedAdding a link to a brief discussion on Flattr for drupal.org over at morten.dk's website: http://morten.dk/blog/drupalappstore-killed-drupal#comment-2098
Also, there is a now a suggestion for adding Flattr support over at drupal-association.ideascale.com: http://drupal-association.ideascale.com/a/dtd/Consider-adding-Flattr-but...
Comment #26
adamgerthel commentedUh - the above comment seems to be spam. That's a first in a long time.
Anyway, I disagree with using Flattr. As a Drupal agency we would develop and work on a lot more modules if there was a way for us to make money off of it. We currently support 4 modules, but we hardly have time to maintain them, because we have salarys to pay our developers. Pouring money into modules is not ideal for drupal agencies, and most don't do it.
If there was a way for agencies to provide modules that would make sense from a financial perspective, we would probably see a lot more high quality and well-maintained modules pop up.
I'm not against the idea of donations or Flattr, I just don't see it getting anywhere near the compensation needed.
Comment #27
itangalo commented1) Changing back the title. Damn spammer.
2) @AdamGerthel: I see what you mean with Flattr or other donations not being able to finance development – and I agree. But I think the point of using Flattr is not so much to fincance development as a way to show and get appreciation for modules/themes/other projects – in a way that also gives a bit of money.
Comment #28
patcon commented@Itangalo ++
The app store has changed this discussion, but the idea of Flattr support was never to finance module development, just to remotely buy beers between drupalcons :)
Comment #29
Anonymous (not verified) commented#26 I know what you mean. For this model to work Dries would have to change license 'agreement' so modules could be exempt from GPL license and sure this will never happen, unfortunately. I think changing this would be awesome and would bring a lot of money to the Drupal Association for licenses from private companies for allowing them to SELL Drupal as close-sourced app.
The donations are good but only for big modules which means authors of many small modules won't be appreciated for their work anyway. Hence the donations integration with d.org has no point, imho.
Comment #30
itangalo commented@29: Help me understand – why does Flattr (or other donations) require that modules and other projects are not GPL? And again, Flattr (or other donations) don't have to finance development – it can still encourage developers, both in terms of money and by people simply stating "I like what you're doing".
Right?
Comment #31
Crell commentedivanjaros: Neither Dries nor the DA can unilaterally approve non-GPL code. The copyright is held by many many people, and the DA holds virtually no copyright. It's just a packager/distributor. The only possible license change would be to move to GPLv3, which some people have been discussing lately. Selling Drupal as a closed-source app is not even remotely on the table.
That's also, as Itangalo notes, not the point. The question on the table is simply a more formal and recorded way of saying "dude, you rock, thanks!" than we have now. It's not a funding mechanism.
Comment #32
Anonymous (not verified) commented#31 You are right about many people having copyright for Drupal. That could be decided in some community poll if DA should be able to sell licenses to companies so they could sell Drupal-based products as proprietary software or not. DA would earn good money that could be used for d.org infrastructure or drupal events. There would always be Drupal as open-source but companies would profit from making applications based on Drupal without fear that someone would share/steal their code without any legal protection. Now they can only use Drupal as SaaS if they don't want to lose their code. I think that is a win-win situation.
My other point is that at least modules should have the freedom of choice to be proprietary or not. I know that anything that is based on Drupal's api has to be GPL but that is not restriction of GPL but a choice. I don't think community would get hurt by this decision. IMHO more likely there would be much more and better software available and bigger Drupal awareness.
BTW: there is already marketplace section here so why not extend it by paid modules?
But that is quite off-topic so let's get back on track with the donations.
Comment #33
gerhard killesreiter commented@ivanjaros: Please stop to derail this issue.
Comment #34
mgiffordI recently blogged about this idea generally:
http://openconcept.ca/blog/openconcept/micro-payments-flattr-supporting-...
And ya, it's not about getting enough $$ to pay for serious module development. But maybe it would help make it easier to find the time to review a patch or write a bit of documentation while enjoying a beer provided to you by the Drupal community.
It's about finding other ways for folks to contribute. Also, if you had a module with 10k sites using it, one should be able to use micro payments to fuel at least some crowd-sourced $4.
Comment #35
mgiffordI started this issue #2138397: Highlight Flattr, Paypal or Whatever Opportunities on Issue Pages but it's just one way to accomplish this integration.
Could really use some feedback on that (or code for here) to be able to better integrate contributor recognition.
Flattr, Gittip, whatever. Let's look seriously at diversifying how people are able to get paid doing useful work with Drupal.
Comment #36
Anonymous (not verified) commentedFrankly I'd be making Drupal modules for living if Drupal Association would allow me to purchase a commercial license. But it doesn't so I spend all my time on things that make me money. But I admire that so many people are willing to "donate" their free time.
Comment #37
lizzjoyMoving from redesign as part of component list cleanup.
Comment #38
Crell commentedWe now have contributor credits on d.o, albeit via a different mechanism.