License Zero

gainful open software development

Enterprise Pie growing the pie doesn't guarantee a portion

My friend and colleague Luis Villa had this to say in a blog post about joining a brief in Oracle v. Google II:

The most successful platforms in tech history have often known that the best route to success is to let go of control, and grow the overall platform, knowing that a small piece of a big pie is better than a large piece of a small pie. That takes a bit of faith—you have to believe the pie is going to be bigger.

Open source is perhaps the ultimate expression of this faith—we believe that if we give our code away, we’ll flourish. And so we’ve built Tidelift with this in mind: we think the best way to do well in open source is to offer real value to enterprises, and focus on how we can support that.

There’s faith that something incredible will happen, despite a lack of evidence. For example, faith in the existence of Heaven and Hell. And there’s faith that something incredible will happen, despite ample evidence to the contrary. For example, faith in a boundlessly benevolent supreme protector despite widespread, visible injustice.

Faith that giving as much software away as possible paves the path to greatest success is the latter kind of faith. It’s a prosperity theology with “enterprise” as supreme power. Luis expresses it particularly well, but he’s not the only believer.

Consider those enterprises. Their most successful software platforms aren’t open source, but tightly controlled. Where success is won and lost, their trend is toward more and tighter control, not less.

From locked-down devices to app stores to cloud platforms and brokered marketplaces—the latter including Luis’ Tidelift and my License Zero—companies ask for, and take, the work of others on the most generous terms they can get. But their business plans and business prospects turn on playing ticket booth, middleman, and famous brand, not stepping out of the way.

The largest examples of give-it-all-away open source contribution, from Linux in the old school to orchestration tools in the new—all complement controlled marketplaces, like cloud services markets. Releasing the complements as open source very arguably increases available opportunity. But succeeding on the value of the new, free implementation is as much or more a full-contact sport as competing with other implementations to begin with. Big public companies hit like freight trains, by simple dint of being enormous and holding mindshare, without necessarily trying to crush anyone, or even noticing that’s what they’ve done. But they often preference-rank opportunities the same way as smaller firms. For example, by going after paid hosting first.

Rebuking companies that are suddenly facing closed competition in hosting their own open source, like MongoDB, for insufficient faith in permissivity overlooks their direct criticism. The new license rules, and especially Mongo’s, highlight the hypocrisy of larger companies in promoting release of control over the wares sold in their marketplaces, while staunchly refusing to release control over those markets. Mongo’s Server Side Public License can use copyleft terms to implement what is essentially a noncompete, not because Mongo has black magic legal powers, but because we all know the cloud providers won’t readily release code for their hosted MongoDB offerings, to say nothing of relinquishing control. SSPL wouldn’t feel discriminatory if there were any reasonable expectation that Amazon might actually release its code for hosting Mongo under the same terms as Mongo.

Admittedly, part of the drive to be a one-and-only market facilitator is structural. Projects to get open source developers paid have to process payments. Taking one payment and splitting it among many unaffiliated developers allows these efforts to scale. One npm install brings in tons of developers’ work, and we want one monthly subscription or one licensezero buy command to pay them all, too. But one-to-many payment processing entails either holding others’ money, like a bank, or using a single, third-party payment processor, like Stripe Connect, that can do so for you.

Neither Tidelift nor License Zero has gone as far as it could. Compare Liberapay, which has formed as a not-for-profit and committed to subsisting on donations given through its own platform. Liberapay doesn’t try to solve the problem of funding multiple developers in a single transaction. It still relies on third-party payment processors, PayPal and Stripe, for broad jurisdiction support. Cue arguments for Bitcoin and other unregulated, noncompliant, decentralized payment methods, despite those and other problems. Cue arguments that a practical solution to developer funding that gets beyond donations requires investment of many kinds, and that donations won’t cut it for a platform developers any better than for other developers. As of this writing, Liberapay receives 20 EUR a week from 62 patrons. The development team gets about 170 EUR from 372 patrons.

So what is to be done? The problem of creating an effective solution for paying open source developers remains a hard problem, on many levels. But those efforts shouldn’t obscure, or tint, the lessons companies and developers ought to learn from the marketplace. To put it succinctly:

Giving software away creates lots of paying opportunity. On a personal level, it can earn you a baseline of marketable reputation and experience. But unless you withhold strategically, being the one who gave the software away is no guarantee that you’ll be able to compete for other opportunities, or that any opportunity at all will be left for you, once competitors have caught on. Staying busy maintaining and improving that software actually reduces the kinds of opportunity you can take, and the extent you can compete for it, since you have only so much time, and you’re spending some on unpaid work.

None of this is to say that permissive licensing and withholding nothing can’t make sense beyond your first few open source contributions. License Zero addresses this directly, by allowing developers to offer to relicense their work onto permissive terms for a fee. That kind of offer requires no faith that enterprises will reward independent developers for failing to follow their example. When you relicense onto permissive terms through L0, you’re not expecting to get paid. You’ve already been paid, and been paid a price you set yourself.