Skip to main content


(Easy) ways to help struggling open source projects:

- step in and help review a few PRs

- help the project triage/reproduce bugs

- if code in the PR looks complicated or is hard to understand, ask for an explanation

- express your gratitude to the maintainers

- make your company sponsor projects they depend on

in reply to daniel:// stenberg://

  • make your company sponsor projects they depend on


I feel some companies do not know all their end dependencies at times... left-pad, anyone?

in reply to CatSalad🐈🥗 (D.Burch) :blobcatrainbow:

@catsalad for sure. But we can all help our companies learn. Also, an excellent way to "sponsor" is to allow an employee to spend work hours to do upstream work.
in reply to daniel:// stenberg://

This! Having been in the position to get this done to some degree, it is not just charity either. It is a path to more competent staff that has a really solid understanding of those softwares (and a great resource for in-house support to the teams using it), as well as a good way to prioritize the bugfixes and changes that are pain points in your org.

Faces a lot of objections for "wasting" money, and we "should use finished software that doesn't need development" though.
@catsalad

Bubu :progress_pride: reshared this.

in reply to daniel:// stenberg://

@catsalad a good start would be to normalize contributing bug fixes, that have been already developed anyway, upstream.
in reply to daniel:// stenberg://

(Maybe slightly controversial)

... and if all those options are too complicated in a corporate setting - at least use a Linux distro where you can pay for support. This mimics what corporations are set up to understand, and if (for example) money gets sent to Red Hat this way that in turn will sponsor a lot of different open source projects.

in reply to daniel:// stenberg://

Localization (languages and such) help as well and don't require tons of tech savvy
in reply to daniel:// stenberg://

but unfortunately these are also the same steps you need to do to infiltrate an open source project as a bad actor.

Maybe the open source community needs to create a network of trust which can at least offer a “This is a known person” qualification to contributors.

in reply to Codepope

@codepope Jia Tan was trusted. It did not help. We can't accept contributions based on trust, we need reviews, verification and tests.
in reply to daniel:// stenberg://

Jia Tan's trust was generated through humint style pushing on a vulnerable maintainer using sock puppet accounts.

We still need reviews, verification and tests, but if we ignore the load we place on a project maintainer and expect them to do better at identifying bad commits, then this will happen again and again.

in reply to Codepope

@codepope my point is that contributors normally are not "trusted" at all by maintainers - like myself. I don't need trust for that. As long as their contribution is good. That's the vast majority of contributions.

Trust is for when handing over responsibilities and powers, which is MUCH rarer.

in reply to daniel:// stenberg://

@codepope and I doubt a "web" of trust would work well, as many will not be part of "a web"
in reply to daniel:// stenberg://

And yet here we are on a FOSS powered web of social media nodes. True, a well formed trust graph (if that feels less spidery) would take a while to form.
in reply to daniel:// stenberg://

But isn't that the point. The lone maintainer ends up taking on the full load, and add in the knowledge that bad actors will try and subvert their project with apparent good code obfuscating their attack over multiple projects, then thats a huge burden. The kind of burden which ends up with projects with n year backlogs and no activity and then there's a push to move the maintainer to someone new and (see xz)…
in reply to Codepope

@codepope but with a lot of *additional* requirements the burden on the maintainer is also *increased* when being unable to bring in more maintainers because they are not in the web...

So no, I don't see how a web of trust thing is a realistic scenario for where I have been in my maintainer life.

in reply to daniel:// stenberg://

Are you basing that on the assumption that nobody trusts anybody so no one would be eligible? And as I said in another part of the thread, it'd be up to each project to decide how much weight they put on the trust graph ratings - I'd expect most projects to start with it on low and ramp it up in line with current maintainers own ratings over time.

But I’m guessing from the responses, we're going to be stuck with zero trust FOSS going forward.

in reply to Codepope

@codepope you can do your OSS with zero trust, I do mine with larger than zero
in reply to daniel:// stenberg://

also
- do not ask maintainers to add new features unless they are explicitly asking/looking for it.

Opensource maintainers deserve better. It is not like one should randomly come and ask for adding new features like it was some commercial product.

in reply to daniel:// stenberg://

Or just pay them; https://www.cynicusrex.com/file/takemymoney.html
in reply to daniel:// stenberg://

Advanced ways to help #OpenSource

- Have corporate policies allowing devs to contribute upstream; heck, encourage it!

- Support your OSPO. Give them budget for a FOSS Fund. Listen when they speak.

- Subscribe to Tidelift, thanks.dev, kudos.community, and programs that auto-distribute donations to all your dependencies.

- Get listed on https://fossfunders.com/ and promote it to other CEOs/CTOs.

@bagder

in reply to daniel:// stenberg://

Or make a pr that adds a comma to a README file and request that the pr is merged asap.
in reply to Potung Thul

@potungthul Pull Request. Sometimes known as Merge Request. What we would say "a patch" back in the old days. Proposing a change to a project.
in reply to daniel:// stenberg://

Thanks for the explanation.

I am able to do #4: "express your gratitude to the maintainers". I'll go do it!

in reply to daniel:// stenberg://

yeah. I gave up a while ago on a library that was being cited by G****e in their standard training material. Couldn’t even get an email response.
in reply to daniel:// stenberg://

I can't code, but I love to write documentation so I try and help with that as that is lacking most of the time.
in reply to daniel:// stenberg://

@MonniauxD Even easier: acknowledge publicly that you are using these projects. That costs nothing, and it already helps.
in reply to daniel:// stenberg://

One thing I do not really understand ...
"Free" is fine. But I see "Companies" mentioned pretty often. Companies have one master goal: Make money. Taking something for free and selling it for money does not contradict that goal.

So why not adjust the licences to something like "If used by a legal entity generating at least a turnover of 240 times the average monthly income of the country their headquarters are located at, at least 3% of the total turnover has to be spread equally across the products used that are covered by this license."

Problem solved.

in reply to nyx

You can add something about contributing to the projects, but ...
Once upon a time, one of our devs solved an issue in an open source library we are using. He asked his superior to create a corresponding pull request. The request got denied because "It may also contribute our competitors".
So I have my doubts that a call for contribution will generate much participation.
in reply to nyx

@nyx then you get an excellent opportunity to educate your management!
@nyx
in reply to daniel:// stenberg://

That's another issue. Straight from the university into a management position, big ego, small knowledge. Arguing with them likely puts one on the fire-list.
Those who worked their way up are - from my experience - more open for suggestions and arguments. But they seem to be hard to find nowadays.
in reply to daniel:// stenberg://

Regarding the PR reviews: If I find stuff to improve that surely helps. But if I don't, that could mean I'm just not experienced enough, don't apply the same standards or even maliciously ignore mistakes (or backdoors...), so how would that help the maintainer?
in reply to daniel:// stenberg://

For point 1 (reviewing PRs), I wonder if some maintainers will see that as just noise, like another form of "+1 pls merge this"?
in reply to daniel:// stenberg://

I do the second part. I find bugs and report them as detailed as possible. With video evidence whenever possible.
in reply to daniel:// stenberg://

gratitude, and just how you are using my code is the most powerful stuff for me. Gratitude motivates me, and how you are using the code lets me come up with new features
in reply to daniel:// stenberg://

a hard problem space is whether reporting bugs equal helping.
Some project see them as such, others see it as a burden. (Especially with 1000+ open issues with low duplicates.)
Triaging often the same, people are testing various versions and it's seen as "metoo'ing" in various projects.
(Unfortunately PR requires lot of familiarity w/ the project.)
If only life was simple.