
24 Pull Requests - Giving little gifts of code for Christmas - andrewnez
http://24pullrequests.com
======
samspot
1 per day for projects I am unfamiliar with seems aggressive. I wonder if I
would even be able to add any value with such a shallow understanding of the
projects. I think 1/week is probably more reasonable if you are trying to get
people who don't contribute to get involved.

~~~
sophacles
When I get involved with projects, I have a lot of potential up front to
contribute, and try to do so. Some problems are best handled by those
unfamiliar with the project. Examples:

* Documentation fixes - clarifications of parts you find confusing, inconsistencies with current behavior, etc.

* Convention fixes - are most binary checks names IsFoo() but one is named Foo_exists() ? do a quick refactor patch for it. Is one Exception named oddly, or have an unclear message? Patch is quick.

* Examples - does an example highlighting something you're confused about exist? Once you figure it out, whip up an example and contribute. Others are also confused about it - I promise.

* Code commenting - Do the comments contradict the code? Is there something in the code that confuses you? Once you figure it out, fix it and submit.

These are all things that are actually EASIER for newcomers to a project to do
- once the quirk has been internalized by a dev, they frequently don't notice
it anymore. Particularly with documentation and commenting stuff.

It is harder to do this with giant/super popular projects, but medium and
smaller projects can always use this sort of support. For example - I decided
to checkout Marionette a couple weeks ago. I was reading the docs and browsing
the code to see how something was implemented, and noticed the docs and the
code were not in sync. I created and submitted a patch within hours of first
learning of the project. This was also a work day, so most of those hours were
not spent on anything at all related. The patch was accepted - not a big deal
thing, but it was nice to contribute, and it may save someone else half an
hour of figuring out what was happening. The dev who merged it actually
commented that he didn't realize the docs were out of date - because he knows
the code.

Point being, little contributions like this abound. As a project owner, I
don't care when contributions are major deals or little tweaks or
documentation helpers. I'm just happy when someone contributes, it makes me
feel that my project is worth the effort. Which I think may be the point of
the idea anyway.

~~~
andrewnez
Would it be ok if we used some of these tips as part of the introduction
process on the site to help guide people who are new to contributing to open
source?

~~~
sophacles
Absolutely - I think that would be pretty awesome.

I have to admit tho: I toyed with ironically denying it :P

~~~
shabble
Licence: "You may only use these tips for evil"

------
andrewnez
The code for the site itself is also open source:
<https://github.com/andrew/24pullrequests/>

~~~
peteretep
Which is convenient, because that gave me something to patch ;-)

[https://github.com/sheriff/24pullrequests/commit/738bba95f58...](https://github.com/sheriff/24pullrequests/commit/738bba95f586d8e4fe28d724cad4e8a54b1c8c3b)

------
ck2
Fantastic idea.

Now someone gift suhosin code for php 5.4
<https://github.com/stefanesser/suhosin/>

I am starting to fear one-person projects no matter how great.

~~~
dspillett
_> I am starting to fear one-person projects no matter how great._

Never rely on a one-person project unless you can support the code yourself if
you find significant bugs. If that one person is busy or just plain
unavailable and you can't investigate and possibly fix the problem yourself,
you are out of luck.

Obviously there are a few exceptions to that, for instance if the project is
very widely used then you will get good support from the wider community
(though in most cases like that the official devloper pool has grown beyond
one by this point too).

I'm not saying the above to put down single-person projects or their creators:
there are some brilliant people out there working on them. But brilliant
people are often busy and are not immune to illness, needing to work on other
things to pay the bills, family matters, or just have other interests that sap
their time, and sod's law says they will be otherwise occupied just when you
need their attention most!

~~~
tikhonj
Of course, given that it's a one-person project, chances are the code is
relatively small and approachable. I think you are much more likely to be able
to easily support modify a one-person project than something bigger.

Now, clearly, supporting the code yourself will not always be an option or a
good choice; it's just much more likely to be viable with a one-person
project.

~~~
dspillett
I agree, though you need to be careful to make sure you could maintain the
project if needed, even though ideally you'll never have to, and you need to
check that _before_ you make use of it in anything important.

Many complaints about open source projects that go stagnant are due to people
not doing this, and being stuck using something they can't enhance/fix because
they don't have (and can't afford to buy) the expertise.

------
neilmiddleton
This is essentially the same idea as <http://www.codetriage.com>, but that's
every day, all year round.

------
atldev
I love this idea and have been thinking about contributing to a project. It's
just the incentive I needed to go do it.

When selecting a project, should I evaluate the # of pull requests or issues
to determine which projects could use the most help? For the OSS pros out
there, does it matter?

~~~
DigitalJack
First find a project you find interesting, or otherwise worthy. Then, I
wouldn't worry about the # of pull requests, just that they have recently
accepted pull requests. Once you know they are open to receiving requests,
then look at issues to see what low hanging fruit there may be.

~~~
atldev
Perfect- great tip on recently accepted pull requests. Thanks!

------
weej
This is a great idea. I was literally just thinking about how I wish there was
a site for aggregating good-will coding requests & submissions.

I'm going to do my best to participate.

This is a great concept and execution. Thanks for taking the initiative to
make this a reality. Well done!

------
jetsnoc
I will be creating all 24 of my pull requests to one project. The prospect of
a project manager seeing 24 new commits from someone he's never heard of made
me think about how funny it would be if a group of hacker's created a "commit
mob" like a social "flash mob" but once a week a few dozen developer's descend
on to a project and help out creating a few hundred pull requests. If it was
highly coordinated it could be as impressive looking as real flash mobs are.
If the backlog is pre-chosen by the group and the mobsters pick which issues
to work on it could be highly productive without anyone stepping on each
other's work.

------
cpeterso
Why just December? (And why Christmas?) How about a year-round effort like
"Pull Request Thursdays" or "First Thursday Pull Requests" (each month)?

~~~
saraid216
Because inspiration is not continuous but sudden.

Don't ask. Just do it.

------
tonylampada
In case anyone here is interested in contributing to my Django app -
<https://github.com/freedomsponsors/www.freedomsponsors.org>. - That's another
free software application intended to make free software even better, one
difference is that there are $ bounties involved.

Pull requests are welcome :)

------
jetsnoc
Okay, I bit. I forked the Redis repository and fixed a small warning when
linking with clang to resolve issue #374 (nine months old but still open.) I
just created the pull request. How long has it taken others for 24pullrequests
to recognize my request?

Edit: It took only a few minutes.

------
dkhenry
I don't think many people will make the 24 pull requests, but for kicks and
giggles I submitted my pet project to receive some love

<http://www.github.com//dkheny/minestat>

~~~
pronoiac
That 404s for me.

Edit: Perhaps you mean <https://github.com/dkhenry/minestat>

------
noomerikal
Shouldn't this be targeting repo owners to accept and merge a pull a day in
December?

I kid, I kid.

------
kylemaxwell
Love the idea - hopefully it gets wings and turns into something longer-term
rather than just seasonal. Getting more people involved in Free Software /
open source is good for everybody.

------
josteink
I've sent one pull-request so far, but it's not showing on the dashboard.

I guess someone should take a look at the 24pullrequests repo itself and get
some bugs fixed ;)

------
andrehjr
This is awesome :) After giving this little push I'm sure a lot of people will
try to keep contributing and getting involved!

------
nicholassmith
I love the idea, a lot of the suggestions were outside my wheelhouse but I
might take a look.

