Follow Jeff Sayre on Twitter

Do You Support BuddyPress Privacy?

By

Plugin Funding Progress

In a recent post, I asked for ideas on how WordPress ecosytem developers can earn a living doing what they love to do—coding great-quality plugins for WordPress, BuddyPress, and bbPress. This post is my attempt to try the time–honored (but more than likely ineffective) request–for–donation approach for my BuddyPress Privacy Component.

Please Note: The new BuddyPress Privacy Component which will work with BP 1.2.7 is not yet available. The below PayPal button is for donation to support development. It is not a paywall that provides access to a download link for the Privacy Component. All of my WordPress and BuddyPress plugins to date are GPLed and are freely available on the WordPress Plugin Repository. Once the updated-version of the BuddyPress Privacy Component is ready, I will make it available in the same manner. Only donate if you want to provide development support.

But, I’m going to go about this in a slightly different way. This approach is a serious attempt at doing things differently. I hope it does not provoke the ire of my readers.

How is my approach going to be different? Well, I’m going to be upfront and honest about the time commitment on my part to code, update, and support my BuddyPress Privacy Component. Then, I’m going to appeal to your sensibilities. If that doesn’t work, I’m then going to leverage your needs!

Please click the first link above and read that, if you have not already. Then, come back to this post and continue reading.

First a Caveat

Please be advised that the approach I’m about to detail will be controversial. This is my attempt at one possible solution to the question posed in the first link above. It is an experiment at best.

Do I think that this approach will be warmly received? No. Do I think that it will be successful? No.

But perhaps it will stir up healthy conversation and some tangible solutions.

The Ever-Changing BuddyPress Landscape

BuddyPress version 1.2 is fast approaching its public release. However, the underlying codebase has undergone major code refactoring and even significant changes in functionality. So much has changed that it will require a significant amount of time to refactor my Privacy Component codebase to function properly in the newly-overhauled BP platform.

I’m not complaining about the changes. I’m just stating a fact. I believe that BP version 1.2 will be superior to previous versions.

I’ve had discussions with a few other BuddyPress plugin developers who wonder if we’ll see similar codebase changes in future versions of the BuddyPress platform. At this stage, we have to assume that this is a real possibility. Therefore, it is only wise to plan accordingly, to assume that with each major new release, that parts of our plugins may require significant TLC. But again, when the dust settles, version 1.3 of BuddyPress will be superior to previous versions.

It’s Just Time, Right?

I currently estimate that it will take at least 30 to 40 hours of code refactoring and functional code changes to bring the current version of my BuddyPress Privacy Component up to working order for BP v1.2. Of course, not all of this time is for coding. A noticeable amount of this time is studying the changes to the BP codebase and figuring out how key object arrays, actions, and filters have changed. When version 1.3 comes out later this year, it may require a similar amount of effort. This estimate does not even take into account the incremental versions (1.2.x, 1.3.x) that could require fixes here and there. But, leaving the incremental version changes out of the equation, I estimate that this phase of the project will require between 60 and 80 hours of work in 2010.

Along with updating the plugin, support is another time sponge. I estimate that once my plugin hits the mainstream, that I could be looking at at least 5-10 hours a week for support requests during the first two weeks of a version release and then 10 hours a month until the next version is released. With two major BP privacy plugin versions assumed to be released in 2010, that equates to an estimated total of 100-140 support hours in 2010.

Finally, there is at least one big, missing piece of the privacy puzzle—group privacy filtering. Until development of BP v1.2 is frozen, I will not be able to provide an accurate estimate of how many hours it will take to code a full-featured suite of group privacy filters. But, I do know that there is talk of possible, significant changes to the groups component in version 1.3. So, once again, this is my best guesstimate. I’m assuming roughly 80 hours of coding to bring to fruition group privacy filtering.

What does this all add up to? The total estimated time required in 2010 to upgrade, maintain, augment, and support my BuddyPress Privacy Component is 240-300 hours. At my standard, weekly work schedule, that is roughly 4 weeks of my time!

This is more than likely an underestimate of the amount of time that will be required, but I’m using that figure to help me determine a realistic financial support request. Also, it does not include the hundreds of hours already invested in the current version.

An Appeal to Your Sensibilities

Now, of course I cannot possibly donate four weeks of my time on this plugin or any of my other not–yet–released BuddyPress plugins. Can you donate four weeks of your time for anything? Would you give up your vacation time (and then some) to provide free software programming and consulting services?

My goal is to recoup some of the time I’ve already put into developing this plugin, to fund the current and future upgrades and enhancements to this plugin over the course of this year, and to cover some of the support time I will inevitably be requested to provide.

Supporting Development, Developing Support

How is my donate button different than others? Well, it is not a donate button. It is a support this project button. It’s a request for action, an opportunity for you to show your support by buying into the project. If there is not sufficient support, then the project will be discontinued.

Without sufficient financial support, I cannot continue to develop this, or any other plugin. I need to have a reasonable cash flow. I have to contribute to the support of my family.

Based on my above estimates of the number of hours that I will be required to put into my BuddyPress Privacy Component in 2010, I’ve set a goal of $9,000. That adds up to an hourly rate of between $30 and $37.50. This, in itself, is a greatly reduced hourly rate from my previous consulting days. That is okay. I’ll consider the difference as my continued donation to the cause.

What Happens in 2011?

This request for financial support is only for 2010. So, you rightfully may ask, what will happen when 2011 rolls around?

By then, privacy in some form or other should be a core BuddyPress component. It will thus be maintained by the core development team—and I’d be willing to help them maintain it as well.

Of course, it’s possible (but I think unlikely), that privacy will become a core feature of BuddyPress this year. If it does, I very much doubt that it will be the fined grained, fully-featured privacy suite that I offer in my plugin. But Andy and JJJ are very clever guys. So, you never know!

What Happens if You Don’t Raise the Entire Amount?

Since PayPal allows for refunds to be sent within 60 days of receiving a payment, I plan to hold all proceeds in my PayPal account. In 58 days from the date on this post, I will assess the results. If the goal has not been met, I will decide if I’m willing (and able) to provide the entire year’s worth of work discussed above for the amount raised. If I decide to proceed, I’ll withdraw the funds from my PayPal account. If I decide not to proceed, I’ll issue a refund through PayPal.

So, on Monday, March 1, 2010, the final decision will be made.

BuddyPress Privacy and BP Version 1.2

Just to allay any fears, I have already committed to bringing my privacy component up to code to work under BuddyPress version 1.2. That will happen no matter how this little experiment turns out. The real issue is what happens from that point.

Wait, Open Source is Supposed to be Free

Most people expect software to be free these days, especially with Open Source projects. But the spirit of Open Source is not providing free (as in no cost) software. It is in providing freedoms in how you use the software. These two pages on Gnu’s website–the maintainers of the GNU GPL license which WordPress is licensed under–explain it very well:

So, although it is customary in the WordPress ecosystem for plugin developers to offer their work for no cost, it is not what is intended by the GPL, it is not what Open Source is truly about.

Has the misguided assumption about free (as in cost) software become too ingrained in our community? Whereas designers who offer GPLed–premium themes seem to be accepted into the community without issue, developers who offer GPLed–premium plugins are often treated differently. There should not be a double standard. Both designers and developers should have the right to earn a living from providing great-quality free software.

My Plugins will Always Be Free

I believe in the free software movement, in the spirit of open source. I will always freely provide my plugins to the greater community. I’m truly not looking to sell my code. I am just looking for an acceptable vehicle (besides the consulting route) that provides some financial support so that I can continue offering high-quality (I hope!) plugins.

An Appeal to Your Needs

Now, I’m in no way intending to hold the BuddyPress community hostage. I’m trying to see if this idea will work.

Is privacy something that you think is important in BuddyPress? Is privacy filtering for your members’ data something that you need for your BuddyPress-based community?

If you have read this far, and have not unfriended me over at BP.org or unfollowed me on Twitter, then I am amazed! Actually, it does not surprise me. I assume that you agree that Privacy is of paramount import in BuddyPress, in any social network.

If privacy is something you value in BuddyPress, then I ask that you please help support my efforts. Tweet about this post (you can use the Tweet This! button on top), blog about my post, draw attention to my efforts in other ways, and finally, put a few dollars into the project’s coffers. I’ll then do all the heavy lifting!

Thank you!

The bar chart below and at top will update as support rolls in. The question is, will it roll in at all? If not, what are my options?

Plugin Funding Progress

Article Comments

  1. Andrea_r says:

    Added tip: any contributors get to test the plugin before pre-release. ;)

  2. Hi Jeff,

    I’ve read your post with interest and I certainly appreciate the time and effort you’ve put into your privacy component so far. Like I told you before this plugin is crucial to my site, and I think to almost any site, and I certainly understand what you’re trying to do here. I recently created this topic on the BP forums about donations: http://buddypress.org/forums/topic/donations-on-bporg-what-do-you-think which kinda touches the same topic; the somewhat strange approach when it comes to rewarding plugin developers for their work. I personally think that premium themes and plugins (with premium I mean full featured, well supported and professionally coded) should have a price tag on it because in the end it would mean progress for the BuddyPress platform as a whole.

    That being said I think your approach is too controversial and “unreliable” for a regular BuddyPress user to support. I’ll try to explain myself.

    Like I said before I NEED this component to work on my site but I see that you need 9000 Dollars make sure everything remains supported and developed. I could decide to spend some of my very limited budget and donate it to you; let’s say 1000 dollars. This would be a big chunk of my money which I just invested into something that’s still “up in the air”. Basically I’m putting the faith of my project in the hands of you; the developer. As you know this means a big risk for the entire project, and it would be a much safer bet to use your already released beta Privacy Component and ask my programmer to work on it. It might not get the same results, and I would rather let you do it (morally and quality wise it would feel better) but I simply can not take the risk! So even if I wanted to support this project fully I would need to think twice about how exactly it would fit in with my project, and calculate the risks of cancellation of your plugin.

    So what if you would try something different and said:

    “If I receive 3000 Dollars before March 2010 I’ll make sure the plugin is fully 1.3 compatible and well supported in March 2010. If I receive less then that amount I will provide “big donators” with the plugin and they can use it for their project, but it will not be released/supported for the public until I reach $3000 in donations”

    That would give potential big supporters a reason to invest in your plugin without having to take a big risk. If I knew I would get the plugin and support for $250 I would transfer you the donation asap! Right now I feel like it’s to big of a risk within the time frame of my project!

    As a final note I think that BP.org needs to get some updates which allows for group creation of plugins. Andy mentioned this on the forums about the subject:

    “Perhaps when this site is updated to 1.2 (after release) and plugin developers can create groups for their plugins, we can attach a paypal donate link. That way each plugin developer(s) will get their own group, activity stream, forum, donate link and perhaps some of the other great extensions being released as plugins. ”

    This would help get thing rolling for you I hope.

    Looking forward to your reply Jeff!
    Bowe

    • Jeff Sayre says:

      Bowe-

      Thanks for your thoughts. You are absolutely correct in stating that my approach, my experiment, is not for the faint of heart. It is controversial and I fully expect it will fail.

      What I’m trying to get going is not only the discussion of acceptable funding vehicles for plugin developers, but also the education of those who benefit from developers’ freely-provided work.

      I like your suggested modifications to my brute-force approach. It is a tiered-funding model. I will consider this modified approach.

      The only issue that I see is with the distribution of my plugin to only “big donors.” That is not allowed in the GPL. In essence, that would be making my plugin a proprietary product. This practice, by the way, does seem to be unofficially “allowed” during closed alpha or beta testing. But that is only a temporary situation.

      The only exception is if I am hired by a single entity (an individual, company, or government) who plans to use my plugin for their purposes only. However, if they ever provide it for free or for a fee to anyone else, the GPL then instantly requires that the source code be made available to all. In essence, it becomes a community product. Under the letter of the GPL, they can, of course, distribute it for a price. But, it cannot be distributed to an exclusive group of entities.

      I agree that BP.org can help plugin developers by allowing them to create groups on the site and by allowing the display of a donation link. That would be a nice feature. But, as I link to in my main post above, donations are rarely given to developers.

      Why? Well I believe it is the growing expectation in our community that everything should be freely shared and provided. In the WordPress ecosystem, this expectation transcends the spirit of the GPL, of free software. I appreciate this utopian ideal, but it is not too practical, or possible, for those of us who need to earn a living.

  3. It’s a tough nut to crack, and there are all kinds of factors that make it very hard for BP/WP plugin developer to find a way to earn some money and provide the community with some premium plugins. The limitations/challenges brought up by the GPL license did not cross my mind yet, so thanks for pointing those out.

    If you look at premium theme sellers like WooThemes they have a pretty good construction. They allow single purchases, multiple purchases (with discount), and developer licenses (multiple sites). It’s flexible and attractive and it’s not too confusing for the end user. I could imagine the same for a Premium BuddyPress plugins site.

    Purchases
    – Basic Plugins (free)
    – Premium Plugins (based on basic + extra features and support)
    – Developer licenses (Multiple domains)
    – Subscription (All plugins and support for a specified amount of time)

    Maybe it’s an idea to talk with some other developers in BP and combine forces.. Everyone is used to collaborating and you all share the same goals and ideas. A central place for premium BP plugins could become huge. DJ Paul, Brajesh, Jeff and MrMaz all under the same plugin roof would make me a very very happy BP user! I’m just speculating here but I think it would be awesome and a good and “honest” way to reward the people that are creating the plugins.

    Only thing you need to keep in mind is what Andy pointed out in your other blogpost; Keep certain things free to keep the BP Community healthy.

    At least you’ve established something some good thinking about the subject Jeff!

    PS: I just came up with another cool idea.. I’ll think about it first before posting it, but it could be something cool!

    • scribu says:

      Hello Jeff,

      First time here. These two posts about making a living as a plugin developer were really interesting reads for me.

      @Bowe Frankema: About the WooThemes model, here’s a question from their FAQ:

      Can I use the themes on multiple sites?

      Yes, you can use our themes on unlimited number of domains.

      If they did try to restrict usage to a single domain, they’d be violating the GPL.

    • Symm2112 says:

      Bowe,
      We seem to be following each other from site to site. :)

      I really agree with everything that’s said. Jeff deserves to be compensated for all the time involved in creating and supporting something this useful, but who pays for it?

      The one thing that I hate about the subscription models is that with as fast as BP/WP moves, you have to depend on those updates. In the case of Brajesh’s site for the gallery and the cosmic buddy theme, I gladly paid for it because I don’t think $10/month is too outrageous and i personally like cosmic buddy better than other buddypress themes. I Liked the bp magazine theme from premium.wpmudev.com but I think that asking for $80/month to download the plugins and themes is pretty outrageous. I understand the concept but it just doesn’t seem to work. I understand paying $80 for a theme and getting updates free but if you sign up for 1 month to download the plugins and then have to keep signing up every time there’s an update to bp/wp, you’re basically renting the themes and plugins because I can almost guarantee you that you’re going to break them when you update.

      I don’t mind the subscription but the way I would do it is:

      “X per month for access to premium plugins and themes and access to updates for x months” This way, if you wanted a theme now, you pay x for it and get it but if it gets updates in 2 months because of the new BP, you didn’t waste your money and you’re not having to pay for it again. I can understand not giving access to anything NEW that’s been created, but to force people to pay for updates to something they’ve already bought seems outrageous. Most of the time it’s not like you’re updating just for new features. You’re updating because the new version broke the product. Imagine having to repurchase a new game for your xbox every time Microsoft comes out with a security patch or an update to xbox live.

      • scribu says:

        Related to paying for upgrades:

        Sure, you don’t pay every time when Windows releases a service pack, but you do pay when a new major version comes out (like Windows 7). Same for most other software.

        So I think paying for an upgrade to a new major version of a plugin / theme is legitimate.

        • Symm2112 says:

          Touche,
          I see your point but the difference is that if I buy something right now for buddypress 1.1, when 1.2 comes out, it’s going to break. If I buy it when 1.2 comes out and then wpmu 2.9 comes out, it’s probably going to break.

          Windows gets updated every few years, not every few months. If I could pay one time right now and KNOW that at least what i bought will continue to work for a certain period of time, I would do it. My suggestion would be to use a tiered model for subscription. For instance, you can either pay $49/month for unlimited access to ALL plugins/themes OR you can pay $49 for access to 3 plugins and 1 theme with updates for 6 months. This way, you’ve essentially “donated” to the development of the plugins (which would also be a good way to see what’s popular/self sustaining) so the developer ges some compensation but it doesn’t break the budget of small communities that want to try some software and launch their site. Once you get a plugin working and integrated on your site, you’re not going to want to change it.

  4. super says:

    why is Automattic not buying your plugin and hiring you as a developer into the BP-core-team ? I would vote for you to join the BP-core-team.

  5. Now I hope my +++ will stick!
    swimming upstream with buy-then-try model in a try-then-buy environment

  6. Erich73 says:

    Jeff,

    I would suggest you code the Privacy-Plugin so that it will be working fine with BP1.2
    Once you have finished this plugin, THEN go ahead and charge a fixed amount of money for the plugin (one-time purchase, no monthly fee).

  7. Sascha says:

    Hi all,

    I am fairly new to WordPress and Buddypress and clearly not a developer, but a user, the person that relies on guys like you to pull all this magic off!

    There are soooo many plugins out there, that it is very difficult for me to decide right now, which one I will use and which one is important to my project. That is why I will not be part of your experiment at this stage! The great thing about freely available plug-ins is that with a good idea and some technical understanding you are able to create a project/website regardless of financial constrictions. It enables people on a very limited budget to create something that might create an income stream in the future.

    I definitely intend to donate to every plug-in developer whose plug-in I will use in a commercial context, to hopefully ensure continued support for that developer and the plug-in. I rather do this, than subscribe to NING for instance.

    I hope that everyone who makes money out of using WordPress, Buddypress and any related plug-in will give a fair amount back to the community and enable charities, sportclubs and other users that use your work non-commercially to benefit from all that great work that is happening in the open source community.

  8. qafro says:

    I like the idea below.. Am awaiting this plugin to build my site for public,so I’d buy the plugin with the features I need.
    @Bowe Frankema
    Purchases
    – Basic Plugins (free)
    – Premium Plugins (based on basic + extra features and support)
    – Developer licenses (Multiple domains)
    – Subscription (All plugins and support for a specified amount of time)

Leave a Reply

Share on Twitter
Share on Facebook
Share on FriendFeed
Share on LinkedIn
Share on StumbleUpon
Share on Digg
Share on Delicious
Share on Technorati
Add to Google Bookmarks

Archives