You are hereChapter 4: Philosophical Considerations
Submitted by admin on Tue, 10/02/2007 - 11:40
There is another factor to consider in thinking about adopting free and open source software that is unique to nonprofits: and that is a philosophical one. Nonprofits exist because they have a specific mission and philosophy, and work to fulfill that mission according to that philosophy. FOSS exists for many reasons, but one of the most salient is not technical, but philosophical.Philosophy of Free SoftwareAs you might expect, there are many schools of thought regarding the philosophical issues related to free and open source software. What we will outline here is what could be called the 'middle way' of free and open source philosophy - a real appreciation for the basic ideals of free software, and an understanding of the pragmatic issues inherent in implementing technology. Every organization, depending upon its own mission and philosophy, as well as its inclination toward or away from FOSS (usually due to staff experience and expertise) will determine the distance on the path toward full adoption of FOSS that the organization will take.The foundational philosophy behind free and open source software as articulated by the Free Software Foundation is that software freedom means: The freedom to run the program, for any purpose. The freedom to study how the program works, and adapt it to your needs. Access to the source code is a precondition for this. The freedom to redistribute copies so you can help your neighbor. The freedom to improve the program, and release your improvements to the public, so that the whole community benefits. Access to the source code is a precondition for this. The Free Software Foundation feels that all software should be free in accordance with this definition. There are two different threads to these philosophical underpinnings of FOSS - freedom to use, see, modify and distribute code, and the community-driven nature of FOSS. They are interdependent, and, in a nonprofit context, both are important to talk about.Values synchronyFor some organizations, especially those focused on media, progressive technology, and issues of the commons and the ways in which corporate intellectual property demands can weaken and impoverish the commons, use of free and open source software is clearly in line with their mission. Many organizations of this type are already heavily invested in free and open source software.For other organizations, the connection between their mission and the use of free and open source software might be less obvious. Case Study: Times Up! HQ(interview with Aaron Grogan) Times Up! is a small, all-volunteer environmental advocacy group in New York City. Aaron Grogan has the responsibility of taking care of their IT needs, and has worked increase the group's use of FOSS. They have a small headquarters with four desktop computers and a website running the free and open source CMS Drupal. Three of the four desktops are running Ubuntu Linux. They do a lot of video work, and are trying to produce video in non-proprietary formats. They use a variety of free and open source desktop video tools, including as Cinelerra and Kino (for editing video), MPlayer and VLC for reviewing it and for their weekly movie nights. Aaron says that using FOSS has 'allowed us to do a lot with very little. We get donations that are unpredictable in terms of hardware. If we were using Windows there would be all sorts of licensing hassles and such, and logistical issues. We can take advantage of opportunities in terms of hardware donations.'Times UP is a progressive organization, and Aaron explains 'It's been possible to talk with people about how their own progressive politics are resonant with the free software movement.' At the simplest level, software that is without cost (that is 'free as in beer') and freely available, without license restrictions or limits, as described in the previous chapter, provides clear TCO benefit. From a big picture perspective, though, supporting software that is freely available is actually in line with the missions of many nonprofit organizations - those who are focused on providing resources to make the work and lives of organizations and communities better. Community OwnershipThe next aspect of free and open source software is the issue of community ownership. Of course, a single developer, or a few developers started any project, and in a sense. they 'own' it - they determine the direction of development, choose feature sets, etc. However, because the code to the software is accessible and modifiable, in a very basic way it is community owned. Anyone can take the existing code as a starting point and move it in an entirely different direction - this is called a 'fork.'Sometimes, forks happen over differences in opinion about interface design, features, or kinds of applications of software. The Mozilla suite of internet applications, the Firefox browser in particular, has spawned a number of forks, each with its own applications. For example, the Camino browser is based on the original Mozilla code, but optimized for the Macintosh OS. Some forks come about because of philosophical differences on the development team, often around licensing choices. Joomla, a CMS in wide use in the nonprofit sector, is a fork of Mambo. When the 'owners' of Mambo decided that their next release would not be free and open source, a community of developers that had grown around the software took the last version that had been released as open source and forked it under the Joomla name. The leaders of the Xfree86 project (X-Windows) decided to change the license, which prompted a group to create a new fork, called xorg. In these cases, the free and open source nature of the software license allowed developers and users to keep a project alive and thriving.Code that is free can never be lost to a corporate merger, a company going out of business, or a decision to abandon a product. That software can be adopted by anyone, and continue to be used and developed. This community ownership could be thought of as lending strategic value to a software decision, as mentioned previously. Community ownership of software is also in itself consonant with the missions of many nonprofit organizations, whose role is in strengthening community. By using tools that are owned by everyone, you know that you aren't building your work in a way that depends on or benefits any one corporation or institution, but building your work in a way that benefits everyone.The community ownership model of free and open source software means that involvement in that community can have an impact on the direction that software takes. As we'll make clear in the chapter on support, nonprofit involvement in free and open source developer communities has a direct benefit for nonprofit organizations – NPOs get to be involved in making sure that developers pay attention to their needs. Case Study: CiviCRM(text from John Kenyon)John Kenyon has been working with the core development team of CiviCRM (a free and open source nonprofit CRM project) on documentation.'As I documented the tool I not only had many questions about how things worked but why they were built certain ways. As I have found in my work with programmers in the past, there were instances where things seemed not be designed with the users interests paramount. For example, drop down lists of existing fields in the database were in order of how they appeared in the database, so speaking for the user I advocated for the list to be in alphabetical order so that it was easier for the user to find their choice. There was some pushback as this was not a simple thing to do, a good amount of code needed to be written and tested for this to function correctly.'How did it go?'The team listened, understood and acted on my recommendations. Being not only brilliant programmers but understanding that the user, not the programmer, is the most important person in the open source equation, despite having long lists of things they wanted to add or improve, they took the time to change these things.' A key philosophical underpinning of FOSS is 'the freedom to improve the program, and release your improvements to the public, so that the whole community benefits.' Free and open source developer communities work to improve software through the work of many individuals working together. That is, ultimately, what open source communities are for - making free software better, more usable, more capable. And those benefits are equally available to everyone, since the software is freely available to all. Case Study: The Drupal community and Citizen Speak(interview with Jo Lee)CitizenSpeak (CS) is a project that demonstrated how nonprofits can get technology developed in a shared manner that benefits everyone. CS started out as a free e-advocacy tool, but was basically a static site, where the content couldn't be modified or customized easily. It proved its concept, but was not manageable in the long term without a budget. Bids to rebuild the site were in the $7,000 range, which was not possible, as the project is an all-volunteer effort on a shoestring. A proposition was made: have the Drupal community help raise $1500 to rebuild CS as a Drupal module, and make it free and open source. There was interest in the community, and after CS generated some publicity, the $1500 was raised for development of the module. Rebuilding CS in Drupal allowed the site to be updated at a much lower cost, and allowed users of CS to create branded versions of CS for their organizations or networks. In the words of Jo Lee, 'Open Source lowers cost and builds instant community.'Case study: US Social Forum(interview with Jamie McClelland, MayFirst/People Link)The US Social Forum was a conference attended by over 12,000 people, held in Atlanta, GA, in the summer of 2007. The entire technology infrastructure of the conference was put together almost entirely using free and open source software. 'We defined the problem differently than other problems in the past. Rather than say 'there is no effective website taking place' say 'there is no effective technology organizing being done'.' They looked at it not as much as a technology challenge, but as an organizing challenge. The website and registration system, including community blogs, program of sessions, registration and authentication was Drupal based, with custom coding. At the conference, there were 90 computers – 44 dedicated to registration, the rest for public use, and many in the Media Justice Center (a place set up for press and those who worked with media to use computers and upload camera photos and videos and the like.) There were 4 rooms in the Media Justice Center and 7 DSL lines. Each room had a backbone server, which acted as a router and firewall. There were also file/media servers. All of the servers ran Debian Linux, while all of the desktops ran Ubuntu Linux. They were given many computers, and they also were able to buy 60 computers at $45 each. They were running Windows, but there was consensus that installing Linux on all of those desktops would make it much easier to get them up and running and maintained for the length of the conference – it was easiest to support Linux, even for that short a time. In addition, it was easier for them to recruit volunteers who would set up and configure those computers if they ran Linux.For end users, however, there was a different experience. Since the registration system was web-based, it was very straightforward for users (and the registration system was quite robust.) But for users who needed more complex features, like using proprietary media formats, it was difficult to support those issues, since the volunteers had little media experience, and there are also some weaknesses in Linux in that area.The heavy use of Drupal led to a number of bugfixes and code contributions to the Drupal community. Unfortunately, because of the lack of time, the custom code isn't in a format that is appropriate to send back to the Drupal community. It is this value most of all, the value of volunteer labor collectively creating software that anyone can use, that is most in line with the values of nonprofit organizations - whose purpose for existence is the improvement of the lives of individuals and communities. Since the strength of particular free and open source project, as well as the strength of the open source community as a whole, is dependent on the involvement and support of individuals and organizations, having nonprofit organizations use and support free and open source software creates a synergy that improves technological capacity for the entire global community.Of course every nonprofit has its own particular mission, whether to save the whales, feed people, create job opportunities, or shelter people from a hurricane. In that particular mission, they need tools that work, that allow them to accomplish their tasks effectively. The bad news is that for many organizational functions, free and open source software that is usable just doesn't exist yet. The good news is that for many functions it does. And the best news is that collectively, between the nonprofit technology community as a whole, collaboratives of nonprofits and funders, individual nonprofits, and free and open source developer communities, all of the resources necessary are in place to create new viable options for nonprofits. The primary challenge is how to leverage those resources in a way that will create the most value.
|