Skip to content

Instantly share code, notes, and snippets.

@andrew
Last active August 29, 2015 14:08
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save andrew/413a98b7cf7996f8b797 to your computer and use it in GitHub Desktop.
Save andrew/413a98b7cf7996f8b797 to your computer and use it in GitHub Desktop.

Hi, I’m Andrew Nesbitt, I’m a software developer and this little black ball of fluff is my miniature poodle puppy, felix.

I’m going to talk briefly about a little side project of mine called 24 Pull Requests. The aim of the project is to encourage software developers to contribute to open source code on the run up to christmas.

Now I know what a lot of you in the room are thinking, what is a pull request? It’s a way of suggestion a change, fix or improvement to an open source project.

In the past this was often done over email, nowadays it’s done on websites like GitHub and BitBucket.

24 Pull Requests started life as a single web page back in November 2012, encouraging developers to contribute back to open source software projects they had used throughout the year.

I shared this page around with a few colleagues. The site was open source itself, meaning they could see the code I used to build it and send me improvements.

Before I knew it people had contributed a login system, a pull request advent calendar, a beautiful new design and daily email reminders, all those improvements were sent as pull requests by people I knew who wanted to help out.

December 1st came around and we started to promote the site on twitter, reddit and hacker news. To my surprise people actually started using it, I’ve visualized it here with each pull request as a tennis ball, and me as the dog.

On the first day in December we had over 100 proposed changes to the site, fixing bugs, typos and making improvements to the site itself, as well as all the other open source projects they were using.

To this day we’ve had 117 different people contribute from all over the world.

So after a hectic 24 days leading up to christmas, here’s the numbers for the first year it ran, 843 people sent 3068 pull requests to 1462 projects. I was very chuffed with that and we put the site to sleep until december 2013

When that came round I had just started a new job so didn’t have a lot of free time to improve the site but as soon as we started it up again people started contributing.

Amazingly the community managed to translate the site into 16 different languages within just a few weeks, making it more accessible to non-english speaking countries.

Here are the numbers for 2013, we basically did double everything which was brilliant, reaching a wider audience and encouraging more people to improve the world of open source software.

If any of you have published any open source software before then you’ll know this isn’t very usual. Getting this many people to contribute and work together is quite unique, so why did it work so well? I have a few ideas.

Firstly, it was an grass routes campaign, no company backing or hidden motives, just some people trying to do some good for the world of open source software which resonated with people.

We also made use of some subtle gamification in areas of the site, ordering lists of people by the amount of contributions they made and comparing them to others as well as unlocking badges if they completed certain goals.

Every day we sent out over 5000 emails reminding developers to send their pull request for the day and even suggested relevant projects to contribute too which had a massive effect on retention, keeping it fresh in their minds.

Of course we’ll be running 24 pull requests again this year, starting December first and I’ve got a few ideas for how we can make it even better, focused mostly on connecting people better.

I’d love to make the site more helpful for people who are new to coding and open source, with guides, tutorials and simplifying areas of the site that might be confusing as well as getting existing experienced users to provide support via a chat room.

I’d also like to bring 24 pull request into the real world, organizing hackathons in partnership with existing user groups and meet ups where people can work together on their pull requests.

This one is more tricky, but if we can provide some form of mentoring, over email or in chat rooms I think that could be a great help for inexperienced people and also create some great relationships going forward.

But all of this won’t be possible without help. The project has a wonderful opportunity to do good for the world of software as well as begin a platform to help teach people to code by contributing to open source software with other people.

If you’d like to help out in any way, wether you’re a programmer or not then please do get in touch, we’d love to have you on board, all the details you need are on the website.

Thanks very much.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment