This site is an archive; learn more about 8 years of OpenHatch.

Autumn updates from OpenHatch

by Asheesh September 29th, 2010

(The following post is in the style of a They Might Be Giants song, the “‘85 Radio Special Thank You“.)

Hello.

OpenHatch people are very happy to be guest-blogging for the first time in their long, illustrious careers. 2010 has been a very good year for OpenHatch.

Mid August, Asheesh presented at a new mini-summit. Everyone liked him, and he likes everything.

In September, I moved to Boston trapped deep inside a Megabus on the side of the road, going slower and slower until they never let us out a full hundred miles later.

In July, we all sang a duet with Mel Chua. In a way it was nice, and it was our favorite song. But we spent the following days resting up, looking for some vital link missing in the big picture. Asheesh said he had found it, but in fact he had lost it.

Well, that July, Asheesh chipped a tooth making lemonade far above the kitchen sink. And then came the end of the September, when we ran our very first university immersion program, which we are glad that some of you became a part of.

Thank you for listening to OpenHatch. We do have a Dial-a-Blog service at http://openhatch.org/blog/feed/ — (sound of tape rewinding) Dial-a-Blog service at http://openhatch.org/blog/feed/.

Thank you.

Chocolate cake for our latest contributor

by Asheesh August 17th, 2010

A few months ago, Jack Grigg from New Zealand signed on to the #openhatch IRC channel asking how he could help. In mid-July, we sent him a chocolate cake.

Read the rest of this entry »

The thinking behind the Training Missions

by Raphael July 2nd, 2010

Ruben Vermeersch of F-Spot recommends that free software projects develop a vision statement. We like this idea. This morning we put together this vision statement for our next major feature.

The OpenHatch training missions are a group of interactive web pages for learning skills you would use when contributing to free software, like using diff, patch, tar, version control, IRC, and so on. A training mission shuns “manuals” and long, boring blobs of text. Instead it says, “Here’s a short, concrete task to perform. Interact with this web-based robot here, and it will tell you if you succeeded.”

Some video games have a “training level” where you can get shot at without dying. Similarly, open source needs a training level where you can learn the skills you need without getting burned. That’s the idea of training missions. When you’re working with a web-based robot, you don’t have to bother a busy person to teach you a basic skill, and no one will know when you screw up.

We know that only a subset of open source skills can be taught with a interactive robot. Some skills are too complex, like being able to solve a bite-sized bug. You would have to perform a lot of sub-tasks to demonstrate your ability at that. Some skills are simply not verifiable by a robot, like creating code or design that is high-quality and achieves what you want. So we’re focusing on robot-verifiable tasks with a small number of steps.

Here’s the beta version of missions. (You have to log in, so you can track your progress.) Let us know what ya think!

I’m John Stumpo, an undergraduate computer engineering student at Johns Hopkins University. I contributed a few small patches to OpenHatch in the spring, and I am happy to be coming on board for the summer as a Google Summer of Code student, with Asheesh as my mentor. My project will be implementing OpenHatch’s automated training missions.

You might be wondering what exactly this whole training mission thing is about.

Consider a user of free and open source software. This user decides that he wants to support some of the projects he uses every day by contributing something back. (If this user knows how to program, this contribution could very well be in the form of code, though it could be something else, such as documentation, otherwise.)

OpenHatch, being the nice resource that it is for finding bite-sized bugs that are good for people just starting out in the open source world, helps him find an interesting task in a project he uses, and he decides to look into what exactly he will need to do to contribute his work when he is finished.

So he finds the project’s website and has a look around for information on how to contribute. But if he is new to contributing to open source projects, the information could be bewildering. “IRC? What’s that? Bugtracker? Sounds really complicated. What’s the deal with this whole Git thing anyway? And I’ve never even heard of diff, let alone knowing how to make a ‘unified’ one, or whatever it is that it’s called.”

So the user gives up on trying to contribute his change. And that’s unfortunate, because he happened to notice the cause of a subtle bug that the project had been trying to track down for the past two weeks but still hadn’t found, and he was going to provide a fix for it too.

Enter OpenHatch’s training missions.

Throughout the summer, I will be implementing automated missions on the OpenHatch website that give tasks to do to learn certain aspects of contributing to open source projects. (A mission for creating tarballs is already up as a preview.) The mission system will check that the mission was done correctly, and if that’s not the case, nobody else has to know.

So the user we mentioned above will be able to get to know the things he needs to get his change into the project by exploring and actually using the tools. Then cloning the project’s Git repository, committing his change, creating a patch of it, posting it in the bugtracker, and discussing the bug in IRC will be no sweat, and the bug gets fixed, all thanks to our user.

You can see what missions are available by going to https://openhatch.org/missions/. That is where missions will appear as we finish building them. The mission for creating a tar archive is ready for you to try!

For a while, I’ve been hearing reports from project maintainers that OpenHatch’s volunteer opportunity finder has not been entirely up-to-date. Some projects reported that we didn’t index all of their bitesize bugs; others said we showed old ones that had already been closed. So I’ve gone through and radically simplified the way we import bugs.

Now I can say with confidence that any change to a bug inside a project’s bug tracker is reflected on OpenHatch within a day. You can always check on the health of our bug tracker imports and our other background tasks at http://openhatch.org/+meta/.

Here’s what it says:

Bugs last polled more than than one day + one hour ago: 0

Zero is a good number! When you’re measuring how many of our volunteer opportunities are stale, you’d better hope there aren’t any. It means we’re making good on the promise of keeping our index of bugs fresh.

Read the rest of this entry »

Do you live in the San Francisco Bay Area?

by Raphael April 22nd, 2010

Are you an OpenHatch user? Do you live in the SF Bay Area? We’ll be visiting – let’s meet up! We’d love to get together with any of users, so if you’re around, send us an email or join our IRC channel (#openhatch on FreeNode).

We are nice, approachable people, so don’t hesitate to ping us (-:

best,

Raffi and Asheesh

This note goes out to the maintainers and contributors of free and open source projects. (Cross-posted at asheesh.org.)

I recently had the chance to look at Mozilla Quality Assurance’s research into the people who help out with testing versions of Firefox. I saw numbers that really spoke to my experience as a volunteer.

On one hand, the vast majority of people put in three or fewer hours a week, most of whom put in one hour or fewer (such as zero).


On the other hand, a huge number wish they could put in a lot more:

Now imagine you’re that one-hour-a-week contributor. You have all these other bits of your life tugging at your time. You want to make sure that when you sit down to work on free software, you’re doing something that really helps out. Otherwise, not only will you feel bad that you aren’t giving free software as much time as you wish, you’ll feel bad that you’re not even making a difference.

In my experience, even reading the project mailing list counts toward that time you’re putting into the project. But that doesn’t feel productive.

So fellow contributors, I have a request for you: Would you be willing to make it super easy for someone to stand waiting, on guard, for instructions from you? Imagine if all they had to do is click a button on your website, write a little bit of info about what they could do, and you would suggest something for them to work on. Maybe you can offer them a bitesize bug to fix, or maybe you need someone to download and test the latest version before you release it. If you’re handing out assignments, then part-time contributors don’t have to spend their time figuring out what they should do.

I want to tell you that I can give you such a button. It would look like this:

To get it, you just have to add a little snippet of HTML to your project website.

Just go to the OpenHatch project list and find your project. If it’s not there yet, search for it, and click the link to create it. Then find the box labeled “Have your own website?” and click.

Ta-da! HTML source code you can copy-paste. Since OpenHatch itself is an open source project, we added the button to our own “source code, etc.” page.

When people click it, they appear in a list of “People willing to help” on your project’s OpenHatch page. Like all the friendly faces on the Gwibber page.

Would you try it, too?

On come the spammers…

by Asheesh March 30th, 2010

It seems OpenHatch has become popular enough to attract spammers. A few weeks, we started asking projects to say how others can help out. We’ve had a really good response to those questions!

Recently we started noticing a few failed requests from users submitting answers. I thought the system worked, so I investigated.

All the failing requests were trying to submit an answer on the same project page, which tipped me off that something might be strange. I noticed that they mostly came from the same IP address, and then I looked at what web browsers these users were using.

One was supposedly using Microsoft Internet Explorer 2.0 on Windows 95. That made me smile! After I noticed that the “Referer” field set to an invalid value, I concluded these requests were probably coming from a bot.

For your enjoyment, I’ve placed a list of some of the spam bot’s best user agents after the fold.
Read the rest of this entry »

Tell an open source project you want to contribute

by Asheesh March 18th, 2010

Many projects have pages explaining how to contribute; the Twisted networking library, for example, has a great list of suggestions. But if none of those is something that can be done right now, a potential contributor might leave the page and forget to come back.

To make it easier to express interest, we just added a new button to our project pages. This is what it looks like:

button

With one click, you can appear in a list of people standing ready to contribute. Now the project knows where to find you. Make sure your profile says what you like doing, and most importantly, leave contact information!

For current contributors, your project page will list people willing to help. You can read their profiles and see what they want to do. Maybe one of them lives nearby; try organizing a two-person bug jam! Once you extend them a personal invitation, they might help out.

To try this out, go to https://openhatch.org/+projects/ and find a project you like.

Hammered by Slashdot. Recovering through daal.

by Asheesh March 15th, 2010

Yesterday we were Slashdotted, where thousands upon thousands of people read our previous post.

To handle the traffic, we bought more RAM for our linode virtual server, learned about Django’s cache_page decorator, temporarily redirected blog traffic to Coral Cache, and added WordPress Super Cache to this blog. I’ve gracelessly rebooted the virtual server three times in the past twenty-four hours.

In good news, we went from 485 users to 614 people, and some new faces showed up in our IRC channel (#openhatch on Freenode)! We have new bugs filed, and people have been answering the project questions. What a burst of activity!

Today, we ate lunch. We used our new eight quart pot and filled it with daal (lentils) with carrots and celery. This way, we’ll never have to cook ever again.

Eight quarts of red lentils

And this afternoon, we’re going to fix the various things that broke loose during the load storm.