The Unsung Heroes of Open Source: The Dedicated Maintainers Behind Lesser-Known Projects
In an article by the Core-js author, people learned about the most widely used JavaScript library. This article will take a look at a few of the unsung heroes.
Join the DZone community and get the full member experience.
Join For FreeA few days ago, I read an article by the author of Core-js. To be honest, it was my first time hearing about Core-js. As someone who has written some front-end code and has been keeping up with open source projects, I feel a bit ashamed.
However, there are many open source projects that are widely used but not well-known. In this article, I will take a closer look at a few of these unsung heroes of the open source world. I do not want to give them a business model or financial advice in this article. This largely depends on the author’s personal experience and values. I just want to raise more awareness about these open source projects.
Core-js
Core-js’ GitHub repo.
Core-js is a modular standard library for JavaScript. It provides polyfills for many ECMAScript features, as well as some additional features that are not included in the standard library. It’s used by many popular JavaScript libraries and frameworks, including React, Vue.js, and Angular.
Core-js has been downloaded more than 2.5 billion times from the npm package registry, making it one of the most widely used JavaScript libraries in the world. Despite its widespread use, the project does not receive much attention, and its star growth is very slow.
Core-js is maintained by Denis Pushkarev, who started the project as a hobby in 2012 and open-sourced it in 2014.
Core-js’ Top Contributors
Based on the distribution of contributions to the project, it seems that Denis has provided more than 95% of the project’s code. And, as he said in the article I read, the project occupies almost all of his time—more than a full working day.
Denis’ Contribution Time Distribution
Core-js’ Star History
On February 14th, Denis’ article brought significant attention to the Core-js project. Now, he has opened multiple donation channels, including through Open Collective, Patreon, and boosty. He is actively exploring ways to ensure that Core-js can be maintained in the long term.
cURL
cURL’s GitHub repo.
cURL is a command-line tool and library for transferring data over a wide range of network protocols, including HTTP, FTP, SMTP, and many others. It is used by millions of developers to download and upload files, test APIs, and automate tasks.
cURL’s Top Contributors
cURL is primarily maintained by Daniel Stenberg alone, who started working on the project in 1998. Fortunately, there are occasionally new contributors joining in. This allows Daniel to maintain a more normal schedule and a full time job.
Daniel’s Contribution Time Distribution
cURL has received sponsorship from various organizations and individuals, including wolfSSL. WolfSSL employs Daniel and allows him to spend paid work hours on cURL.
ImageMagick
ImageMagick’s GitHub repo.
ImageMagick is a free and open-source software suite for displaying, converting, and editing raster image and vector image files. ImageMagick is used by millions of websites and applications to manipulate and display images, including popular content management systems like WordPress and Drupal.
ImageMagik’s Top Contributors
ImageMagick is maintained by a small group of developers, including its founder, John Cristy. Cristy started the project at DuPont in 1987 and released it in 1990. It is said that John Cristy has a full-time job and only maintains the project in his spare time.
ImageMagick’s Top Contributors Last Month
Dirk Lemstra is another primary maintainer of ImageMagick, currently working as a consultant for a company and maintaining the project in his spare time.
Currently, the project is sustained by the support of various organizations and individuals.
MyCLI
MyCLI’s GitHub repo.
MyCLI is a command line interface for MySQL, MariaDB, and Percona with auto-completion and syntax highlighting.
MyCLI’s Top Contributors
The project is maintained by its creator, Amjith Ramanujam, and contributions from the open source community. Based on the distribution of contributions, a relatively stable community of contributors has formed around MyCLI. Moreover, there are some organizations and individuals sponsoring this project.
MyCLI’s Commit History
However, with the popularity of cloud databases, such projects have fallen behind the times, so the updates for the project have been very slow.
Homebrew
Homebrew’s GitHub repo.
Homebrew is a popular package manager for macOS that allows users to easily install and manage a wide variety of software packages. Homebrew is a nonprofit project run entirely by unpaid volunteer developers, with the lead maintainer being Mike McQuaid.
Homebrew’s Top Contributors
McQuaid has been involved with the Homebrew project since its inception and has been the lead maintainer since 2012—and he has full-time work on GitHub as a principal engineer.
Homebrew’s financial operations are managed by the Open Source Collective, and accepts donations through GitHub Sponsors, Open Collective or Patreon. Homebrew is also sponsoring some projects, including cURL mentioned earlier.
Apache Log4j
Apache Log4j’s GitHub repo.
Apache Log4j is a powerful logging framework for Java that allows developers to log messages from their applications with fine-grained control over where and how those messages are recorded. This library has been widely adopted by Java developers and is used by many popular Java-based applications, including Apache Kafka and Apache Spark.
Apache Log4j’s Star History
Interestingly, the project did not receive much attention until November 2021, when a security vulnerability was reported. This incident doubled its star count and gained attention from the industry.
Apache Log4j’s Top Contributors
Ralph Goers is the original author of Log4j 2. He worked on the initial design and development of Log4j 2, which was released in 2014. Now, he is working on Nextiva as a Fellow Architect.
Now, the core maintainer of logging-log4j2
is Gary Gregory, who is a member of the Apache Software Foundation and has been working on the project for over a decade.
Because the Log4j 2 project is under the Apache Foundation, the maintainers can focus more on project maintenance without worrying about financial issues.
OpenSSL
OpenSSL’s GitHub repo.
OpenSSL is an open source library that provides cryptographic functions for many different applications, including web servers, email clients, and virtual private networks. OpenSSL is used by millions of websites and applications to secure communications over the internet, including popular web servers like Apache and Nginx, as well as popular programming languages like Python and Ruby.
OpenSSL’s Top Contributors
The project is developed by a distributed team, mostly consisting of volunteers with some project funded resources. The team is led by Matt Caswell, who has been working on OpenSSL since 2010 and became one of the maintainers in 2013.
Apart from volunteer developers, OpenSSL also depends on financial support from the community, which can be given in various forms. These include a support contract, a sponsorship donation, or a smaller donation via GitHub Sponsors.
Conclusion
Maintaining an open source project is no easy feat. It’s a labor of love, built by passionate developers who sacrifice their time to create something that makes a difference. As users, we owe them our gratitude for the tools and technologies they provide. As Mike McQuaid suggested in his article, Open Source Maintainers Owe You Nothing, “Remember when filing an issue, opening a pull request, or making a comment on a project, to be grateful that people spend their free time to build software you get to use for free.”
Published at DZone with permission of Mia Zhou. See the original article here.
Opinions expressed by DZone contributors are their own.
Comments