Which open-source projects are widely used but maintained by just a few people?

105 pointsposted 2 days ago
by udev4096

Item id: 41486565

110 Comments

Karliss

2 days ago

It almost feels like it's easier to list which fundamental projects have more than one active maintainer.

Many of the core library and tools are mostly finished and have very little yearly activity. How many maintainers does a project have if the last activity was one or two commits made or maybe just merged by one maintainer 3 years ago, and few more 5 years ago. Does it count as 2 maintainers, 1 maintainer, 0 maintainers? Does the "maintainer" from 5 years ago still have commit permission and how likely are they to get involved if some merge requests show up.

Even for active projects it's very common for 90% of work being done by one main maintainer.

keepamovin

2 days ago

> Many of the core library and tools are mostly finished and have very little yearly activity

Yeah. The ad-hoc, de-facto "Standard Library" for JavaScript, the "web", and fullstack web apps.

OSS ecosystem is sometimes so very "Down and out in the magic Kingdom" adhocracy like. Shame we haven't got the rest of the Bitchun' society's perks. :) hahaha!

shprd

2 days ago

- curl: Daniel Stenberg et al. - https://github.com/orgs/curl/people

- Lua (programming language): team of 3 - https://www.lua.org/authors.html

- openssl: 15 people - https://github.com/orgs/openssl/people

maybe also: sqlite, vim, nginx, redis

rollcat

2 days ago

> maybe also: sqlite [...]

SQLite won't accept contributions from outside the core team; joining the core team is an involved process, as they're taking extreme measures to ensure it will continue to be recognised as a work in public domain in as many jurisdictions as humanly possible. You can still support the project by paying them for their work (or by getting your employer to do so):

https://www.sqlite.org/prosupport.html

mrweasel

2 days ago

My understanding was that you could absolutely contribute without joining the core team, but you do need to file some paperwork to ensure that code can remain in the public domain. The need for the legal paperwork is that public domain is not a thing in multiple countries.

rollcat

2 days ago

The justification and legal requirements are pretty clearly explained: https://www.sqlite.org/copyright.html

TL;DR: they have a company that legally employs every single co-author, to be able to sell you a Warranty of Title, just in case your company/jurisdiction/etc has a problem with public domain.

einpoklum

2 days ago

15 people is not "a few", it's a substantial group.

How many maintainers for the other ones you mentioned?

pledg

2 days ago

There's 724 people listed as contributors on the redis GitHub.

michaelt

2 days ago

In this thread: Wildly different definitions of what "widely used" means :)

Did you know tools like uname [1] and cat [2] in GNU coreutils have essentially only had two contributors in the past decade?

[1] http://git.savannah.gnu.org/gitweb/?p=coreutils.git;a=histor... [2] http://git.savannah.gnu.org/gitweb/?p=coreutils.git;a=histor...

Maken

2 days ago

I'm actually surprised by the amount of changes in 'cat'. One would assume a program like that is already 'done'.

rollcat

2 days ago

> I'm actually surprised by the amount of changes in 'cat'.

"'cat -v' considered harmful" is an ongoing meme, but there's truth to it. http://harmful.cat-v.org/cat-v/

cat(1) concatenates files. Some software should be considered done.

mauvehaus

2 days ago

Starting in ~2008, the ones marked 'maint' and 'all' touch multiple files and don't appear to make substantive changes to e.g. cat. Since that categorization started, only 10 of the changes have been specific to cat.

danirod

2 days ago

To be fair, there are a lot of commits that just update copyright years or documentation. IMHO that's just regular housekeeping and cannot mean that cat was not "done" in first place.

delusional

2 days ago

And most of what happens in those utilities is updating the copyright year numbers.

latexr

2 days ago

Which seems wholly unnecessary. The way I understand it, having only the starting year is sufficient.

regularfry

2 days ago

Absent any changes in a year, the copyright year shouldn't be updated. Otherwise what you're claiming is that the copyright term starts from a date after creation of the content, so it's getting artificially extended.

latexr

2 days ago

The change in question isn’t about going from “Copyright (C) 2023” to “Copyright (C) 2024” but from “Copyright (C) 1998-2023” to “Copyright (C) 1998-2024”. Thus your case doesn’t apply, it’s not confusing. What I’m saying is that as far as I understand, having “Copyright (C) 1998” and not changing it would suffice.

regularfry

2 days ago

Yes, I read your comment as saying that having the starting year and changing it every year would be sufficient. Which it isn't, but I've seen it often enough elsewhere that it's worth calling out.

dartos

2 days ago

Every time you change code and commit it, is it not a new program?

New editions of books have new copyright years, since they’re new books.

Same thing with code

regularfry

2 days ago

That's why my first word was "absent".

teeceepee

2 days ago

fouronnes3

2 days ago

This is a good answer. Especially in the light of the 2021 drama and the maintainer's benevolent dictator status. What happens when the community disagrees with a benevolent dictator's decision?

https://lwn.net/Articles/870478/

squigz

2 days ago

> What happens when the community disagrees with a benevolent dictator's decision?

They discuss it, try to come to a compromise, and if all else fails, fork it.

Maybe it's not ideal, but then again, people seem to have a big problem when you have 'boards' running these projects too, so...

dagelf

a day ago

All hail the actual time lord

blueflow

2 days ago

Same as with glibc and Ullrich Drepper.

ratmice

2 days ago

It would probably be easier to enumerate the small number of projects which have a larger amount of maintainers. I think the vast majority only have a few maintainers.

passwordoops

2 days ago

Just curious what arrangement theses people have.

-do their employers recognize their effort and give hours to the side projects?

-they mostly contractors so can arrange their time accordingly?

-donations?

-or is it mostly a hobby done out of passion?

einpoklum

2 days ago

You forgot an important option:

No payment, not a hobby, very little passion, doing it because the public needs it. (And possibly got started because, damn it, somebody had to write it / take over maintenance.)

senko

a day ago

Sounds terrible. Is there such a software project?

einpoklum

a day ago

Oh yes, I'm sure there are. I maintain a few; none are ultra-popular but some are kind-of-popular. And I am sure that others have had this sentiment before and wrote something which others now rely on, without being particularly passionate about continued development of that thing. And it becomes like a chore which you know is important to many people rather than just one or two.

withinboredom

2 days ago

I don't have something nearly as popular as these other projects; but if you have a popular project, a potential employer might offer work hours for it to get you as an employee.

Further, as a contributor of some now popular projects with one other maintainer, I can say that I mostly do it for fun. My current employer gives zero-fucks about it but if a new employer were to use it to woo me away, I would jump in a heartbeat.

mirekrusin

2 days ago

Copyright on your contributions may belong to employer during employment period in most jurisdictions.

withinboredom

2 days ago

My employment contract specifically allows me to keep any rights that I do on my own time and equipment that doesn't compete in certain areas -- and enumerates those industries.

bluGill

2 days ago

Maybe but you may have permissions to make it open source.

bux93

2 days ago

Note that the situation will not be much better for closed sourced projects.

Sure, your vendor will probably fix bugs, but it may take some time until they find someone who has any knowledge of that codebase and survived last week's reshuffle, the re-org in spring and last year's buyout.

rstuart4133

2 days ago

I don't know that it is better for closed source projects, but regardless open source has an escape hatch closed source doesn't. If something goes wrong, you can maintain it yourself, or fork it.

I've done it myself.

That one property along is enough if you want longevity, open source is always a safer bet than closed source.

In my case, I guess it extended the projects life by another 20 years.

Retr0id

2 days ago

In some sense, the ubiquitous "unzip" has 0 maintainers.

Per the upstream, https://infozip.sourceforge.net/, "UnZip 6.0 was released on 29 April 2009".

But there are not truly 0 maintainers, because distros maintain their own patchsets, for example: https://git.launchpad.net/ubuntu/+source/unzip/log/

(By the way, unzip is arguably not feature complete. The ZIP spec has been updated multiple times since 2009, with the notable addition of the Zstandard compression method, among other things https://pkware.cachefly.net/webdocs/casestudies/APPNOTE.TXT)

dagelf

a day ago

zstd is not zip and pkware has long been irrelevant

Retr0id

a day ago

DEFLATE isn't zip either, what's your point?

alexk6

2 days ago

Byte Buddy - runtime code generation for the Java virtual machine - https://github.com/raphw/byte-buddy

> It is stable and in use by distinguished frameworks and tools such as Mockito, Hibernate , Jackson, Google's Bazel build system and many others. Byte Buddy is also used by a large number of commercial products to great result. It is currently downloaded over 75 million times a year.

nolok

2 days ago

If you really want to dwelve into this, while the applications have plenty of cases let's not forget the underlying libraries that "everyone" depends on.

jviotti

16 hours ago

JSON Schema is the industry standard schema language for JSON, used by big players like OpenAPI and by an insanely high number of APIs and products out there.

The TSC core team stays at ~6 people (I'm one of them)

user

2 days ago

[deleted]

KeplerBoy

2 days ago

Liblzma rather infamously.

brandelune

2 days ago

OmegaT is widely used in the professional translation world and maintained by 1 person with a very few active contributors (except for localizers).

https://omegat.org

bubblesnort

2 days ago

Expat

LibreSSL

Linux-PAM

OpenSSH

re2c

tzdata

zlib

Those are just the ones that came to mind.

rollcat

2 days ago

Good list. Sometimes the easiest way to contribute is to just donate some money, so that the existing maintainers can continue to focus on their work. OpenBSD is the "mothership" project for both OpenSSH and LibreSSL: https://www.openbsd.org/donations.html

Unfortunately I couldn't find any information on how to donate to these projects:

- https://re2c.org

- https://github.com/libexpat/libexpat

- https://github.com/linux-pam/linux-pam

- https://zlib.net

tzdata is actually maintained by IANA:

- https://www.iana.org/time-zones

dagelf

a day ago

Perfect software doesn't need to be maintained. TM

user

2 days ago

[deleted]

mianos

2 days ago

dnsmasq. Running on billions of of devices (including Android), one guy (Simon Kelley).

willm

2 days ago

Rich. 197 million downloads a month. There are two maintainers.

eqvinox

2 days ago

flex & bison. Especially flex seems close to unmaintained.

cba85

2 days ago

Php

ale42

2 days ago

I'm surprised to hear this, any more info?

0x073

2 days ago

Its wrong, or at least not my definition of few people.

https://thephp.foundation/structure/

"Core Developers The PHP Foundation contracts 10 full-time and part-time engineers to maintain and develop the PHP language."

johannes1234321

2 days ago

There are many, people doing (good, valuable) things on PHP, however active people with deep understanding of the engine can be counted on less than a hand. (I contributed some small things to the engine and other parts in the past)

kingofthehill98

2 days ago

One of those people is Nikita Popov (nikic). PHP core development took a hard hit when he left to work on other projects at JetBrains.

rurban

2 days ago

All the better ones. The more maintainers, the quality goes down. Down to total destruction

blueflow

2 days ago

zlib: Mark Adler

ncurses/xterm: Thomas Dickey

jringo_-

2 days ago

People ask this question a lot in academia. The system just about incentivizes creating dupliware and/or abandonware that is critical to a domain, field, or niche, so there is tons of it (there is also A LOT of very good stable software, but ignoring this for now). This makes it very difficult for new parties to find open source software they can rely on, for funders to determine what software to support, for institutions to track their contributions, etc.

I am working on a project solving for this specific question (and many others), across the open source and open science ecosystems, starting with open source research software but ultimately intends to touch the whole space. Among other things, we want to take continuous measurements of the health of open source projects, the use of open source projects, the perception of open source projects, the "impact of open source projects", and the needs of open source projects. We are combining data collection with stigmergic markers and eventual webs of trust.

It is incubated by NumFOCUS, and includes collaborations from across the academic industry.

Bringing it here for your thoughts.

The project is called "The Map of Open Source Science" (MOSS) and is built on the "Simply Omniscient Layer" (SOL). It is essentially an omniscient open permissionless graph database of the digital knowledge and research ecosystems, as well as a corresponding visualization (eventually people will be able to build their own visualizations interfacing with SOL).

Very recent presentation at PyData Vermont: https://www.youtube.com/watch?v=7c51njj9JPs

Recentish update: https://www.opensource.science/updates/the-map-of-open-sourc...

Landing page for the program: https://opensource.science

From our site:

"MOSS is a comprehensive, composable, interactive map of the digital knowledge and research ecosystems. We identify connections between open source research software projects, research papers, organizations, patents, datasets, funding pathways, AI models and applications, and the people who drive it all.

The MOSS proof of concept so far demonstrates nine use-cases:

Identify relevant tools for your research

Showcase the impact and connections of the people that make and maintain open source research tools

Showcase the impact and connections of the organizations that build, support, and fund development of open source research tools

Showcase the impact and connections of open source research tools

Identify gaps in open source research tooling

Navigate repetition of open source research tool features

Identify, prevent, and reinvigorate abandoned open source research tools

Streamline the grant submission and review process

Navigate security flaw identification - who to contact, what downstream tools are effected, what alternative tools exist"

tw1984

2 days ago

google's leveldb

skyfantom

2 days ago

brew

sneak

2 days ago

The brew formulae are maintained by many people, and the “brew” command line tool has dozens of contributors with >100 commits.

user

2 days ago

[deleted]

suman99pro

2 days ago

Linux Kernel

v3ss0n

2 days ago

There are more commiters than maintainers can control quality.

bubblesnort

2 days ago

There are also very few testers of stable release candidates for such a big project.

mdtrooper

2 days ago

People used to fight for upstream factories to return the water they used clean to the river. It was an ecologist's fight.

Now corporations do projects with 5 or more zeroes in budget and a high percentage of the code is free software or open source. And they give 0 back to free or open projects that they parasite.

I wrote an article years ago in my blog (in Spanish, sorry), "Free software has failed": https://tomatesasesinos.com/2019/07/11/el-software-libre-ha-...

ericyd

2 days ago

I think this belongs under "Show HN: My Tangentially Related Thoughts"