Paula Bach, Michael Twidale
Can open source software save the world? Recently Brian Behlendorf, who helped found and develop the Apache Web server open source project and now sits on the Mozilla Foundation board, asked this question. He discussed how open source systems are being built to address some of the world’s major problems: economic distress, natural-disaster responses, broken healthcare systems, education crises, and more.
In July 2009 a group of open source advocates, some of them from large, high-profile open source projects and foundations, launched Open Source for America. Its mission is to serve as a “central advocate to encourage broader U.S. Federal Government support of and participation in Open Source projects and technologies.”
Another recent project called iParticipate, spearheaded by Ben Shneiderman , aims to create a national initiative for participation that includes social and computer scientists and designers who build systems and study the successes and failures of citizen participation in social media. Shneiderman cites crowdsourcing innovation and open source as examples of social-media participation.
In Mozilla’s pursuit to change the way people interact with the Internet, it created Mozilla Labs, with the aim of bringing people together to innovate. One of its main projects is a series of “Design Challenges” aimed at designers and design students, tasked with innovating the way people interact with the Internet. Each challenge has a specific goal. One of the fall 2009 challenges summoned contestants to make use of browsing and search-history data and present that information to users in a useful way.
Open source is important in the scope of the world, government, research, industry, and education and presents new trends in how to engage in social participation. Open Source for America, conversely, occurs on a local level that proposes open source technologies in our government and follows the rhetoric of openness, including open democracy and open standards. The iParticipate project likewise follows this rhetoric, but proposes ways to help support people in their endeavors to participate in an unfolding open society. One of Mozilla’s core tenets is to preserve openness on the Internet. Socially meaningful participation isn’t newit happens in churches, neighborhood communities, professional organizations, and many other venuesbut we’ve just begun to look at social participation on the Web. Of particular interest here is how designers can participate in socially meaningful ways in open source projects. Before we turn to this particular interest, we’ll give an overview of social participation.
Socially Meaningful Participation
Socially meaningful participation has the appeal of participatory culture and social networking; it can be defined as the expectations community members have of interdependence, mutual obligations, and cooperation. Meeting these expectations builds social capital. Social capital is the goal of social participation, and its quality is crucial. Trust, resources for activities, and relationships are key factors for social capital of high quality. The activities of individuals mark participation. Individuals make use of the benefits of participation while contributing to the overall good of the project. But communities should be aware of the “what’s in it for me” kinds of participation and others who might be “free riding.”
What does social participation mean for designers, and how can designers benefit open source communities?
Social Participation in Open Source for Designers
Designers working on open source projects are relatively rare compared with the thousands of developers who contribute to projects, but designer participation has been slowly increasing. GNOME, KDE, Mozilla, openoffice. org, and Drupal, to name a few, have embraced designers as a valuable resource in the community. Many of these projects have a backing foundation with resources to pay designers to help them strategize user experience. Plenty of other projects, however, are in need of design work. Open source, because it is by definition a social good, has many opportunities for designers to help change the world, especially for those who are looking to offer pro bono work. The social good in open source software communities comes in many forms.
Contributors to an open source project can also benefit from using the software, depending on its domain. For example, many people use the Firefox browser; making the browser better by offering quality design feedback and new design ideas can be rewarding for designers. Contributing to its community can be rewarding as well, based on the connections made with people who are passionate about Firefox. If a designer possesses a great deal of passion for a hobby, then he or she might become involved in an open source project related to that hobby. For example, the World of Warcraft (WoW) community has a subset of users who have built an open source software tool to compare and explore different resources, or “gear,” of various characters in WoW. Various participants in the community contribute many kinds of expertise. Designers would gain from participating in a community where members share similar passions and differing expertise while simultaneously building social capital, all of which benefits the community. For the designers looking for volunteer opportunities akin to Habitat for Humanity, where people come together and build houses for those less fortunate, some open source software projects have arisen out of a need to help others, particularly in crisis. The Sahana project builds software that helps manage common coordination problems during disasters. This Sri Lankan open source community came together after the 2004 Indian Ocean tsunami; distributing clothing and food to victims was very difficult because the government lacked an infrastructure for pulling together the magnitude of donations. No communications or tracking structure existed. The community is now sustainable and has won an open source community-choice award. Other examples of software for those in need include a microfinance system, called Mifos, which boosts economic development in third-world countries. And for those who care deeply about underfunded schools that can’t afford IT systems, the open source project SchoolTool provides a school information system.
While social good is an overarching benefit of participating in open source, connecting and identifying with others on the Internet cannot be ignored. On his website (http://www.tbray.org/ongoing/When/200x/2007/10/04/Intimate-Internet), Tim Bray states, “The killer app on the Internet is other people.” Making connections with other designers both inside and outside of the open source community is professionally rewarding on many levels. Because open source software is not bound to non-disclosure agreements that prevent designers outside of a project to show their work they can share ideas and get feedback on their designs. While many open source projects don’t yet have multiple designers or design researchers, more experienced developers review contributed code of less experienced developers and give feedback. Developers also enjoy working with hacker gurus and seeing their code. This type of mentor/mentee relationship is possible for designers too and has worked well for three years in the Season of Usability program, which pairs open source projects with designer mentors and design students to expose students to open source projects with the guidance of an expert. Opportunities of this type exist in open source for experienced designers who may not have the chance to lead initiatives in their paid job. It’s an occasion to become an open source design guru among a variety of contributors. The best open source projects are those still able to unite people and get something done even with diverse interests and players. This diversity appeals to a community of people working toward a common goal: designers, developers, users, and other contributors producing software for social good.
Social participation for open source designers means embracing opportunities to engage in participatory culture, making social connections in a community where their design skills are valuable resources.
Open Source Community Culture
Open source community culture differs widely depending on the type of software being developed, the number of members, and the business model, among other factors. Overall, open source-software culture includes a community of developers and users who are passionate about the software they are producing. They are proud of their achievements and continuously work to improve the technical specifications of the software. As such, their customs surround a culture of rationality. This means they have a tendency to think about their users in the same wayas technologically rational. The technical rationality is not new and often occurs in other software-development contexts, but open source developers tend to treat their projects as their babies, so they are very protective. Joining an open source project is a matter of understanding the culture, easing into the environment, and building trust and social capital with the other community members. Some debate exists over whether coming into an open source environment is a matter of establishing your authority with science and data or easing your way into the project carefully by building trust and slowly establishing merit by offering design solutions for various issues both in the bug tracker and for the overall user experience. Bossy, critical designers won’t be welcome in any FLOSS (free/libre/open source software) environment. Understanding this culture, however, helps any designer consider how to begin integrating into open source culture.
Community Structure and Decision-Making Power
The onion model depicts community structure in open source (see Figure 1), and its concentric rings represent decision-making power with respect to contributions . At the innermost core, decision making is most concentrated. The core team consists of one or more developers who make decisions about the software’s direction and contributions to the code base. The next three outward circles consist of developers. The committers have commit rights that allow admission of code into the main code base. Active developers regularly contribute to the source code repository, while peripheral developers submit code as patches, meaning their code does not enter the main code base until a review from the core team. The last two circles represent users. Active users contribute documentation, localization, supporting users in discussion forums, or filing bug reports. Passive users download and use the software without connecting to the community.
Notice that no ring exists for designers. Hedberg and Iivari developed a hypothetical model that includes design roles . Their model includes another level on the oniona stacked onionthat allows for the addition of a “human level” to the technical level. The decisions flow between the design (human level in the model) core and the technical core. See Figure 2 for the proposed model.
Using the model as a guide, designers have the most impact connecting with core developers and building trust through social capital. When designers connect with core developers and make allies, their skills are valued and often sought after .
The Tools of Open Source
The nature of open sourcesoftware development is global and distributed. Project contributions occur via communication and coordination tools over the Internet. The tools of open source have been appropriated or developed by open source contributors, developers and users alike, to communicate about and coordinate their activities. Typically, open source project members use discussion forums, email, and IRC (inter-relay chat) to communicate, plus an online bug tracker such as Bugzilla and a source-code repository and versioning system such as SVN (subversion).
Some design discussions happen on mailing lists and discussion forums, but no centralized system for supporting design activities yet exists . Both openoffice.org and Firefox push user experience design information to the community regularly via a blog dedicated to planning and current issues . Some mailing lists have used ASCII art to mock up designs as well as provide links to static image designs. Links to such images are also found in discussion forums. However, this method of communicating designs is inadequate. Research has proposed design solutions to support user-experience design activities in open source contexts, including a design workspace that includes features such as a to-do list for design work categorized for new-bies or more experienced design contributors, repositories and work space for user research, design-iteration space, comments and links to related issues in the bug tracker, and data and results from evaluations 
Designer-Led Open Source Projects
As a summary and generalization of the benefits for designers engaged in social participation in open source, we’ll draw on Jenkins et al.  as they define participatory culture as one:
- With relatively low barriers to artistic expression and civic engagement
- With strong support for creating and sharing one’s creations with others
- With some type of informal mentorship whereby what is known by the most experienced is passed along to novices
- Where members believe that their contributions matter
- Where members feel some degree of social connection with one another (at the least they care what other people think about what they have created).
Open source is a participatory culture and one that offers mutual benefits for designers.
As a parting thought, we’d like to propose a designer-led open source project. Designers would conceptualize this projectit might be to scratch an itch, to improve upon an existing tool, to test a concept, or to completely rethink a paradigmatic software product. An open source project initiated and run by designers would engender a different culture and community structure, one that put design thinking at the forefront. Design-sensitive developers could recognize the design-based merit system within the community and be willing to lend their coding skills to design-based open source projects. This new spin on the design environment and on open source encapsulates the excitement of the 21st century: innovating and learning in communities of practice while producing meaningful software. Social participation in open source is the next step for designers to change the world.
2. Antikainen, M., Aaltonen, T., Vaisanen, J., Feller, J., Fitzgerald, B., Schcchi, W. and Silitti, A. “The Role of Trust in OSS CommunitiesA Case Linux Kernel community.” In Open Source Development, Adoption and Innovation, 223228. New York: Springer, 2007.
4. Muehling, J., and Reitmayr, E. “Integrating Usability with Open Source Software Development: Case Studies from the Initiative OpenUsability.” In Proceedings of the tOSSad Workshop on Governmental, Educational, Usability, and Legal Issues towards Open Source Software Adoption in an Enlarged Europe, 65, Como, Italy, 2006.
5. Twidale, M.B., and Nichols, D.M. “Exploring Usability Discussions in Open Source Development.” In Proceedings of the 38th Annual Hawaii International Conference on System Sciences (HCICS, 05). Hawaii: IEEE Computer Press Society, 2005.
6. Bach, P.M. and Carroll, J.M. “FLOSS UX design: An Analysis of User Experience Design in Firefox and OpenOffice.org.” In Open Source Ecosystems: Diverse Communities Interacting, Ed. Boldyreff, B., Crowston. K., Lundell, B., and Wasserman, A.I. Boston: Springer, 2009.
8. Jenkins, H., Puroshotma, R., Clinton, K., Weigel M., and Robison, A.J. “Confronting the Challenges of Participatory Culture: Media Education for the 21st Century,” 2005 available at http://www.newmedialiteracies.org/files/working/NMLWhitePaper.pdf. Retrieved on 6/22/2009.
Paula Bach is a UX researcher at Microsoft. Previously she was a post-doctoral research associate at The University of Illinois Graduate School of Library and Information Science (GSLIS) working with Mike Twidale and funded through the NSF Computing Innovation Fellowship program. Bach completed her thesis, “Supporting the User Experience in Free/Libre/Open Source Software (FLOSS) Development” working in the Computer Supported Collaborative Learning Lab and Penn State Center for HCI under the direction of Jack Carroll, Edward M. Frymoyer professor of Information Sciences and Technology. She is still working with Twidale to continue and extend her research on ways in which sociotechnical solutions can foster participation from HCI professionals and HCI-interested users as well as investigating other ways to make FLOSS more usable.
Michael Twidale is a Professor of the Graduate School of Library and Information Science, University of Illinois at Urbana-Champaign. His research interests include computer supported cooperative work, computer supported collaborative learning, human computer interaction, information visualization, and museum informatics. Current projects include studies of informal social learning of technology, technological appropriation, collaborative approaches to managing data quality, the use of mashups to create ligh-weith applications, collaborative information retrieval, ubiquitous learning and the usability of open source software. His approach involves the use of interdisciplinary techniques to develop high-speed, low-cost methods to better understand the needs of people, and their difficulties with existing computer applications as part of the process of designing more effective systems.
©2010 ACM 1072-5220/10/0300 $10.00
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. To copy otherwise, to republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee.
The Digital Library is published by the Association for Computing Machinery. Copyright © 2010 ACM, Inc.