gratipay / project-review

Review queue for projects applying to be on Gratipay
https://gratipay.com/
18 stars 10 forks source link

sqlalchemy #11

Closed chadwhitacre closed 9 years ago

chadwhitacre commented 9 years ago

https://gratipay.com/sqlalchemy/

chadwhitacre commented 9 years ago

From @zzzeek at https://github.com/gratipay/inside.gratipay.com/issues/234#issuecomment-129045466:

@whit537 re: "it seems that SQLAlchemy has a pretty well-established funding model outside of Gratipay", I'm not really sure what that is based on.

SQLAlchemy's "funding model" is based on:

  1. I work for a salary full time
  2. I pay for all SQLAlchemy hosting expenses directly from personal funds, answer 90% of all mailing list issues, write 95% of all code, do 100% of all releases, bug triage, web site maintenance, etc.

and...that's it! There are almost entirely no lines of code in SQLAlchemy that were paid for by anyone, I can point you to the two things that were paid: the original version of the versioning example was paid for, and a transaction replay extension which has never been released was paid for. Everything else you see in SQLAlchemy, code, docs, examples, bugfixes, tests was written for free.

Now to be fair, my current employer is a large open source company, so as of the past year, I finally can spend a small portion of my time working on SQLAlchemy and Alembic issues as part of my job. But I still have to run and fund the project entirely myself.

I'm very excited for the moment by a new Bountysource platform that offers recurring payments, as open source projects like SQLAlchemy IMO deserve to be allowed to receive monthly funding from supportive users without passing through arcane ideological hoops.

mattbk commented 9 years ago

Looks good to me. There is a guide for getting involved at http://www.sqlalchemy.org/develop.html.

chadwhitacre commented 9 years ago

More comments from https://github.com/gratipay/inside.gratipay.com/issues/234 for context:

@rohitpaulk:

How Revenue Is Shared Contributors are paid directly via the customers they support on a contract or permanent basis.

What about Gratipay revenue?

@webmaven:

SQLAlchemy is an interesting case. It is an open source project, whose development has been driven greatly by for-profit consulting (by many parties) to add enhancements. It isn't really structured to share donations among voluntary contributors from it's community (which is largely steered towards bug reporting and answering Qs on the mailing list and IRC channel), and I think the answer here indicates that Authors are generally assumed to be contributing patches that solve a problem for themselves (or for their clients). I could be wrong, but that seems to mean that all donations via PayPal are currently going directly to @zzzeek.

me:

@zzzeek Echoing @webmaven's comments above at #234 (comment), it seems that SQLAlchemy has a pretty well-established funding model outside of Gratipay, and the question for us here is how to model or adapt that for SQLAlchemy's presence on Gratipay. Both the revenue model and revenue sharing sections describe activity out-of-band from Gratipay's perspective. What about revenue generation and sharing on Gratipay?

chadwhitacre commented 9 years ago

I'm very excited for the moment by a new Bountysource platform that offers recurring payments, as open source projects like SQLAlchemy IMO deserve to be allowed to receive monthly funding from supportive users without passing through arcane ideological hoops.

@zeek Okay. This makes it sound like you're no longer interested in using Gratipay, so that the best thing to do would be to rejectclose your Team application.

Objections, anyone?

mattbk commented 9 years ago

There's nothing requiring revenue-sharing through Gratipay in the terms, so why is that being used as criteria for rejection? There isn't even a mechanism for this because payroll is still broken.

It's kind of ridiculous that @zzzeek has been waiting over a month for a decision on his application. This indicates to me that the criteria for acceptance or rejection are unclear.

chadwhitacre commented 9 years ago

It's kind of ridiculous that @zzzeek has been waiting over a month for a decision on his application.

We were waiting to hear back from him. He didn't address any of our comments until last week.

There's nothing requiring revenue-sharing through Gratipay in the terms, so why is that being used as criteria for rejection?

Is it? I interpreted @zzzeek's comment as a withdrawal of his application, no?

zzzeek commented 9 years ago

i don't really understand why gratipay need have such a complex model. OSS developers want to receive monthly contributions for their work. We sign up, people can send us money. Paypal, Flattr, Patreon, and endless other services exist that let people give money to other people. OSS developers need to get paid for their work, gittip was great for this, but with gratipay, it's just making things hard for us again. that frustrates me and I think it will generally frustrate others as well.

chadwhitacre commented 9 years ago

i don't really understand why gratipay need have such a complex model.

@zzzeek Gratipay needs to have a complex model because we're doing a hard thing.

We're trying to implement open culture as an abstraction atop the existing global legal and financial system.

We're trying to cultivate an economy of gratitude, generosity, and love, by offering voluntary recurring payments and payroll for open work.

First, as to payments, open-source projects lack income for lack of (a) savvy and (b) a culture of voluntary payments, but not for lack of (c) tools. As you point out, there are plenty of tools—PayPal, Flattr, Patreon, Bountysource. But as to savvy: What's your revenue model? Who are your customers, and what's your process for converting them into (voluntarily) paying customers via whatever tool(s) you prefer? This is a business question, not a technology question. The cultural question is related to tooling in that better tools amplify cultural change through their network effects, and also to savvy in that each project's education of their own customers also amplifies the network effect. We had a network effect going for a time with early Gittip, but we lost our momentum because of our individual-centric model and our naive approach to community management.

SQLAlchemy to date has been primarily funded by your salary. This is a time-honored way to fund open-source software, but it's not what Gratipay (at least) is offering. We're offering a new way to fund open-source software which is more akin to a business, where your customers pay you for what you provide. Gratipay's ideal customer is an open company. We're not targeting open-source projects per se, though of course it's possible to run an open-source project as an open company.

The trick is that an open company's customers pay after you provide your product, and all of us who are trying to find a way to make this model work have to find a way to convert customers into voluntarily paying customers. Wikipedia has by far been the most successful so far, and for Gratipay the most successful thing we've done is to add a site-wide call-to-action similar to how Wikipedia does it. SQLAlchemy has a donation link on the site. Is that working? Why or why not? What else could you do? Do you include calls to action with all of your releases? Do you include calls to action in your mailing list signature? Do you have a sales process for reaching out to regular customers? Etc.

If you're comfortable with the status quo for SQLAlchemy as an open-source project, wherein you and other contributors find day jobs that give you more or less flexibility to build SQLAlchemy, then neither Gratipay nor PayPal nor Flattr nor Patreon nor Bountysource have much to offer you. We'll always be at most a "bonus" for you. Gittip may have been a nice bonus for you in particular, but we want to provide more than just a bonus for a lucky few, and we didn't think we could achieve that without the Gratipay 2.0 refactor. Sorry. :-(

If you want to turn SQLAlchemy into a business that is funded more or less entirely by voluntary payments from your customers, then in our view this requires a different mindset, and that's what the "revenue model" question on our Team application is designed to suss out.

Now, I agree that purely from a usability point of view, Gratipay kind of sucks right now, and worse than usual because of all the disruption of the Balanced shutdown. Even apart from that, we lack resources, because we're strongly committed to open culture (so no venture capital) and to our own platform (so no out-of-band grants). That means we're going to watch more Patreons hockeystick while we will grow gradually at best. Maybe Bountysource will completely eat our open-source lunch after all. Since we're barely usable right now, I can't blame you for preferring them to us. I don't know what to do about this except to keep chipping away on PRs. :disappointed:

Second, payments is only half the problem. To turn an open-source project into a full-fledged open company (which is what we're looking for), one has to solve the payroll problem. Benjamin Mako Hill talks about this extensively in "Problems and Strategies in Financing Voluntary Free Software Projects," which we've been picking apart. Here's the key premise:

It's easier for a successful volunteer Free Software project to get money than it is to decide how to spend it.

The team take model that we discovered with Gratipay 1.0 has shown "exciting promise" as an answer to this problem, and that's where we're going to be putting our energy with Gratipay 2.0. It's a pretty hard problem, because on the one hand it gets tangled up in employment law and storing PII, and on the other hand we have to keep it simple enough that we don't lose too much of the simplicity of the loose associations that have historically characterized open-source. The question we're out to answer is whether this equation can balance:

open-source project + money = open company

tl;dr

Gratipay needs to have a complex model because we're doing a hard thing.

chadwhitacre commented 9 years ago

I mean, we're not trying to make Gratipay complex, it's just that making complicated things simple is hard work. :-(

zzzeek commented 9 years ago

Who are your customers, and what's your process for converting them into (voluntarily) paying customers via whatever tool(s) you prefer?

you need to just create a culture where companies that have the cash are expected to do so. look at all the logos on https://us.pycon.org/2015/. Why do they do that? Just so they can get their logo there and be seen as "supporting open source". Yeah, they get a booth for two days too, big whoop. They want their logo up there. This was what I had in mind for Gittip early on. This is what paypal, flattr, and patreon are not doing; marketing themselves towards open source software as the one thing they do. Gittip was the only company doing this.

Wikipedia has by far been the most successful so far, and for Gratipay the most successful thing we've done is to add a site-wide call-to-action similar to how Wikipedia does it.

OK, I guess try to do what they're doing but Wikipedia is an enormous organization and their business is not writing software, it's crowdsourcing content that is universally valuable to virtually every human being on the planet (so the number of people who directly see benefit in their lives from Wikipedia is probably over a billion people). I see little similarity between them and your average open source software project that is valuable to the no more then five-ten thousand other programmers who find it useful.

If you're comfortable with the status quo for SQLAlchemy as an open-source project, wherein you and other contributors find day jobs that give you more or less flexibility to build SQLAlchemy, then neither Gratipay nor PayPal nor Flattr nor Patreon nor Bountysource have much to offer you.

We will see about Bountysource, there's only ten projects listed on their new monthly site and the Neovim project, certainly a tool that's at least half as popular as Wikipedia (by which I mean, WTF is Neovim and do what, 10000 people in the world use it maybe?) is somehow making $3K a month.

We'll always be at most a "bonus" for you.

Well the site was named "Gittip", which I know you had a weird pronunciation with, but most of us thought "tip" meant "gratuity". E.g. a bonus. Seemed like a worthy idea in its own, if not a system of providing full time salaries to people.

If you want to turn SQLAlchemy into a business that is funded more or less entirely by voluntary payments from your customers, then in our view this requires a different mindset, and that's what the "revenue model" question on our Team application is designed to suss out.

OK let me make an important point about this. Of course we all want our OSS projects to be entirely self-sustaining entities that we make our living on. But if gratipay's model is based on, "you need to go full time on your OSS project as a business, and make no money from anywhere else like a dayjob in order to sign up for us", that's not really a reasonable ask. Most higher quality OSS projects are run by older folks who have dayjobs, families, mortgages who can't responsibly just chuck the whole thing to go full blown independent OSS vendor overnight. Most OSS projects are built by people who have day jobs. It seems like the model you're pursuing here has discrimination against people with day jobs built right into it.

It's easier for a successful volunteer Free Software project to get money than it is to decide how to spend it.

That's an absurd statement. I can easily decide how to spend money that is donated to me in return for the many years of work I've put into SQLAlchemy and into helping individual users to get their software working. I would use it to feed my family.

chadwhitacre commented 9 years ago

OK, I guess try to do what they're doing but Wikipedia is an enormous organization and their business is not writing software, it's crowdsourcing content that is universally valuable to virtually every human being on the planet (so the number of people who directly see benefit in their lives from Wikipedia is probably over a billion people).

... and their revenue is ~$50,000,000 / yr, so call it 5¢ per year per customer. If your customer base is 5,000 companies then at 5¢ a pop you'd see $250 a year—an order of magnitude that fits with what was normal on Gittip. I guess you'd need 1000x—$50 per year per customer—to declare victory at $250,000 / yr in revenue. A consumer product like Wikipedia is going to have a lower price point—maybe 1000x lower, maybe not. They're also at the front edge of the curve in terms of the cultural shift to voluntarily paying for stuff, though of course we're not far behind (i.e., there's still plenty of shifting to do :).

Ultimately, no: I don't know if this is going to work or not. But it's fun! So I for one am going to keep chipping away at it. :-)

But if gratipay's model is based on, "you need to go full time on your OSS project as a business, and make no money from anywhere else like a dayjob in order to sign up for us", that's not really a reasonable ask.

I sure hope it's not, because ...

Most higher quality OSS projects are run by older folks who have dayjobs, families, mortgages who can't responsibly just chuck the whole thing to go full blown independent OSS vendor overnight. Most OSS projects are built by people who have day jobs.

I'm one of these folks. I've dropped back to half-time on Gratipay. In fact, nobody working on Gratipay has gotten paid at all from Gratipay since the Gratipocalypse three months ago. Most of Gratipay's income (plus our reserves and some of my personal cash) has gone to our lawyer. Yet we're more active now than before. Gratipay is fun and awesome and we're going to keep trying to get it off the ground. :airplane:

There's no requirement that you can only use Gratipay to fund a project, but the goal with Gratipay 2.0 is to build viable open businesses. That's not a reality for any of the 61 approved teams on Gratipay right now—we're only moving $1,400 altogether (~=$6,000/mo)—but if viability isn't at least the goal then we're not on the same page.

Clearly, viability is your goal, so I think we're probably actually on the same page. :-)

I would use it to feed my family.

Sure. All of our teams/projects are currently so far below the viability level that it can seem like premature optimization to think about when we're not. But I think it's :chicken:-and-egg, because in order to get there together we need to collectively change our mindset: We are building viable open businesses. We are building viable open businesses. We are building viable open businesses. That's a new and hard thing to do! Let's dress for success! :dancer: :shipit:

chadwhitacre commented 9 years ago

@zzzeek By all means, try out Bountysource. They're probably about to steal our lunch, so you may as well go with the winner. :) But if you do still want to give Gratipay another shot, then I propose the following changes to the SQLAlchemy team page:

Revenue Model

Right now our funding comes from personal investment from core contributors. We want SQLAlchemy to be entirely sustained by voluntary payments from the many, many companies that depend on our software. We have a "Donate" button on our website and we remind people to contribute on Twitter.

How Revenue is Shared

Right now we have no revenue to share. Once the core developer is able to make a living from SQLAlchemy revenue we will share additional revenue with contributors.

I'm happy to make these changes for you since, as discussed, we suck. Waddya say? :)

zzzeek commented 9 years ago

@whit537 those changes sound great, change away :).

chadwhitacre commented 9 years ago

Done and approved! Welcome aboard Gratipay 2.0, @zzzeek! :dancer:

chadwhitacre commented 9 years ago

@zzzeek And thank you. :-)

mattbk commented 9 years ago

🐢

On August 12, 2015 9:42:57 PM CDT, Chad Whitacre notifications@github.com wrote:

@zzzeek And thank you. :-)


Reply to this email directly or view it on GitHub: https://github.com/gratipay/applications/issues/11#issuecomment-130511519

Sent from a phone that, although intelligent, is not street smart.

chadwhitacre commented 9 years ago

Hey @zzzeek, one last thing: you applied for the new team before we were requiring a PayPal account (see https://github.com/gratipay/gratipay.com/issues/3567), which means we have no way to get you your money, which means that we'll start processing payments for you again once you link your PayPal on your Gratipay settings page. Does PayPal work for you?

zzzeek commented 9 years ago

paypal is great. you're able to process payments now?

chadwhitacre commented 9 years ago

paypal is great.

Cool.

you're able to process payments now?

Not sure exactly what you're asking. In general, we've been processing payments again since May 21, but only for users who re-sign up using the team application. I had hoped to process payments for SQLAlchemy during today's payday, but we didn't because you don't have a PayPal linked (along with six out of 69 others, it turns out).

Are you asking whether we are processing payments now at all? Or specifically whether we can try to squeeze you in for this week rather than waiting until next week to get you back on track?

chadwhitacre commented 9 years ago

we didn't because you don't have a PayPal linked

... and since 2.0 we don't bring money in unless we have a way to send it out again. We had to drop ACH bank payouts when Balanced went under, so now we just offer PayPal. Once you link your PayPal address on your settings page we will turn your 169 incoming payments back on. :-)

zzzeek commented 9 years ago

OK, that is done

chadwhitacre commented 9 years ago

Awesome, thank you. I'll keep an eye out on Thursday to make sure payments go through ...