WhoBuilt

What does it take to develop and maintain a big Open Source library?

Dec 8, 2021· 5 min· 260 views·Watch on YouTube

Callstack participants discuss what it takes to maintain large open-source libraries, drawing on their own experience and examples from the React Native community.

Maintenance takes time and patience

One participant estimates that about 80% of issues are not valid bug reports, but questions or reports that need more information. Another says coding takes about 10% of their time, with most of the rest spent reviewing issues, responding, and asking for details.

Automation helps manage issue volume

With hundreds of issues to handle, one maintainer says they automate requests for missing information. Their bot closes issues after a month when contributors have not provided basics such as a repository or version number. The participant considers that a reasonable window to supply those details.

Popularity can bring pressure and conflict

The discussion notes that some widely downloaded npm modules are maintained by a single person, which can create substantial pressure. Participants also mention public disputes around pull requests, forking, and the Colors library, describing drama as one part of open-source maintenance.

Open source can build skills and satisfaction

Maintainers find satisfaction in seeing their code help people do things that would otherwise be difficult. Contributions can also help someone learn a new language, such as Rust, and demonstrate experience when their job does not offer a chance to use it. The conversation adds that open-source work can build management skills useful in client projects.

Takeaways

  • Expect issue triage and contributor support to take more time than coding as a library grows.
  • Ask for reproducible details such as a repository and version, and automate follow-ups when issue volume is high.
  • A clear inactivity window can help maintainers close reports that remain incomplete.
  • Open-source contributions can help engineers learn tools their current jobs do not use.
  • Visible impact and skill growth can make the maintenance work worthwhile.

Mentioned in this talk

Search inside this talk

What was claimed 3

  • feature
    React Native: Issues are regularly closed due to inactivity
    “they regularly close issues due to inactivity”
    YouTube
    Unverified1 source· Talk
  • metric
    Colors: Cited as an example of open-source library drama
    “There was also that library about colors—the Colors library”
    YouTube
    Unverified1 source· Talk
  • metric
    Bublé: A pull request prompted an argument about forking
    “that thing about the PR to Bublé, where people were arguing about forking”
    YouTube
    Unverified1 source· Talk

Related talks