Valuing support for CiviCRM
There are 2 primary ways to support CiviCRM: in-kind contributions and financial support. There is a third way that the project is supported that we may also discuss below: earned income generated by the core team itself.
Over the past several years, we’ve tried to promote both through programs such as the partner program, make it happen campaigns, and the contributor log. At a certain point we started to equate the two in order to influence the sorting of the “experts” listing at https://civicrm.org/experts.
The result has been interesting. This issue is intended to reflect on the challenges of “valuing” support in order to provide a path forward.
To be clear, this issue is not going to address the motives behind supporting CiviCRM, rather it will focus on how it’s done currently and what the underlying intentions are for doing it the way we currently do.
Let’s start with the basics: financial support given directly to the Core Team in order to support the general operations of the Core Team. As an end user, provider, or individual, you can donate to the Core Team. You receive a thank you and some recognition, and that’s about it.
Some supporters, such as CiviCRM partners, give partner dues to support the Core Team and receive recognition by being listed on the experts listing. The amount given (used to) affects the sorting of the list. You give more, you rank higher. Likewise, if you also give the random donation, that too affects your ranking.
You could also sponsor an event. As a non-partner, you receive recognition over the course of the event. As a partner, you receive recognition over the course of the event AND the amount donated affects the sorting of the experts listing. Again, you give partner dues and now event sponsorship… the amount you give moves you up the list.
Anybody can give to a make it happen campaign. Let’s assume that this campaign is Form Builder and it’s being built by the Core Team. So, you give and the financial support comes directly to the Core Team earmarked for Form Builder. As an individual or end user or a non-partner, you get a thank you and recognition on the Form Builder campaign page. As a partner, you get recognition on the Form Builder page and, once again, your donation influences your position on the experts listing.
All of this is pretty straightforward, even if it’s not perfectly fair. It’s easy to understand and consistent. But, now let’s get into more complex scenarios.
Imagine you are a partner and you run a make it happen campaign for an important extension that is used throughout the community. The MIH campaign completes and the money flows through CiviCRM to you so that you can build the extension. For the sake of simplicity, suppose that the donation came from one source, another CiviCRM partner. Do they receive the same benefit as if the money came directly to the Core Team (i.e. a boost to their listing)? What if the extension isn’t widely used? Should they still receive a benefit?
Imagine that you are a CiviCRM partner and you have a large client that is funding a lot of bug fixes. You want a vacation, so you contract the Core Team to fix all these bugs for a fee. They’re in core after all. So, in essence, you’re paying the Core Team to fix bugs that benefit everybody. Or is your client? Do you get the benefit to your listing? Or does the client get recognition somehow?
Imagine that you’re a CiviCRM partner and you aren’t a developer. You land a job to develop an extension and you contract with another CiviCRM partner to build the extension. It’s a new extension that could be valuable, but who knows? Maybe it will be well adopted, maybe not. No money comes into the Core Team whatsoever. Do you get credit for the amount you pay to the actual extension developer?
Take all off of these examples, and more, and now consider that different developers charge/make different amounts of money and/or are subject to different rates as a result of the cost of labor in their region or due to exchange rates. How do we account for what is actually paid without incurring serious overhead?
Now let’s factor in in-kind support. It’s about to get really painful, but bear with me.
Back to the basics: you fix a bug in CiviCRM or respond to a question on Stack Exchange without any expectation of compensation or material benefit to you. It takes you one hour. You log your time.
If you’re not a consistent contributor and you’re anybody other than a CiviCRM partner, you might get a thank you and some sort of recognition. You might not. If you’re a consistent contributor or a partner and you log your time, that hour of time will be equated in dollar terms and will, therefore, influence your ranking on the experts listing.
That seems reasonable. You give time. Time is money. So, it’s kinda like you’re giving money. And, as we’ve seen, the more money you give to the project, the more it influences your position on the experts listing.
Imagine though that you develop a new extension completely on your own dime and roll it out to the community. It’s broadly useful, but not widely adopted. Can you claim the time you spent as a contribution? Or do you have to wait until it’s more widely adopted? What if other extensions which are much more edge-case have greater adoption? Can they claim their time even though their extension really only will ever benefit a very small number of potential CiviCRM users?
Suppose you employ several developers and you allocate 10 hours a month toward fixing bugs in core. Of course, your developers don’t work for free… you have to pay them. Can they claim contributor hours? Can you, as their employer? What if they’re not employees? What if they’re other partners? Or can you only claim what you paid as a financial contribution?
Suppose you fix a bug that benefits your client. You have a fixed priced contract with them each month, regardless of how many fixes you address. This latest one has broad impact. Can you claim it as a contribution even though you received compensation, though not specifically for the fix?
Let’s put it together…
Suppose your pay to attend the NTEN conference on behalf of CiviCRM. You and an employee staff the booth for 8 hours and, along the way, manage to secure one new client that wants you to build a new extension that, ultimately, you have to have another partner build. Can you include what you pay to be at NTEN as a donation to CiviCRM? Can you include your time as a contribution to CiviCRM? Can you include your staff’s time? Can you include what you pay to the other partner that’s building the extension as a financial donation?
This is just one example, and as ridiculous as it sounds, it’s more common than you might think.
Why are we asking anyway?
- The experts listing matters. It is a significant driver of business. And, like Google search results, being at the top is valuable. So;
- Ranking financial support seems like a reasonable way to promote those that give more. But, giving can come in the form of in-kind contributions. And;
- Valuing contributions, or contributors, seems like not only an important thing, but the right thing to do. Naturally, we want contributors to grow and thrive and, you guessed it, become partners. Because;
- The Core Team wants to grow its budget in order to bring new developments, like Form Builder, APIv4, and others online. So that;
- CiviCRM continues to be a powerful, open source CRM that any organization, regardless of size, budget or focus can have access to.
So, the question we have is, how do we improve the way we recognize and value all forms of support to CiviCRM such that the project is not only sustainable, but that is thrives and ultimately achieves its mission?