Annual event 24 Pull Requests drives quality open source contributions

24 Pull Requests challenge encourages fruitful contributions

16,720 pull requests were opened. Of those, 10,327 were merged and 1,240 were closed.

24 Pull Requests challenge encourages fruitful contributions
Image by :

Get the newsletter

Join the 85,000 open source advocates who receive our giveaway alerts and article roundups.

In 2012, Andrew Nesbitt was inspired by the 24 Ways to impress your friends advent calendar to start a new project: 24 Pull Requests, an open source contribution event. Participants are challenged to open one pull request for an open source project on GitHub every day from December 1 through December 24.

It's a lofty goal, to be sure. Of the 1,877 participants who submitted at least one pull request in the 2016 event, only 36 were able to meet the challenge. But that's okay, Nesbitt says, as any participation "helps to make the world of open source a better place." The total count from participants was 16,720 opened pull requests. Of those, 10,327 have been merged and 1,240 were closed. This suggests the pull requests were of a useful nature, by and large.

Driving high-quality contributions is a key focus of 24 Pull Requests. Unlike other contribution challenges, no prizes are offered. This is the result of a conscious decision to prevent participants from trying to game the system by submitting trivial requests that just add overhead for project maintainers. In addition, the leader boards on the 24 Pull Requests website are randomized in order avoid encouraging point-driven development. Nesbitt told, "Participants instead are rewarded by learning how to contribute to an open source project, making new friends and feeling like they have given back to the communities that they are part of."

The core team selects featured projects based on communities they know are welcoming for new contributors and have maintainers available during the month of December to handle the incoming requests. In addition, participants can suggest other featured projects based on the same criteria. Core members check to ensure the suggested project is active so that participants don't waste time creating a pull request that will never get merged. The contribulator tool, developed by Nesbitt and others, scores projects based on criteria that indicate how welcoming the project is.

Projects are searchable by GitHub issue type (e.g. "bug" and "documentation") as well as by language, which makes it easy to find a starting point. For many open source newcomers, that can be the hardest part. Although Nesbitt has no firm numbers, he has heard anecdotally of people who made their first pull request as part of 24 Pull Requests participation who went on to become regular open source contributors. In 2015, Victoria Holland wrote for that the 24 Pull Requests event inspired her to make her first contributions to other projects.

As the premise suggests, 24 Pull Requests has entered a state of hibernation until December 1. However, the code is on GitHub ready for improvements and suggestions year-round.


About the author

Ben Cotton - Ben Cotton is a meteorologist by training and a high-performance computing engineer by trade. Ben works as a product marketing manger at Microsoft Azure focused on high performance computing. He is a Fedora user and contributor, co-founded a local open source meetup group, and is a member of the Open Source Initiative and a supporter of Software Freedom Conservancy. Find him on Twitter (@FunnelFiasco) or at... more about Ben Cotton