Sure but the real problem are the companies that consume, not just the developers. A lot of developers would love to contribute back, but companies put schedule pressures and have limited interest in contributing back.
Companies actually want a kind of vendor relationship, but they don’t want to pay any money.
Devs want something dev focused, and open source is usually code for being dev focused.
I don’t think either truly wants actual “open source”
So, like compulsory jury duty and the draft, this would be directly against the 13th Amendment.
Then again, according to the Supreme Court, even forced, unpaid road duty (chain gangs anyone?) is an inherent power of the government, so maybe this is ok.
> In view of ancient usage and the unanimity of judicial opinion, it must be taken as settled that, unless restrained by some constitutional limitation, a state has inherent power to require every able-bodied man within its jurisdiction to labor for a reasonable time on public roads near his residence without direct compensation.
(spoiler alert: according to the ruling, the US Constitution, including Amendments, does not limit this power; and this is in fact cited as justification for upholding the draft)
While I do agree that every dev should contribute to open source at least once in their lives, I fear more and more will try to push poorly generated AI slop and make everyone’s jobs harder
I don't think dropping a random software developer into a random project to do their open source duty would end well
It takes a _lot_ of time for someone to meaningfully contribute to a project, and would just result in maintainers having the overhead of training that many new people on a project
I'd much rather figure out a way to finance those open source projects in a sustainable way where those projects can decide to hire full time employees.
Completely agree. I'd rather have the people that want to be there, to be involved.
An alternative take I'd rather see is "Employers guarantee 8 hours per week of time to work on open-source projects, including ones I start myself". Employer gets no IP stake in the project, and it's done for public good + a means to allow employees to upskill.
Otherwise it just becomes a case of another grindset. You're expected to do more, with the limited free time you have.
Hard disagree! Making open source contributions mandatory for those who lack genuine interest or motivation would lead to lower quality contributions ultimately increasing the workload for maintainers. Many maintainers already face burnout. This will only make it worse.
On another note: There's very little substance in this post. It comes across as a lazy, shallow, "hot" take! Which is fine. It's your blog and you should write however you like on your blog. But is this really a good fit for HN? It's frustrating to see shallow posts with no substance like this rise to the top but higher-effort go unnoticed.
So you think that, for example, every single person who uses LibreOffice is morally obligated to contribute code to the project? Even though the vast majority of them don't even know how to code?
I get that the author is making a "modest proposal" here, but even so it's kind of antithetical to at least my own feelings about open source. If I release something as open source, the whole point is my users owe me nothing. They have limited obligations that are explicitly spelled out in the license and that's it.
As an open-source developer... no. No, no, no, no.
The toil of dealing with low-quality, half-assed first-time contributions is often higher than the effort of implementing the same features or bug fixes from scratch. And that's if you agree the features or fixes are useful in the first place.
I've already seen college students forced by their teachers to contribute to open-source projects and it's almost always just sad. The patches don't follow your project's practices, they usually have an array of subtle bugs to diagnose... and on top of that, you're dealing with a person who probably doesn't want constructive feedback in the first place. They just want a good grade on their assignment (or, in this proposal, want you to sign off the completion of their "OSS duty").
If you compel 100x as many people to submit half-assed contributions, you'll just drown in noise. Nothing good will be accomplished this way.
Totally agree, I’ve seen people put it as a sort of badge of honor that they are contributing to open source, but are clearly not passionate about the projects that they are contributing to and not ashamed of using AI to do so. Overall open source projects suffer more as a consequence of these low grade contributions, and it sucks for the people reviewing them
Governments should set aside some pool of money for distributing to people maintaining critical projects. We have so much surplus and some portion of it should be allocated to such projects as digital infrastructure. Google did that with Summer of Code. Shareholder value can go and take a jump into a nearest lake.
The problem being that as a maintainer, I refuse most contributions. Not only because they are low-quality (it happens), but also because they are often out of scope, or I just disagree with the direction. It's my project, I maintain it, I choose what goes in it. But you're free to fork it with your changes, that's exactly why I made it open source. If you make an interesting fork, I may totally import some or all of your changes! And if you first ask in an issue, I may offer you to open a PR directly.
I almost always use copyleft licences: it makes it mandatory to share the modified sources with the user, who can then upstream them.
Many times in companies, if I need to patch a permissive dependency, my company will not allow me to spend time upstreaming my patch. Whereas if it is a copyleft licence, I can tell my manager that I am obligated to open source my changes (which is not correct, but managers usually don't know that, don't care so much about the nuance, and anyway it's a win if we follow the copyleft conditions to the letter).
I'd argue all merge requests matter, not only those that were accepted upstream. Sure, only those accepted generate value upstream, but there is a lot of byproduct from a rejected MR that still has value, either as a reference for further discussions or as resource for forks.
I never comment on this site and I use an app to view it that doesn’t even have sign in capabilities. But I disagree with this nonsense so much that I had to go login just to vocalise that.
People should have choice and freedom in what they want to spend their time doing. I respect the open source community and some day I’d love to find the time to contribute at my own will, not because I’m called to.
51 comments
[ 2.7 ms ] story [ 59.2 ms ] threadCompanies actually want a kind of vendor relationship, but they don’t want to pay any money.
Devs want something dev focused, and open source is usually code for being dev focused.
I don’t think either truly wants actual “open source”
I constantly use FOSS for the commercial gain... Of someone who isn't me.
Then again, according to the Supreme Court, even forced, unpaid road duty (chain gangs anyone?) is an inherent power of the government, so maybe this is ok.
> In view of ancient usage and the unanimity of judicial opinion, it must be taken as settled that, unless restrained by some constitutional limitation, a state has inherent power to require every able-bodied man within its jurisdiction to labor for a reasonable time on public roads near his residence without direct compensation.
https://supreme.justia.com/cases/federal/us/240/328/
(spoiler alert: according to the ruling, the US Constitution, including Amendments, does not limit this power; and this is in fact cited as justification for upholding the draft)
It takes a _lot_ of time for someone to meaningfully contribute to a project, and would just result in maintainers having the overhead of training that many new people on a project
I'd much rather figure out a way to finance those open source projects in a sustainable way where those projects can decide to hire full time employees.
An alternative take I'd rather see is "Employers guarantee 8 hours per week of time to work on open-source projects, including ones I start myself". Employer gets no IP stake in the project, and it's done for public good + a means to allow employees to upskill.
Otherwise it just becomes a case of another grindset. You're expected to do more, with the limited free time you have.
On another note: There's very little substance in this post. It comes across as a lazy, shallow, "hot" take! Which is fine. It's your blog and you should write however you like on your blog. But is this really a good fit for HN? It's frustrating to see shallow posts with no substance like this rise to the top but higher-effort go unnoticed.
So you think that, for example, every single person who uses LibreOffice is morally obligated to contribute code to the project? Even though the vast majority of them don't even know how to code?
But if you take the government out of the equation, and instead mandate contribution via project licenses, that might be worth a try.
Forced labor is typically a last ditch effort to prop up a system that is inherently unsustainable.
SHOULD a person do it? Yes.
SHOULD they be forced to do it or go to the Gulag? No.
Save jail for violent criminals, not this white collar BS.
The toil of dealing with low-quality, half-assed first-time contributions is often higher than the effort of implementing the same features or bug fixes from scratch. And that's if you agree the features or fixes are useful in the first place.
I've already seen college students forced by their teachers to contribute to open-source projects and it's almost always just sad. The patches don't follow your project's practices, they usually have an array of subtle bugs to diagnose... and on top of that, you're dealing with a person who probably doesn't want constructive feedback in the first place. They just want a good grade on their assignment (or, in this proposal, want you to sign off the completion of their "OSS duty").
If you compel 100x as many people to submit half-assed contributions, you'll just drown in noise. Nothing good will be accomplished this way.
The problem being that as a maintainer, I refuse most contributions. Not only because they are low-quality (it happens), but also because they are often out of scope, or I just disagree with the direction. It's my project, I maintain it, I choose what goes in it. But you're free to fork it with your changes, that's exactly why I made it open source. If you make an interesting fork, I may totally import some or all of your changes! And if you first ask in an issue, I may offer you to open a PR directly.
I almost always use copyleft licences: it makes it mandatory to share the modified sources with the user, who can then upstream them.
Many times in companies, if I need to patch a permissive dependency, my company will not allow me to spend time upstreaming my patch. Whereas if it is a copyleft licence, I can tell my manager that I am obligated to open source my changes (which is not correct, but managers usually don't know that, don't care so much about the nuance, and anyway it's a win if we follow the copyleft conditions to the letter).
System: "Contributing to Open-Source Should be Required, Like Jury Duty"
> No One Understands Software Because No One Understands Time
> All Programming Languages Converge to English Eventually
> The Best Database Is Just Two People Talking
> Stop Writing Code. Start Legislating Software
And my personal favorite:
> AI Safety Is Just the New Gluten-Free
People should have choice and freedom in what they want to spend their time doing. I respect the open source community and some day I’d love to find the time to contribute at my own will, not because I’m called to.