How Vidalia and GIMP found new contributors, just by asking

waiting for my ride in this lonely place

The following is a guest post by my friend Asheesh Laroia, who is one of the people behind OpenHatch.org and other awesomeness on the internet and in real life.

Are there contributors on project mailing lists sitting on the sidelines, waiting to get involved? For GIMP and Vidalia, at least, the answer is Yes.

The GIMP is the famous desktop image editor. Vidalia is a cross-platform desktop app for managing your connection to the Tor anonymity network. Akkana Peck and chiiph, respectively, offered to help new contributors compile the app for the first time and join their communities. The offers created a sense of urgency by naming a specific time to be in the chat room. (Read them: GIMP, Vidalia.)

The point of the event was to find out if actively inviting people to participate could grow the team. I was hoping it would kick prospective contributors into gear, so it was crucial that we named a specific time to be on IRC. I generally hoped the event would prove the existence of a vast, invisible class of contributors: people who aren’t contributing simply because nobody has asked them to. (You can read more about these “Build it” events in the OpenHatch wiki.)

First, the GIMP

Akkana promised that she’d be on the GIMP IRC channel at 03:00 UTC. A few hours early, one person arrived. His motivation was to improve the GIMP Python scripting system:

<kandinski> I would like to help, if possible, with improving python scripting
<kandinski> right now I am writing a script half in scheme half in python
<kandinski> because the scheme has better access to gimp internals, and the python allows me to manipulate the filesystem

It took the attendee some time to download all the dependencies. After 03:00 UTC hit, kandinski began asking development questions:

<kandinski> what happens when you have a configure.ac but not a configure
<akk> Anything from git, you have to run ./autogen.sh instead of ./configure

As the build progressed, kandinski repeated his enthusiasm:

<kandinski> I have been looking for a floss project to pitch in to and maybe learn something from

In the middle of the event, Akkana took a break to tell us in #openhatch how the event was going.

<akk> Only one person showed up for it but it’s good anyway — they want to contribute to python bindings (which is something I’ve been meaning to get off my duff and learn about too)
<akk> so we can inspire each other.
<akk> So not a big “class” but worth doing anyway.

As I read her summary at 1am, I was glad that Akkana retained some enthusiasm. But I was kind of embarrassed that Akkana had set aside time for an event with so few attendees.

Vidalia

I have a philosophy about expectations: it’s more okay to disappoint my friends than total strangers. Akkana will forgive me for possibly wasting her time, but I don’t even know chiiph!

So I did a late-night outreach push for the Vidalia event: I sent chiiph’s post to the #gsoc IRC channel, asked people on the #ubuntu-women IRC to help get the word out, and wrote an email to tor-talk, the Tor discussion list. Then I went to sleep.

chiiph’s event was to start at 13:00 UTC. As I slept, he announced the start of the event in the #vidalia room:

<chiiph> and we are on 🙂

At 13:30 UTC, I woke up. The channel was quiet. I had seen people joining the channel before I went to bed; what happened? A little frantic, I pinged one of the people who joined the night before. (My nick is paulproteus.)

<paulproteus> exa: Psst, hi there
<exa> paulproteus: hi :]
<paulproteus> Are you here for the Build It event?
<exa> yep

After a few minutes, chiiph led a group of five prospective contributors through the process of building Vidalia. Many of the attendees were running Debian-based systems, so a simple “$ sudo apt-get build-dep vidalia” was all it took to get their system configured.

Two attendees seemed particularly enthusiastic about the event:

<nishmu> Okay, now I got all things set up now. now moving on to coding.
<jrklein> FYI, I think that this type of meet is a great idea! I’ve been using tor for several years and hosting high-bandwidth tor servers for a year or so now. Haven’t been using the bundle for OSX all that long, but very happy/impressed with it. 🙂

Within a few hours, they had asked for bugs to work on; chiiph and I obliged and found some good tasks for the newcomers. chiiph seemed reasonably chirpy about the event. Later on Friday, he wrote:

<chiiph> jrklein: ah, right, you are an OSX user… we need more of you in here 😀

Going forward

Will these newcomers be converted into contributors and participate in development? That’s now up to the GIMP and Vidalia communities. The most important thing is that the newbies are plugged into communication systems that the developers use. Both projects are quite IRC-heavy, so if they stick around, there is a good chance that they will be put to good use.

I’m interested in ideas to improve the structure of the event. Akkana knew that building the GIMP might take a long time because of a long dependency chain; kandinski suggested that the event invitation provide some steps for attendees to take (like downloading the tarballs of dependencies) the day before the event.

I also learned that doing good outreach for these events makes a world of a difference. Even though the GIMP has many more users than Vidalia, the Vidalia event had many more participants. Vidalia attendees reported hearing about the event through the #gsoc IRC channel and the tor-talk mailing list. For the GIMP, Akkana emailed the gimp development mailing list and posted on her blog, but we could have done more, like reaching out to the gimp-user email list or any of the web forums where GIMP users spend time. Next time, we should make a checklist for event organizers like Akkana to be sure they think through all the outreach venues that make sense.

chiiph learned to be more pro-active about getting people to speak up:

<chiiph> one thing you should comment other people that do this is the pro-active approach
<chiiph> I mean, I was just expective questions
<chiiph> instead of shouting “ask ask ask ask” 🙂
<chiiph> luckily, you came

For me, the whole point of the event is to be pro-active about asking people to join in. I think it worked.

If you read this far, you’ve earned a quip from me. If you work on a free software project and you wonder why your users aren’t getting involved, I’ll tell you: You’re probably not inviting them to take concrete, non-intimidating actions that move them along the path toward contributing. After asking for jrklein to jump over the hurdle of compiling Vidalia, chiiph got more than that: a contributor on OS X.

I want to thank Danny Piccirillo for helping do outreach for the Build It events, and Akkana for chatting with me long enough for us to come up with this idea.

How you can do this, too (and more about OpenHatch)

OpenHatch is an open source community that helps newcomers find their way into free software projects. We work toward this goal through the OpenHatch.org website and outreach events.

If you want to grow your project, we want to work with you and help that happen. Our wiki has more information about how we ran these Build it events. The best way to get in touch is by joining #openhatch on irc.freenode.net. You can also subscribe to the OpenHatch blog to read our periodic updates.

Something to keep in mind for outreach…

Quote from last night in #gsoc:

<Ophiuchi> The insight that most people in open source didn’t get “allowed” to work on stuff but just didn’t run fast enough at the right moment seems to be rare.

It is a common theme there and also in Season of KDE and in fact any other such endeavor I’ve been a part of.

Whenever you do outreach for your project keep in mind that one of the biggest obstacles you will face is the fact that people think they are not allowed to work on your project. Let’s call it the allowed-trap. You are losing a lot of potentially excellent contributors to it. The reasons for it include:

  • thinking that they are not good enough to make a significant contribution
  • feeling that your project already has enough people working on it
  • thinking that their particular skills are not needed in your project
  • getting the impression that everyone is too busy to take care of a newbie

You can do something about that though: Whenever you see someone falling into the allowed-trap go and invite them personally. Tell them that they are indeed good enough. Tell them that their skills are indeed very much needed in your project. And if you are doing a general outreach event go and address people you want to attend personally and tell them they should take part. Helping someone realize that they are indeed “allowed” here will make their day and yours hopefully too.

PS: Less than a week left to apply for GSoC. Go and apply! You are indeed allowed to 😀


Flattr this

only 2 days left for talk proposals for the Desktop Summit in Berlin

Just a quick reminder: There are only 2 days left to submit talk proposals for the Desktop Summit in Berlin. Do not count on a deadline extension. Submit your talk proposal now at http://desktopsummit.org/cfp. Make the program committee’s life miserable by submitting lots of awesome talks making it hard for us to chose from 😉

PS: While we list a number of topics we are especially interested in we are also very much interested in talks outside these topics if they fit the conference. If you are unsure if your talk would fit please find me on IRC or email me to talk about it.

KDE accepted for Google Summer of Code 2011

I’m thrilled to be able to announce that KDE once again will be taking part in GSoC this year. This is our 7th year in the program. Also check out the other 174 orgs – great projects! Let’s make this a rocking summer once again.

If you are a student now is the time to start working on your proposal. You can either come up with your own idea or get inspired by the ones on our ideas page. Once you know what you want to work on start investigating and write your proposal. Get feedback from the team you want to work with regularly. If you want to write a proposal for your own idea I urge you to get in contact with the team very soon to make sure it is something they want and to get input. If you have questions you can always come to our IRC channel #kde-soc on freenode or join the mailing list kde-soc@kde.org. For details about specific ideas try to contact the respective team directly first via their IRC channel or mailing list please. For more general information about GSoC please visit http://www.google-melange.com – pay special attention to the timeline.

If you are a mentor your next steps are: 1) subscribe to kde-soc-mentor@kde.org  2) sign up on http://www.google-melange.com and apply as a mentor for KDE  3) contact one of the admins to approve your requests. For questions you can reach the admin team in #kde-soc or email them at kde-soc-mentor-owner@kde.org. And of course you’ll have students approach you with questions about their proposals 😉  Below you can find a flowchart with the most important steps of the program. Please check the timeline of the program.


Flattr this

Desktop Summit 2011 CfP opens

The program committee of the Desktop Summit, the joint conference of GNOME and KDE, is happy to announce the Call for Participation. We are looking forward to your excellent submissions on a number of exciting topics, among them:

  • Closer collaboration between GNOME, KDE and related projects
  • GNOME, KDE and the mobile platform
  • The free desktops and social networks
  • Search, meta-data and the semantic desktop
  • The Desktop and the OS
  • Relationship with distributions and platforms
  • Optimizing power, memory and disk I/O usage
  • Designing and writing applications with strong user interfaces
  • Supporting non-technical contributions (e.g. documentation, visual design, marketing, project management, etc.) and attracting new community members
  • GNOME beyond the 3.0 release: the GNOME OS
  • Powerful foundations, elegant interfaces: Improvements in KDE applications
  • Government use of the free desktops; Free Software and non-governmental organization
  • Attention for Free Software software in education and participation of students

Find more details on the Desktop Summit website. Deadline for abstract submission is March 25th but submit today – don’t slack off – wow us! 😛

PS: I would offer cookies for the next 3 submissions but I still owe some to steveire for an Akademy 2010 submission. Better not make new offers before I gave him his well earned cookies 😀

conf.kde.in will be amazing

conf.kde.in will be amazing. I just know it. The local team is kicking ass and taking names. Really cool work so far. And the speakers they have lined up? Puuuurfect! Check them out.

I have the honor to give one of three keynotes. I will be talking about what makes KDE KDE and how you can become a part of it. Don’t miss it! In my other talk “Let me teach you how to fish!” I will be talking about KDE’s mentoring programs (Google Summer of Code, Season of KDE and Google Code-in) and what you need to know to run your own. Since Indian students are great contributors to these programs it might be a good idea to think about running more localized programs. Let’s talk about it. Besides that I will be around to answer any questions you might have about the KDE community. I will probably do a workshop where we can sit together individually and find the best place for you to contribute in KDE.

And one very important thing: Are you wondering if you should go? Are you wondering if you should go even if you don’t write code? Yes you definitely should. There is so much to do that does not need a single line of code from you: translations, artwork, promotion, organizing stuff and so much more. All of it will be talked about at the conference. And if you want I am sure we can convince some of the developers around to help you with your first lines of code 🙂

Oh one more thing: There will be KDE stickers! Come and talk to me at the conference.

(Did you notice that two of the three keynote speakers are female? And that there are more in the rest of the program? Gotta <3 this community.)

Join KDE for Google Code-in!

2010-10-19 16-34-44

Google Code-in is a program for 13 to 18 year old students to get involved in a number of Free Software projects, among them KDE. You will get a cool mentor from the KDE community and work with him or her on exciting tasks. Check out the over 100 tasks that are available currently. We will be adding some more in the next days. There are tasks for nearly every area of KDE. You can find translations, coding, artwork, outreach, research and more among them. Some examples: Help Guillermo prepare a news section for his KDE podcast, help Frederik solve a tricky code problem in Parley, help me figure out how to better present KDE on OpenHatch and much more. Found a task you like? Claim it and wait for your mentor to approve it. And then you can start being part of a team that changes the world one step at a time. Get started walking! 😉 If you have questions join our IRC channel #kde-soc on freenode or ask on the mailinglist kde-soc at kde.org.

There are prizes involved as well. Students get 100$ for each 3 tasks they finish successfully up to 500$ and the 10 best participants get to go to Google’s headquarter in Mountain View. (It is pretty damn awesome there I can tell you.) A little birdie tells me there are t-shirts involved as well. Go go go!

Google Code-in – KDE is in!

KDE has been chosen as one of 20 organisations to mentor students for Google Code-in this year. Wohoooooo. We’re looking forward to working with a bunch of 13 to 18 year olds 🙂 Let’s see how they’ll rock our world. And the most awesome thing: It’s not just about code this time but also documentation, outreach, quality assurance, research, training, translation and user interface.

We’ve been collecting task ideas in the wiki. These tasks need to be transfered into Melange (the webapp that is used for GSoC and Code-In) now. So if you proposed a task there I’ll email you shortly with instructions. If you do have an idea that so far is not in the wiki and you’re willing to mentor it then please email kde-soc-mentor-owner at kde.org with the details.

The students can then start claiming tasks from different organisations starting 22nd. The contest runs until January. Students can claim one task at a time and have a certain amount of hours to complete it. If they complete tasks successfully they get 100$ for each 3 tasks up to 500$ max. And there is a trip to Google’s HQ for the 10 best students \o/ For more details check out the FAQ.

If you’re a student and interested in taking part in Code-in feel free to hang out in our IRC channel #kde-soc on freenode and join our mailing list kde-soc at kde.org if you have questions.

I promise we don’t bite – just like this fellow I met 2 weeks ago on Google’s campus 😛
2010-10-24 11-45-18

It’s Roktober!

2010-10-02 13-44-56

It’s getting colder outside and like in previous years it is time for the Amarok team to look back on the past 12 months. It’s been an astonishing ride including over 4000 commits, a Quick Start Guide and 6 new releases of Amarok.

Now this would not be possible without financial support from our users. This is why we are calling for your support during this year’s Roktober again. We are aiming to raise 5000 Euro to pay for our server and the team’s expenses during development sprints and trade shows. You can help us with that. As a sign of our appreciation for your support we will add donors agreeing to this to the About Dialog of each Amarok release in the next 12 months. Help us Rok the World and get your share of Amarok 😉

You can find more detail about how to participate at http://amarok.kde.org/en/roktober/2010.

A big Thank You! from the whole Amarok team.

Designed not to scale

(This is the second guest post by Asheesh Laroia of OpenHatch, an “open source involvement engine”. OpenHatch is a website and ongoing project to help new contributors find their place in free software projects. If you like this sort of thing, you could subscribe to the OpenHatch blog.)

Now we'll never find him   (Explore)

For most open source projects, just one new contributor would mean a huge increase in energy. As a team member, what can you do to find that person?

Typically, we configure computers to converse with prospective helpers. This “scales” — a new contributor requests a page from your wiki or searches the OpenHatch volunteer opportunity finder, and you don’t have to do anything at all. If things work out, the patches flow in.

This time, I want to talk about outreach strategies where human effort is the bottleneck.

Fedora Design Bounties

With the aim of bringing in one new contributor, Máirín Duffy sometimes writes a “Fedora Design Bounty”, a long description of something she could do herself.

Look at the first one and you’ll get a sense of the process she underwent. She created a splashy web page and discussed a specific issue at length (rather than simply linking to a ticket). She singled out a specific task for a newcomer and provided context showing why it was important that the work gets done. In the “What’s in it for you?” section, she explained how you’ll totally be cooler if you do it. Finally, she made it a contest: anyone can try working on it for 48 hours, and if they don’t succeed, the next person in line gets a shot.

Then she crossed her fingers in hope, hit “publish”, and waited anxiously.

In this case, there was an outpouring of response. Within only a few hours, a fellow named Jef claimed the “bounty”, and a few days later, Máirín congratulated him on the success.

From one perspective, her actions were incomprehensible. If she wanted someone to help her, why didn’t she just file a ticket in the Fedora Design Trac? If she wanted to publicize it, why spend hours writing all this up and making a contest when she could have just blogged a link to the ticket?

And all this time, Jef could have applied his design skills to the team’s work by looking for a suitable ticket in the tracker. Why didn’t he?

There are some intriguing aspects of her strategy:

  • Her request for help feels unusually human. She spells out the tools to use and documents to read. That kind of information (and tone) isn’t even appropriate for a ticket tracker.
  • By creating a time-limited contest, she creates a sense of urgency. Hers is an opportunity for self-improvement, not a red “Overdue” marker in a bug tracker.
  • She worked to put her request in front of lots of people. It hit Planet Fedora, Planet GNOME, and her microblog.

And it worked. She’s created lasting contributors. Jef and Emily, the two successful “ninjas”, have gone on to contribute to the Fedora Design Team in other ways. (Jef even landed an internship at Red Hat!)

A supportive environment with friendly people and “borrowed” resources

In college, I led the Johns Hopkins Association for Computing Machinery, our computer club, for a few years. When I was chair in fall 2005, students’ computers in dorms could not run servers; the firewall would block inbound connections to them. One enthusiastic-yet-timid freshman came by and seemed like he wanted to tinker with running a Linux box. The ACM office is a great place for that, and we had spare hardware on shelves. But we were running out of IP addresses, and most existing machines were too critical for me to hand out root access to a freshman.

We lucked out when we found a discarded computer in the hallway. A sticker declared its hostname, sea.cs.jhu.edu. We brought it back to the ACM office. Since no other machine was using that IP address, we decided to keep using the address until someone complained. So we plugged it in, installed a fresh OS on it, and he got to fiddling.

Now, five years later, he’s a developer in DragonFly BSD and contributes patches to Ogg Theora, Plan 9, and a host of other projects.

The presence of Linux geeks in the ACM office provided an environment that encouraged asking questions and trying personal projects.

What if the ACM had been inactive? The restrictive Hopkins firewall would have blocked his ability to experiment with SSH and learn about UNIX-like systems. And the spare (albeit dodgy) IP address meant that the ACM sysadmins were never tempted to re-purpose the machine to serve the entire ACM membership.

(Also, I think that IP address is unused again…)

What I take from these examples

Fedora Design Bounties and incubating students in the computer club are time-intensive activities. At a great amount of effort, locked within a short period of time, they reach a tiny number of people.

But for that small number of people, they can have a huge impact.

For a project leader like Máirín, one new contributor can boost the energy level of the community. With that as her goal, working hard to find that new contributor makes perfect sense. I believe there are other projects in similar situations, so Danny Piccirillo and OpenHatch are incubating a similar project called Starling Bounties. To prove to the community it can work, we’ll take on the writing effort.

For me, watching people “get it” has always been rewarding. Not all students have access to a support network knowledgeable about open source. So this past weekend, I visited the University of Pennsylvania to try to create one there. With help from other teachers, we gave 30 students hands-on instruction in GNU/Linux, IRC, git, and other concepts key to open source participation.

These mechanisms can only grow as fast as humans pour effort into them. When you want a substantial change from someone, a costly signal shows dedication.

Thanks

After reading all these words, you must be exhausted. Go get yourself a glass of water.

For you lovely readers who stuck it out this far: What do you think of the Fedora Design Bounties? Would you be interested in trying a Starling Bounty with your own project? And I want to hear about the fun things you do to help grow the free software community, even if they “don’t scale”!