Thursday, October 22, 2009

Red Clown-Nose Game

I love games, I really do. Just the other day, I found out I was in a game I didn't even know about. It's called the The Continuous Integration Game, and it's played on the Hudson instance on build.eclipse.org. And guess what, because I keep breaking the psychopath (XPath2) build, I'm placed almost at the bottom (that earns me -10 points), and dcarver who keeps fixing the build afterwards, is almost at the top (since a successful build gives +1 point and adding a test suite gives +1 per test. And who added the 8000+ tests from the W3C suite?)

I certainly have room for improvement - let the games begin!

Friday, May 15, 2009

Know your project's "hangarounds"

(This post actually started as a comment to Dougs post about too few Eclipse hands but I think it merits a note of its own.)

It's only human to want more, and sometimes we want more for less.

As an occasional contributor, my impression is that there's just not enough people to review bugs and patches and keep ownership of the various components. In the projects I've contributed to, this has been a steady decline over the years. So, I agree with Doug, more cooks!

However: As a former (individual) committer who just wasn't active enough (life happens), I wish there was more time! I think there's an untapped potential in the project "hangarounds". People who have been following the project or component for a while, are power-users but also know the design codebase, but do not have the time to be a committer with all that entails. The hangaround.
By that, I mean a person who keeps up to date with the project or component, and is willing to assist the committers in a number of areas:
  • Bug triage
  • Spreading the good word about the project (superuser/ambassador)
  • Fixing bugs
  • Reviewing and testing patches, etc. from the contrbutors at large.
  • Pushing initiatives like Bug Friday
  • Extend test coverage
  • Keeping [helpwanted] markers on bugs relevant and realistic
  • Review and write documentation
  • Participate on mailing list and/or newsgroup
Who wouldn't want those guys/gals around? The key point here is to encourage participation of a following, by acknowledging that these tasks are important and that these project hangarounds are valuable to the project. By acknowledging that hangarounds earn their "props" (proper respect) from the committers by providing good patches and thus proving their worth over a longer period. Or perhaps sqeeze a "contributor's day" in between Mother's day and Fathers' day somehow - flowers are optional.

Often full-time Eclipse member committers are indeed colleagues working together on significant areas of new functionality, and they often optimize their communication by keeping it to themselves. This is unavoidable and mostly OK. Hangarounds wouldn't be "in the loop" for that kind of development, but their knowledge of the project or component make them valuable reviewers -- keep in mind that a large share of the Eclipse user audience are software developers, and should be accustomed to such tasks and hopefully welcome them.

While I don't know every project in the Eclipse ecosystem, I'm sure project hangarounds already exist, in practise anyway, and that their contributions are valued. However, I think it should be encouraged lots more, also so that the committers had a better feeling of which contributors to turn to for help.

I know, I know, code is the true measure of most things Eclipse, but even if you can't code Eclipse all day, you can still contribute. Let's not forget that.