User:Benjamin Mako Hill/BitFront
Introduction
SJ Starts
Support gang anecdote:
- We just need that smart-alec in the schoolyard who helps everyone else. -- Chris Ball (Slide)
- December 19th -- community meeting, GDK, Holt, SJ, CJB, Kim, Walter, JG.
- Pre-meetings, then weekly Sunday meetings started Christmas week.
- Many people at OLPC were skeptical that this would be a good idea, despite our broad support from the Free Software Community. Who wants to do technical support for free?
- KQ to AH: Do you know what it will take to manage them? (Answer: Nope. But we can tell you what we've learned.)
(Slide)
Initially limited to the US, the support gang now extends to L. America, with F.Libre in Peru and olpc-sur, attracting more es-speakers. Again, many remain without their own XO (and some not wanting one!).
Introduction to Mako
Examples of Communities
When your ultimate goal is to do more than you are capable of, you need to look for help. We've looked for help by trying to emulate and build on top of existing community software and content based projects projects.
These represent two types of communities:
- Communities of people inspired to help because they want to change the world.
- Communities of users.
To date, OLPC has been working primarily with the latter group, but as laptops get out there, we need to start thinking about how we want to facilitate that type of community as well. We'll try to talk about both.
Free and Open Source Software
My background is in FOSS where I started contributing to a series of operating system projects when I was 12. I was never paid to work on such a project until I was 24. My experience then, is mostly as a community contributor. Most of my work at OLPC has been as an advisor and volunteer.
I was inspired to do so for the two reasons mentioned above. I'll try to describe the way this has worked in more detail:
- First, by talking about the experience and example of the free and open source software and Wikipedia.
- Second by talking about OLPC.
Changing the World
Free software, many people don't realize, started and continues to be driven in part by the existence of a social movement for what is called software freedom.
Software freedom is something very specific:
- The freedom to use software for any purpose;
- The freedom to study and modify and fix;
- The freedom to share and redistribute;
- The freedom to collaborate with others;
Richard Stallman (who came up with this) was and is a Utopian visionary. This is a vision of autonomy and user empowerment that proved extraordinarily appealing to technologists.
The result was that a small group (but a decreasingly small group over time) of technologists and activists trying to empower people (and, in particular, people like themselves who were programming). They did so by working together to create a completely free platform.
Now, I share his vision but you don't have to share his vision to realize the practical benefit of building such a vision. It provides:
- A goal to work toward (and that is more valuable to individuals than particular roadblocks.
- A set of shared principles and stories
This vision inspired the work (support, use, development, documentation writing) that made FOSS a success.
User Communities
Open Source happened with ESR noticed that people collaborating on their software were producing software that was actually better. His argument was simple:
- With more people contributing, things became better (in particular bugs went away)
- Users tried to solve their own problem and were better at solving their problems than manufacturers were.
This made sense, of course, because:
- There are many more users than designers.
- Users often understand their problems better than designers and implementers do.
- There were forms of reward and compensation other than payment that were important (i.e., recognition)
The free and open source movement exploded in the late 1990s and that's not a coincidence:
- Connectivity allowed for collaborative production on previously impossible scales between non-collated individuals
- Software (and other systems) were largely user prototype-able (tools necessary build, test, and deploy were just computers).
- Licenses existed to allow (and protect collaborative sharing) and work.
But of course, things were not limited to development. We've already mentioned our support gang and we saw similar things.
In the Ubuntu project, we've created Local Communities (more than 200) and a massive forum with half a million registered members and 5 million posts!
Wikipedia
Wikipedia is an even stronger example of how an empowered community can do amazing things.
Wikipedia content, organization, and governance over content has always been located in the community. Structures, and even the legal structures around the organization have the product of self-organization.
English with 2million+, ~20 with 100,000+ articles, ~100 with 10,000 so and so forth. Each are initiated, governed, and empowered by active community members. Community development in country is entirely driven.
There are community run events (Wikimania and Wikipedia University).
There are even local chapters which are associate legal entities created by community members to promote and help support Wikipedia and Wikimedia projects in country.
Lessons
Now, we've spent a bunch of time talking about communities around software and content because these are two areas that are very relevant to OLPC and lso because they are two communities we have personally worked hard to leverage in producing what we've shown here.
Here are some concrete ideas that we've pulled from the communities we've worked with:
- Recognition: Recognizing the world of positive contributions can be essential to motivating a community. All major contributors start out by trying something and their experience will frame their future engagement.
- Empowerment: People don't like to feel like they are "free labor" or treated as such. People like to be empowered and autonomous. A sense of independence and power over own direction is often essential. Ironically, the less one does to shape this the better.
- Goals: Have a goal, a Utopian/ideal vision of what is desired, what others are working towards. This helps direct development, create common ground, and motivate people.
- Infrastructure: The most important thing a community-based organization can do is empower communities
OLPC Communities
OLPC is a wonderful examples of a community of people inspired by the example of doing some great.
Pre-G1G1, OLPC had already received contribution from thousands of volunteers. These were people contributing to a project that they suspected they would never benefit from.
As G1G1 laptops have gone out, we've seen major proliferation of OLPC user groups, support groups, forums, and advocacy communities.
This has happened in a variety of spaces and in a variety of ways.
Software & tools
- Our OS is entirely based on existing open source communities and we've need to learn to work with them. Fedora, OpenWRT, and others have all been instrumental to producing what we have and giving the flexibility we need to do the innovative work on software that we have.
- Activities almost almost entirely contributed by community members. OLPC is focusing on building infrastructure to empower
Activities, git committers : ?
- Trac users: bug reporting, triaging, and more is done through community contribution -- OLPC doesn't always see eye to eye but the dialog is essential.
Local chapters & communication
- Wiki editors: We have a enormous public wiki covering a variety of topics that we consult repeated in the course of our internal work
- Localization: Translation and localization is highly dependent on working with user communities
- Blogs, news sources
- Countries & regions
notes
BMH - implementation of microgobby in js, for obby-wiki : frontend for mwiki for real-time collab. but see: js has contained networking, no socket reps.