I don't have time to keep up with all the daft Open Source projects I release. I wish my skill and my energy was as wide as my ambition.
Several years ago, I came across Felix Geisendörfer's Pull Request Hack. The premise is simple - if people are making decent Pull Requests to your project then you should give them commit access.
It sounds mad, I know. But it has worked really well in my case. I launched Super Tiny Icons six years ago. It was surprisingly popular and lots of people seemed to enjoy using them - and a few even contributed.
So I gave them Commit access. That means they are able to push directly to my codebase. They can also approve other people's Pull Requests.
Like I say, totally mad and irresponsible.
But people are, by and large, lovely.
Over the years, I've added about 20 random people as collaborators. Some have been more active than others. A few have refused to take on the responsibility. But several are still there - saving me dozens of hours, and helping even more people contribute.
What's the worst that could happen?
OK. Lots of things. The Pull Request Hack probably isn't suitable if you're running big projects. And it is almost certainly a stupid idea if you write code which is actively used by multiple downstream projects. And if your stuff has even the slightest chance of compromising security then you're better off sticking to trusted members.
But if you're just farting around with some scrappy code and you want a quick way to build an ad-hoc team? I don't want to go full "Cathedral and Bazaar", but it is pretty fucking magic.
And it gives me a modicum of hope that some of my work might continue after I'm gone. Sorry, that's a bit morbid.
So a huge thank you to everyone who has contributed.
Ray says:
@Edent
Love it! What a great inspiration 🙂
I hope we can see more of this in the world for little niche projects that otherwise get forked and harder to find which fork to use.
Damian Mehers says:
@Edent I’ve designated my son, whose just finished his first year of computer science, as my designated successor in GitHub, just in case. I’m hoping there isn’t enough of value there to make him consider bumping me off early.