Itchy and Scratchy

September 22nd, 2007

Over in the LinkedIn Answers sections, on blogs, or in dimly lit conference rooms, I’ve heard a question repeated a few times.

What open-source project should I contribute to? How do you find a good one?

Normally, the supposed motivation for finding a project in the first place, the reason for this quest, is to increase one’s skills (and employable worth), to give back, and to be wholly satisfied as a useful member of society. I and others have responded giving a logical laundry list of axes to be considered while attempting to answer that question.

Fresh contributors to open-source see no immediate financial benefit from their efforts. They’re basically doing charity work. Altruism. Love.

Picking a project using a multi-dimensional matrix of variables and personal weights starts to feel like picking your favorite child, based upon the tidiness of their room, their popularity at school, and the odor of their feet.

But the seminal works (I’m assuming there are some agreed-open seminal works so I don’t have to list references) always fall back to “scratching an itch” as the fountain of open-source motivation.

Scratching an itch. Your own itch. That’s not altruistic. That’s not love. That’s not even a choice.

It itches. Scratch it.

You don’t pick an open-source project. In Soviet Russia, open-source project picks you.

Throw that multi-dimensional matrix out the window. Stop asking people which project you should deign worthy of your love and affection. Just ask yourself one question:

What project that you already use pisses you off the most?

There you go. That’s your answer.

If you pick some project you don’t use, you’re not “giving back,” you’re simply “giving.” And then the whole equation of self-motivation skews, and those bastards not showing enough gratitude for your “gift” starts to really get on your nerves.

If you’re scratching your own itch, you don’t get upset when someone else forgets to say “thank you.”

2 Responses to “Itchy and Scratchy”

  1. 1 Hen
    September 23rd, 2007 at 8:28 am

    Definite agreement with ’scratching an itch’.

    One trick, if you’re having trouble coming up with something, is to think beyond yourself as an individual and to the larger groups we fit in. What do you and your spouse need? What does your team at work need? What does your need?

    It’s often easier to do that than just to look at your direct itches, and it’s a better fit into open source.

    The problem with ‘what project pisses you off the most’ as an approach to finding an itch is that it isn’t new work; your tiny involvement isn’t going to stop it pissing you off, though you may understand why it pisses you off better; and an unhappy relationship with your first project seems the best way to turn you into an open source arsehole.

    It might be more constructive to think about a project you like which has a half-baked feature. Or inconvenient bugs. Start digging into it and figure out how to build it – blog that info if it’s at all non-simple. Build fixes are a very easy way to start rolling the patches in.

    Hunt and read the documentation, patch it if need be, but don’t focus on being a documentation creator as most projects aren’t setup to embrace documentation patches the way they embrace code patches, and the curve from beginner to expert is much steeper with docs.

    Use issue trackers for your patches, not mailing lists. Mail goes stale within a week at the most; issues last years.

    Talk to the project. Best bet is to find an IRC channel and start lurking. That’s a great way to ask those early awkward questions (”Dumb question, but…?”). Then move to the mailing list/issue tracker as the discussion becomes more authoritative on your part (”Okay, I’ll go ahead and redo that…”).

    *end transmission…. child awake*

  2. [...] meet any useful functionality “itches” of the community, nobody will be “scratching” away at it. I am hopeful for Mysis, as the transparency and meritocracy of their actions [...]

Leave a Reply