What are you avoiding working on?
I remember working on my first big group programming project back in college. The project involved some web scraping work; I enthusiastically took charge of that part. But a few weeks in, my code just wasn’t working. I felt frustrated and helpless — I’m supposed to be the scraping expert, so why couldn’t I fix the problems? I retreated into hiding and didn’t want to think about the group of people or the project.
A week later, I feebly ran svn update to see how the project had progressed. “Oh!” I exclaimed to myself. “Someone made the data importer work!” I felt a rush of relief. (While writing this paragraph, I sighed again remembering it.)
When I talked to my teammate George, he mentioned off-handedly that he had fixed it. He didn’t feel any of the anguish I felt or assign me the blame I thought I deserved. I guess if I had just asked for help earlier, I could have skipped the feelings of inadequacy entirely and George would have just fixed the bug.
Half a decade later, I feel the same dread about the lack of Maildir support in Alpine. The bug is three years old! Ugh.
This time, I’m going to ask for help. So I listed the issue on the Alpine project page on OpenHatch. To do the same thing, here’s how:
- Go to the OpenHatch projects list and enter your project’s name. That will take to your project page.
- Answer the last question, “What is a bug or issue that you’ve been putting off, neglecting, or just plain avoiding?”
- Hit submit! We’ll help you sign in with your Google account or other OpenID.
For those of you who work on Free Software projects, what are the issues that drain you the same way?
No bug tracker I’ve seen has a field that says, “I’m avoiding working on this, and that sucks.” To say that, list the issue on your project’s OpenHatch page.
So join in! What are the issues you don’t want to think about? Once you share them, maybe a fellow developer or a new contributor will come by and help you out.
Head to OpenHatch and let the world know.
P.S. Do you have any ideas about how we can make these project pages more useful? Let us know!
P.P.S. Dear Joey Hess and everyone else, sorry that Alpine still doesn’t have Maildir support.
(Cross-posted to asheesh.org.)
Working at OpenHatch: Extreme Programming, Simple Lifestyle
Hello OpenHatchers! I’m Parker, OpenHatch’s in-house winter intern. I’m writing to share a little bit about what work is like at the Flophouse (OpenHatch HQ, AKA Raffi and Asheesh’s living room)—because it’s pretty awesome.
We use pair programming, an Extreme Programming (yeah, I know—best name ever) methodology where two people share a computer and work together. I usually pair with Raffi while Asheesh works from another computer adjacent to us. At first, pairing felt like extremely effective personal training. But now that I’ve been brought up to speed, pairing with Raffi is more of a collaborative process. I’ve learned that the most important part of programming is making choices, and Raffi and I build off of each other to choose the best approach to a problem. We also help each other catch typos and stay focused—I can’t get away with checking Facebook when Raffi is looking over my shoulder!
Tell your open source story, including your GitHub contributions
Greetings OpenHatchers! Just writing to officially announce that you can automatically aggregate your GitHub contributions using the OpenHatch importer. This includes the repositories you’ve started, contributed to, or forked.
Go ahead and put together the story of your participation in open source by importing your contributions from other communities. We now support Launchpad, Ohloh, and GitHub, with more on the way, and you can always add projects that the importer missed.
Check out Seth Woodworth’s profile to see how GitHub contributions look.
What do you think? As always, you can post a thought below, or reach us otherwise.
Help conceive open source collaboration in 2010
As 2010 begins, I want to ask: What encourages you to work on Free Software today — writing/fixing software, documentation, and translations? What would encourage you in the future?
When it comes to collaboration in FLOSS, most of the attention is directed toward tools: bug trackers, version control systems, mailing lists, IRC. What has received less focus are the incentives which encourage use of these tools in the first place.
Some ideas
We’ve been thinking about what we can do to motivate collaboration. Here are our favorite plans:
How do I get involved in free and open source software?
“How do I get involved in free and open source software?”
“How do I encourage people to join my project?”
Gregory Wilson, a CS professor at UToronto, cites some recent successes at answering these questions with respect to students: “Google Summer of Code and UCOSP have both shown that it’s easier for students to get into open source projects if there’s a pile of tiny tickets for them to start with.” We believe that these “bite-size” bug lists can benefit all sorts of new contributors, student or not. What you might not know is that more than a hundred projects have these small tasks tagged and waiting for you in their bug trackers.
To make it easier to find these, the OpenHatch volunteer opportunity finder allows you to browse, in one place, nearly 1000 bite-size bugs.
Do you know another project with bite-size opportunities we should index? You can get your project involved. Check out the list of bug trackers we index. If you contribute to a project, go to your bug tracker right now and label a few as bite-size. Then add your bug tracker to our index.
I want to especially thank GNOME for the ongoing GNOME Love effort that is our inspiration and the source of hundreds of these bite-size opportunities.
Happy hacking!
Browse bugs by language and toughness
As part of our mission to make it simpler to contribute to free/open source software, we’ve added some links to the volunteer opportunity search engine that allow you to zip around the bug base at the flick of an index finger.
Click bitesize to find bugs whose underlying problems are relatively well defined and rewarding to solve.
We’ve recently added a few thousand bugs to the system, representing projects in Python, C# and C. Thousands more issues and a wider range of languages are in the offing, so if only Ruby rubs you the right way, or Forth is more your forte, don’t fret.
How we’re different from Ohloh
OpenHatch is an open source involvement engine, a different sort of open source contributor network. We’re happy to be in a web with a growing number of sites targeted at the Free Software community, Ohloh being one of the most well-known. Here are a few things that set us apart from Ohloh:
Automatically import your contributions
If you tell OpenHatch a username or email address you’ve used to commit to an open source code repository, we’ll do our best to get information about what projects you have contributed to. (You can read more about how the importer works.) We provide this on top of the Ohloh API, but even Ohloh’s website doesn’t let you simply search for your committer username.
Be proud of all your contributions
OpenHatch lets you showcase your work even if your name isn’t in the version history. Patches, translations, and documentation you’ve authored are often stored in the repository under the name of the person who committed them. This means many metrics providers, like Ohloh right now, don’t count you as contributing to projects where you don’t have commit access. By contrast, our profile engine lets you add links to contributions beyond just what the repository stores.
Most people who provide translations and documentation do not have commit access. Their efforts are entirely missed by repository analysis. We believe these people are part of the community, and this is reflected in how we built the system.
Your OpenHatch profile can include all the ways you’ve contributed. If your contribution was not automatically imported, just click “Add a project”, then “Add link”!
Find new things to work on
Ever get burned out working on the same project all the time? We offer a bug search engine we call the volunteer opportunity finder. You can search by programming language or by keyword. We highlight bugs that have been marked by their projects as “bite-sized”, i.e., good for newcomers.
I hope experienced and new contributors will find this useful.
People first
Every person you see listed is someone who has signed into OpenHatch, never an anonymous identifier. As you click on someone’s personal information, you find more people like him or her. In your profile, we showcase your collaborators alongside your contributions. These features remind me that Free Software is not about territoriality but about collaboration.
Even for projects where I’ve made just a small difference, it’s nice to realize that I’m part of a team. And what a pleasant surprise it is when a friend appears in the list!
By helping people find each other, we’re also looking forward to helping foster mentoring relationships between participants in the community.
By contrast, Ohloh is a primarily a directory of projects and a provider of code analysis tools. Their code history analysis is best-in-class, and that is where their focus lies.
Hack our source, file bugs, and chat on IRC
- Source code under AGPLv3
- Bug tracker
- Chat: #openhatch on irc.freenode.net.
You already have an account
Because we use OpenID, you don’t have to sign up for an account with us to get started. Just click on an account provider you already use (or the OpenID logo, for a custom URL) and log in.
So what are you waiting for? Click here to sign in and get started!
How the importer works
This is just a quick note: I wrote a small page explaining what happens when you import your contributions into your OpenHatch profile.
Dr. McGonigal, or, How I Learned to Stop Worrying and Love Gay Mechanics, part two
Last you heard from us, we were discussing the various common types of game mechanics and game players, including examples from both traditional games and game-like web apps. Today we’re discussing a few of the websites that most inspired us to employ game mechanics and, more fundamentally, try to make OpenHatch addictive.
1.) thesixtyone
thesixtyone is a music discovery site. The site’s stated mission is to make music more meritocratic and help good unknown stuff rise to the top. To that end, users of the site are given a certain number of ‘hearts’ each day. Users listen to songs and, if they like them, can give them one of their hearts. The incentive to only heart stuff you like is 1.) songs that get lots of hearts tend to get pushed to the front page of the site and 2.) if a song gets lots of hearts after you heart it, the song pays you dividends in the form of ‘reputation’ (the sixtyone’s equivalent of points). It’s basically mechanizing the “I listened to them before they were cool” cliche.
Dr. McGonigal, or, How I Learned to Stop Worrying and Love Gay Mechanics, part one
So. Game mechanics. There’s a good lot of material out there about game mechanics as applied to typical game formats–board games, video games, etc. All of the examples on the ‘Game Mechanic’ Wikipedia page fall in this category. So too do most of the papers at GAMBIT, MIT’s game lab. But surely it’s obvious that game mechanics can be applied much more broadly. From the Wikipedia article, the definition of a game mechanic is “a construct of rules intended to produce an enjoyable game or gameplay.” Substitute ‘user experience’ for ‘gameplay’ and suddenly we have something really useful to think about. Thinking about game mechanics in terms of user experience allows us to blur the line between games and social networks, explain the success of many of the most popular Web 2.0-era websites, and, most importantly, engineer ways to make OpenHatch fun and addictive.
Strangely, though, there aren’t that many resources out there right now for learning how to apply game mechanics to things that are non-obviously games. Currently, there are only four hits on Google for “applied game mechanics”. That’s only 0.02% of the number of hits for “gay mechanics”! So the point of this post is to share with the world what my fellow OpenHatchers and I have found in our research about how to apply game mechanics to non-game websites.