Funding Contributors

On the 22nd of February a discussion began with the the more senior members of the MyPaint project team, whom were no longer actively participating in the project.

The discussion pertained to updating MyPaint’s domain ownership, but sprawled into several topics.

@odysseywestra said:

I also would be interested in inviting you and any of the @mypaint/core team to be admins to help accept or decline transaction requests. Plus I would like some accountability before I feel comfortable to using the funds.

https://opencollective.com/mypaint

@Jehan said:

Hi! I’m happy to participate to the move and to be an admin for MyPaint.

As GIMP maintainer, we are trying to setup our own thing right now, and I won’t likely request any budget myself, but we definitely want MyPaint to evolve and get sustainable. You are important to the ecosystem.

And not only because of libmypaint (which we use in GIMP! :love_letter:), but also because MyPaint itself is a great software which should find a model to continue. :+1:

I just created an account on OpenCollective: Jehan - Open Collective

@odysseywestra said:

@Jehan Thank you volunteering to help me the open collective account and being a true third party to help keep it organize and me accountable. The one thing I need help is creating tiers and be a voice in what we are doing with the funds. Right now it’s mainly being used to cover the costs of the domains and in the future will be used to cover the costs of the community fourms and costs for github if any. If you are okay with helping with that and get a sense on how open collective works and whether you want to use it for GIMP. If you do, I’ll be happy to be part of that collective too.

@Jehan said:

@Jehan Thank you volunteering to help me the open collective account and being a true third party to help keep it organize and me accountable.

@odysseywestra I’m not only a third-party by the way, but even at times a (small time) MyPaint contributor. :wink:

In any case, I’m happy to help. I was a bit sad to see the low (or even near absence of) activity around MyPaint for 2 years. So it’s nice if it can get back.

The one thing I need help is creating tiers

Tiers are things like “Backer” vs. “Sponsor” vs. “Donation” in the current page? If so, my advice (from years of doing crowdfunding myself and having made many of the possible mistakes about it) is to keep it simple. Don’t go and do complicated stuff. Most people are just happy to donate and aren’t there for rewards or complicated process.

So yeah the current tiers seem fine to me. Unless I misunderstood what tiers are on OpenCollective and you were talking about something else.

Right now it’s mainly being used to cover the costs of the domains and in the future will be used to cover the costs of the community fourms and costs for github if any. If you are okay with helping with that

Sure. It’s sad if all the funds do are supporting costs (which should be fairly minimal). I was hoping your goal would have been to be able to fund developers like yourself or any others who would make MyPaint into a great painting application. :slight_smile:

Of course you’d have to develop funding (right now it’s too low for this), but if you tell explicitly people that they can help MyPaint to be developed more actively, I know you can raise more funds than currently (where development has been mostly abandoned for years).

Anyway whatever you decide to do with funds, I’m happy to help with my voice. These days, I’m not sure I can help a lot with code as my hands are very full with GIMP. But helping on the admin side is not a problem (I definitely know the “accountability” problem as I am doing similar process on GIMP and always want to get others to help me by at least voicing their concerns).

how open collective works and whether you want to use it for GIMP. If you do, I’ll be happy to be part of that collective too.

I don’t know more than this how OpenCollective works. As you saw, I created my account just now for you (I have heard of OpenCollective for years but never had to subscribe). Though I’d be happy to discover the internal working with you as we go.

And we don’t use it for GIMP nor plan to (at this point in time at least). We are also working on improving our funding in order to be able to make developer grants and better spend our funds, but by tightening our links with the GNOME Foundation right now.

By the way I’d be happy to discuss with you about our own plans at GIMP if that can help you organize and have ideas. GIMP is clearly in a different situation though, but I also have much more generic knowledge on funding because I studied a lot what others FLOSS projects have been doing and also because of experience with our Libre Art project where we started from scratch.

So yeah basically I can advise, I can give my voice to validate spending (or raise concerns), and also share experience. I was mostly just happy to see that MyPaint project may have been looking for a bit of sustainability and I want to support the project in that.

@aesara said:

Sure. It’s sad if all the funds do are supporting costs (which should be fairly minimal). I was hoping your goal would have been to be able to fund developers like yourself or any others who would make MyPaint into a great painting application. :slight_smile:

@Jehan A better incentive to both get users to pay for MyPaint and get developers fixing MyPaint are bug/feature bounties.

The reason I’m working on MyPaint isn’t because I think I can make money off of it – The amount of money any potential developer could make will end up severely undervaluing their labour.

Rather, I’m developing for MyPaint because I too, want a beautiful open source painting application. So, I will work on features I would like, not necessarily features that MyPaint needs. That’s where something like bounties could come in.

@Jehan said:

@Jehan A better incentive to both get users to pay for MyPaint and get developers fixing MyPaint are bug/feature bounties.

I completely disagree. I think that the bounties system is perverting a lot of the donation system.

Rather, I’m developing for MyPaint because I too, want a beautiful open source painting application. So, I will work on features I would like, not necessarily features that MyPaint needs.

So you use MyPaint. Why would the features you like be different from the ones MyPaint need? With our project, we improved a lot GIMP because we use it too, professionally. I work with an artist who uses it all day long. She also gives university courses with GIMP. And more. We also care about stability enormously and some of the first things we worked on, years ago when we started contributing, were fixing bugs, crashes, etc. The kind of things which a bounty system doesn’t care about. But professionals and hardcore users do actually care about stable software (often more than features, or at least as importantly, because a very featureful software which is unstable is not so useful in the end).
That’s unfortunately the kind of things which bounties don’t account for very much.

The problem with choosing features by bounties has many faces:

  • It’s payment on first result, not payment on work: if MyPaint had a lot of developers some day (which I hope), several could work on the same feature, but only one would get paid. It creates competition and is not sane. And in the end, only one is paid and the others just wasted their efforts.
  • It’s often not paid fair values: I’ve seen a lot of attempts to create bounty platforms across the many years I hang out in FLOSS, and never have I seen one which produced fair bounties on a regular basis. Usually in most systems, best bounties are a few hundred euros/dollars, which should barely pay half a day of work, whereas the bugfix or feature requested would take days or weeks of work (you were talking about devaluing labour!). Some developers who don’t have stable jobs or think “it’s a start” will still try. Yet after a while, they’ll just end up bitter when they realize this start is also the end. And this kind of funding attempt is one of the reasons why many developers leave Free Software for big paychecks in big corporations by saying “there is no funding model in Free Software
  • You don’t reward long-term developers, only people who just come and go between projects to quickly develop bounty fixes then leave immediately after. Sustainability-wise, it doesn’t actually bring anything. Worse! It’s a terrible message to the long-term developers who spent years volunteering and when there is a bit of funds, they are being told that their hard daily work is not worth the quick fix that some newcomer who will never come back did. So it can even harms the project deeper by having these long-term developers leave bitter (in the end, everyone is bitter: the bounty hunter not well paid and the long term developer not paid at all). It also gives no price on maintenance which becomes a thankless job (as though it was worth less than some fancy flashy bounty feature).
  • The quality is often lessened for such bounty fixes: first because — as you say yourself — you are not doing something you love; second because it’s often done by passing-by developers who don’t know well the codebase; third because it’s often done on a rush to be the first to get the bounty. And since you are paid for result, not for quality or maintainable code, bounty hunters don’t care. In the end, it leaves just more work to the actual (unpaid) maintainers who have to clean up, fix sometimes and improve upon quickly hacked-up code.

Now I’m just giving my opinion and if MyPaint project as a whole decided to go this way, it’s their choice. If I am given a voice, I’d vote against this but I am all for community decisions in the end. :slight_smile:

The reason I’m working on MyPaint isn’t because I think I can make money off of it – The amount of money any potential developer could make will end up severely undervaluing their labour.

Sure. Anyway right now, the amount I see on this page, there is clearly nothing of the sort you can do with it. I would not suggest to pay anyone right now (and possibly not in foreseeable future, because I doubt you’d get crazy funds immediately). I was mostly wondering what was the end goal. Maybe all of you have jobs they love and don’t care at all about paid FLOSS development. And all you want is to have a bit of funds for small expenses. Then it’s fine. Just forget everything I said. But if the long goal is that maybe something could be done to pay development (even if it means in several years)…

Now MyPaint can probably increase its funds (not too hard seeing how it was mostly asleep for years). Personally if you had a bit more funds from donation, my suggestion would be absolutely not to use it for “bounties” but for community expenses. Like hardware for long time contributors when needed, meetups of the core team, etc.

That’s what we always did for GIMP. Actually we even did this a bit for MyPaint as we invited one of your (past, I think? As it doesn’t look like @briend is active anymore) maintainer to LGM a few years ago, all expenses paid.

Basically protect your community, the people who make the project what it is. That’s my suggestion as a general rule. :hugs:

Yeah I’ve been a bit ahead of myself anyway because I’m not sure there is much to discuss, for the simple fact that the funds are so low right now.

Anyway I was just happy to see MyPaint revive a bit (at least, I see movement lately!) so my point was just that I’m happy to help (with both my hats: as a contributor with write access myself, and as a third-party — GIMP — who would like to see MyPaint thrive). :hugs:

Welcome back to the forums Jehan, I welcome your experience with a larger project.

I plan to develop MyPaint for at least a year, hopefully leaving it as a project that’s easier than ever for new contributors to pick up, and developing features that build on the project’s strengths to foster interest in the application.

This is very much a “watch and see” kind of area, who knows where this project will go? If it goes anywhere, then having people who’ve been there before is a sure advantage.

I will say when it comes to funds, I will probably shy away from bug bounties and mainly focus on what the project needs to keep it online and easy to contribute too. My only long-term budget would be to get enough to pay for a part-time or full-time developer(s) which Open Collective can help us with.

@Jehan @odysseywestra

I’m making the donations page for our website.

I know that things have got to go a long way before we’ll get serious funding, but if we want to start building up a war chest we need to develop a mutual understanding with financial contributors.

So, what could donations go towards? Right now I’m following your leads and saying paying for infrastructure and (eventually) paying developers and project maintainers would be a good place to start.

1 Like

Yeah infrastructure is obviously the basic thing. But once passed that, I guess that before spending it on developers, you may want to have community expenses.

I guess it depends on projects: some find this important, others not. We found it important so most of our money was going there for many years. This implies gathering developers and handling their expenses (travel, accommodations, etc.). Why some people find this useless is probably that they think that working online only is fine. And it’s true for many people. But for some, actually meeting the others they discuss with, online, brings a whole other level to the concept of development community. I think I would have never stuck around so long and became a GIMP maintainer if we had not met every year at Libre Graphics Meeting with the other devs, whom I consider like friends these days. :hugs:
And reversely the few years without meetup (COVID period) made a bit of a dent in contributions. :cold_sweat:
At times, we even support some contributors of friend projects, such as MyPaint (we funded the trip to LGM to one of your maintainers, a few years ago) because for us, community is that important.

Also counting as community expenses, there could be things like paying for hardware. Typically a big contributor whose computer broke and they need a new one, the project could pay for it. Or if a developer needs a graphics tablet… Or other hardware which may help them contribute. Especially if you don’t have enough funds to pay actual salary, but you still have money for hardware, this is a good in-between. With all a contributor helps, paying a laptop is pocket money, but it’s still appreciable (and not small for individuals who are not necessarily rich).

That’s basically what we do at GIMP’s. And actually paying for developers is our next step, which should happen shortly.

Thanks Jehan, I’ll take this into consideration when making the donations page.

As an aside, I’m a psychology student, I don’t know much about the fancy calculations and algorithms required to keep brushlib maintained, so being able to talk to people who know this stuff better would be helpful. Would it be okay if I keep in touch with the people over at the GIMP project if I have any questions?

We may not know that much of all the details of libmypaint internals because our contributions were mostly in-passing, but sure you may always ask when you need. Maybe we’ll be able to help, maybe not, but we can try.

As a general rule, it’s always OK to “keep in touch” with us. We love working with other projects and for sure, we hope our relationship with MyPaint will be long! MyPaint is a really cool software which deserves to continue forever. :hugs:

Thanks for saying so, what are your primary channels?

I’m mostly on IRC (#gimp at irc.gimp.org), but other than this, I am subscribed to libmypaint tracker anyway so I receive notifications for everything which happens there.