The Social Contract of Open Source | Gavin D. Howard

This is a very good case of why there needs to be a license that strongly encourages contributions back that is negotiable.

Something that gives leverage to maintainers when it’s clear that a company is not upholding their end of the social contract.

It is one of the reasons I started to go harder on finding a license that would allow this.

1 Like

It’s hard not to talk about Marak. But there’s so much going on there, relevant, irrelevant, and indeterminately/possibly relevant. On the software side, he’s become a Rorschach test. Which I hate to say, because Marak is actually a person, and evidently going through some heavy personal shit right now.

I’ve generally defended Marak’s moves on faker.js in comments online. But here I feel it’s important to account for the fact that—leaving Marak the specific, complicated man out of it from here—a person maintaining a popular npm package almost certainly knows what the consequences of a while(true) patch release will be. It’s on users to vet their deps or accept the consequences of not vetting them. But in looking at whether a maintainer did wrong, we can’t ignore what they know about the users and the way the software world works. It’s possible both that a maintainer deserves moral “you done bad” and that users deserve a stern “you should have seen this coming”. Because the maintainer also should have seen it coming.

The point on social contracts going both ways resonated with me. But I’m not sure how the high sounding gloss of “social contract” really helps here. Fundamentally, it all washes out into a discussion of expectations, real and justified.

I see and honor the claim that maintainers’ expectations of contribution, of whatever sort, ought to be morally recognized. But I don’t think that expectation can be held up as reasonable, given the practical reality. Maintainers ought to be able to expect support from their users, but anyone actually expecting such support these days is likely to be disappointed. No claiming surprise there, unless you’re really truly new to this open thing, haven’t spent any time even reading around about it, or haven’t been personally warned.

“Pay the maintainers what they are worth to you” is a nice, straight invocation of value pricing. But it will be very easy to ignore for anyone at a company in a potentially paying situation, for reasons I tried to sketch in a blog post on “payability”.