Polymorph: Zak Greant's Blog

Coaching the Next Generation of FOSS Developers

Each year it seems that there are more and more grumblings about how commercial Open Source conferences are moving further and further away from Free Software and Open Source communities. Incongruously, some of the loudest (or at least most noticed) complaining comes from some of the most consistent participants on the conference circuit. I myself have joined in the guilty pleasure of kvetching about how this year's iteration of a given conference just doesn't have the same soul as some previous year.

I got talking about this very topic with Allison Randal when we were both at the SCALE 6x conference in Los Angeles at the beginning of this year. Many of you reading this blog know Allison either personally, or through her work on Perl, as the architect of Parrot or in her role as the co-chair of OSCON.

We talked about the general complaints that people had (too expensive, too much focus on business, no community spirit, etc.) and the remedies that the O'Reilly folks had tried (most notably OSCamp — a gratis, open-to-all unconference held within OSCON) and how they had worked out.

OSCamp was a good idea, with mixed results. Some people loved it -  for example, it inspired Cal Evans to set up an unconference inside of ZendCon, others were disappointed by it and most OSCON participants ignored it. The main problems seemed to be that the event:

  • wasn't listed on the main schedule (and it is hard to compete with many parallel tracks that have presentations given by well-known speakers);
  • didn't have broad participation from a significant set of the various projects with members attending OSCON
  • didn't have strong support from pronoid compulsive organizers and presenters, who tend to be the grease that lets the gears of an unconference run smoothly

The last theme that we ruminated over was how many free software and open source projects had been running for 10 years or more, from hoary elders like BSD celebrating 30 years, to veterans like the GNU Project and Perl celebrating 20 years, to relative newcomers like Mozilla, MySQL, PHP and Apache who each crew out of the Web boon in the early 90s.

Each generation of FOSS projects has had its own set of challenges and its own base of strength. Many of the earlier projects had a strong academic foundation that provided both the skills needed to develop software, along with the equipment and distribution channels needed to share it. Many of the more recent projects were fueled by the growth of the Internet and how this new media made sharing information and building community incredibly cheap activities.

However, early participants in these communities needed to have some resources — usually: a Net connection, a compulsion to tinker,  programming skill, thick skin, spare time and a problem to solve — to get started. This excluded whole classes of people from getting a start in participating in online communities.

Even today, where open source and free software is fairly commonplace, people are often intimidated at the prospect of getting started in  a given FOSS community. Many projects don't have an easy point of entry and a novice asking the wrong questions may get a rude reception.

Taking all of these ruminations together, we came up with the idea to convert OSCamp into a gratis, open-to-all, highly visible, community-driven, multi-day coaching session designed to help people get a solid start participating in, starting and learning key techniques from free culture, free software and open source communities.

Put another way, we hope to get community members attending OSCON to help a few dozen people (or more) get get started creating open source, sharing free software and building the electronic frontier.

A few months later, I've had a chance to speak to a good number of people about this idea. Almost without exception, everyone I've discussed with has been very excited by the idea. Experienced open source contributors want to share the high-level skills — especially hard-to-transmit-by-email soft people skills –  that they have. Novices who wish to contribute are often intimidated by the complexity of the project that they participate in — this approach gives them a fast and non-threatening way to get started.

Allison has arranged two rooms for the event over the main days of OSCON and has asked Sam Keen (who has done good work on OSCamp) to work on the project with us. Sam in turn has asked Selena Deckelmann of the PostgreSQL project to get involved.

We've set up a wiki (which I will open up to others in a few days) and have started discussions.

My early (and rough) notes (spelling errors and all) on the event follow. If you are interested, please leave a comment and I will ping you when the wiki goes public.

Rough Ideas

I think their overarching goal for the event is to teach people the essential skills of participating in open source projects and collaborative online projects (like Wikipedia).  I also would love to see this event spark a trend towards running similar events at many other conferences that deal with FOSS, Free Culture and the electronic frontier.

On the Mozilla side of things, our goals are to help give people the skills they need to actively enact some part of Mozilla Manifesto. In particular, we want to do these things from Mozilla manifesto:

  • build and enable open-source technologies and communities that support the Manifesto's principles;
  • … keep the Internet an open platform;
  • promote models for creating economic value for the public benefit; and
  • promote the Mozilla Manifesto principles in public discourse and within the Internet industry.

What other goals you each think we should have?

Structure

  • We should have one room that focuses on more or less standard presentations. For ease of preparation we should probably consider having several presenters cooperating to present an overview of each topic.
  • The other room should focus on hands on coaching. For example helping people actually at a Wikipedia entry, or helping someone set up a revision control system account for a given open source project, etc. I expect that the second room also be used for informal presentations on topics that we didn't think to cover.

Potential Topics

I've made a rough list of potential topics for sessions  (in no particular order.)   Each of these sessions should be designed for a variety of attendees, both developers and non-developers:

  • an overview of the  major types of participatory online projects, such as Wikipedia, the Linux kernel, PHP, and so on
  • revision control systems such as SVN, Git and CVS.  We would cover not only how to use them but why you'd want to use them and how to get the best out of them.
  • an overview of free software and open source licensing. Perhaps we should also cover creative Commons licensing, the GNU  Free Documentation License and so on
  • An overview of the free software, open source and various other electronic frontier movements.
  • a session on how to organize and manage online communities
  • a session on how to use wikis and contribute to Wikipedia
  • an overview of the various project tools such as Google code, source Forge, Tigris and so on
  • an overview of how to file bugs, use bug trackers and send patches
  • a session on documentation writing for open projects
  • a session on localizing documentation for open projects
  • a session on localizing open software
  • a coding jumpstart session -  one that helps existing coders understand how to get into the source of the project, how to read developer mailing lists, how to suggest enhancements, and so on.
  • a session on how to promote open projects
  • a session on how to store user groups
  • a session on why and why not to start a nonprofit organization to support an open source project
  • an overview of the technology used to produce many open source projects this can include tools like  GCC,  make, yacc, C,  and so on

Promoting the event

  • we can give the event visibility via the OSCON  website and program
  • blog about the event and encourage others to do so
  • contact tech publishers and encourage them to promote the event
  • contact nonprofits and encourage them to send volunteers and staff
  • contact universities and explain to them the benefits of having their students participate in open source projects
  • contact local user groups
  • contact local specialty bookstores
  • ask participants to promote the event to their communities
  • contact journalists and ask them to promote the event
  • contact consulting firms who have some focus on open source or wish to have a focus on open source and encourage them to send their consultants for training

Other miscellaneous ideas

  • the Mozilla foundation can likely provide some funding for the event (if needed)
  • for the room where we give people hands-on coaching, we should arrange projects that are willing to in effect sponsor someone in the community period for example, if someone wishes to learn about translation and revision control systems, perhaps the PHP community would be willing to set them up with a revision control account on site and get them started translating some of the documentation. Of course, this will rely on what projects and people we have signed up to help with this idea.
  • we should make sure to have a cross disciplinary focus with the set of rooms. We want to support not only programmers, but writers, editors, artists, translators, usability experts, accessibility experts, and so on. In fact, if we identify the audience, and we can get much clearer idea of the contest to present.
  • we should document what we do to make it easier for others to repeat the idea.
  • we should try to transcribe what is discussed again as a way to help people share the ideas are developed at the event

Next Steps

  • Make the wiki fit for public consumption
  • Follow up with interested projects
  • Refine the plans for the event

p.s. How does OSCoach or FLOSSCoach sound as a name?

Tags: , , , , , , , , , , , , , , , , , , , ,

Related posts


Posted on Friday, April 4th, 2008 at 6:56

You can follow any responses to this entry through the RSS 2.0 feed.

You can leave a response, or trackback from your own site.

4 Responses to “Coaching the Next Generation of FOSS Developers”

  1. Gen Kanai (2 comments) Says:
    April 4th, 2008 at 7:19

    Love, love, love the idea. As much as most OSS is built in a geographically distributed fashion, events where people get together are often concentrated learning environments that would be great for this type of activity. The main challenge with this would be location: how to get the people who want to be/should be at this event to the event, when they may be very far away (different continent) from the event location.

    Some other ideas for the event name:
    "Starting OSS Camp"
    "How to OSS"
    "OSS 101"
    "Building OSS"

    (I just don't prefer the term "coaching" event if it may be exactly what you're trying to get at.)

  2. Zak Greant (36 comments) Says:
    April 4th, 2008 at 7:39

    Hey Gen,

    Damn - you read fast. :)

    I think that it will always be difficult to get novice contributors out to a distant and/or expensive event. However, the conference circuit brings experienced FOSS contributors out to many different major cities. If we can start a trend of running FOSS 101 camps along with most FOSS events, then that should reduce the problem of location. Of course, contributors who are away from major centers will lose out — as always.

    As for the name, I like how your suggestions are more direct - potential participants are more likely to be able to understand what the event is from just the name.

  3. Mozilla Foundation activities, week ending 2008/04/04 « Frank Hecker Says:
    April 14th, 2008 at 20:29

    [...] Zak worked on a proposal to hold a session at OSCON on coaching open source developers and other FOSS community members. [...]

  4. Mark SurmaN (1 comments) Says:
    April 18th, 2008 at 14:22

    Finally read this. Great stuff, and like the name suggestions that sound something like 'FOSS 101', or even Free and Open 101 (acronyms are part of what keeps new people away).

    The piece I like most about is the 'traveling road show of FOSS experts'. For the time they are in town, people at an event like OSCON can be a huge resource to *local* people who want to get involved but don't know how. University and high school students who'd like to code. Wikipedia users who'd like to contribute. Mozilla users who'd like to evangelize. All of these local people could benefit (as well as a few regular OSCON attendees … but doesn't seem this is the main audience).

    A tactical marketing question: is it possible to find a couple of Portland university, college or high school teachers who'd be willing to push their star students to this event? For me, this is what works with David Humphries Mozilla course at Seneca -> the teacher inviting and incenting the students to jump in. If you could make some connections like this in Portland before the event, you'd have a home run even if few people from OSCON came as regular participants.

    In terms of bringing people from South Africa for this (which I discussed with Zak), I don't think it's a fit. The people I was thinking about are already running quite sophisticated open content projects. They know how to do the basics. However, they would be interested in something that connected people running open software and content projects together to swap tips on running their communities, and possibly producing some 'how to' documentation along the way. Maybe this is a future event?

    One last thought on Portland comes to mind: get the guys from FreeGeek (http://www.freegeek.org/) to send their volunteers. They would be perfect participants in this.

Leave a Reply

Polymorph is powered by Wordpress running on Apache, Ubuntu Linux, MySQL and PHP.

The marvelous illustration of the Mad Hatter is by the late, great John Tenniel.
Like many great parts of our culture, it is in the public domain.

Contact: zak@greant.com | Gnu Privacy Guard Key

Entries (RSS) and Comments (RSS)