People working with FLOSS are not a unified group. There are people of a multitude of political, religious and moral views working with FLOSS. An effort to give a short and specific explanation of FLOSS philosophies and values necessarily has to be somewhat imprecise. One common factor among all in the FLOSS community has to be the view that source sharing is a good thing, for whatever reason. There are organisations who seeks to represent the FLOSS community and some empirical research exploring motivation among FLOSS participants have been done
The organisation FSF are seeking to represent and influence the FLOSS community, and has a lot of expressed philosophies and values, with a strong moral stance. OSI has less focus on moral philosophy and values and emphasises the economic and engineering aspects of FLOSS.
Many important figures in the FLOSS community, like Linus Torvalds, Richard Stallman and Eric Raymond, identify themselves, and are being identified by others, as hackers. This show that the hacker term is important in understanding the FLOSS community. So in our quest to identify common philosophy and values in the FLOSS community it is important to understand the hacker ethics.
You don’t have to be a hacker to participate in FLOSS. To contribute code,
however, you have to like programming, or perhaps being paid to program. The
hacker community, judging by the Hacker Survey
(Lakhain, Wolf, and Bates 2002), is a core part of the FLOSS community. To the statement “Hackers are a primary community with which I identify” 41.5% strongly agreed and 42% somewhat agreed. FLOSS has a strong historical heritage from the hacker community, and the hacker community is still dominating the FLOSS scene.
This is in the process of changing as FLOSS has become more main stream. People are hired to work with FLOSS. 30% of the respondents to the Hacker Survey gave “My contribution creates specific functionality in the code needed for my work” as one of the three top reasons for contributing code to a project. There are businesses experimenting with different business models to profit from FLOSS. IBM HP, RedHat and MySQL AB are example of companies participating in FLOSS.
I will in the following sections more closely describe the hacker ethic. Then I will look into the more pragmatic and technical philosophies in the FLOSS community. Last I will look into the moral philosophies represented by the four freedoms promoted by FSF.
Unlike the public image of the stereotype hacker, a person identifying himself as a hacker is usually not trying to break into private networks. Even if the persons doing this frequently call themselves hackers, and is called hackers by the public, this is not the type of hackers I am going to describe here. The type of hackers I am referring to is the type of hackers defined in the Jargon File. According to the Jargon File, maintained by Eric Raymond , a hacker is (Raymond ):
The interest in exploring programmable systems and the intellectual challenge of creatively overcoming limitation can lead to the “dark side” of hackerdom. The “dark side” meaning breaking into computer systems to make damage, and/or making viruses, worms and other nasty harmful programs. A “dark side” hacker is called a cracker in the Jargon File.
The same Jargon File also define the ethics commonly adhered to by hackers:
Information sharing is different from sharing of material good in the fundamental way that the one who give information do not loose the information he gives. This is illustrated by this African saying:
Two little boys exchanges toys, both went away with one toy each. Two wise men exchanged ideas, both went away with two ideas each.
Through information sharing you get access to the work and ideas of numerous others. By contributing just one idea, millions of others can benefit from it without you loosing anything, more likely you earn respect from it. This is a clear parallel to the academic community, where the open exchange of ideas is essential, but the hacker community has less obstacles to participation. The hacker community is informal, while the structure in the academic community is clearly more rigid, with positions and titles. The second point in the hacker ethic, the one about system-cracking for fun, is more disputed.
Hackers have a belief that there are a near to unlimited number of challenging and interesting problems to work on. There is a thrill in solving intellectually challenging problems, though a thrill that require hard work. If the problem is solved in a elegant and creative way it is even better. Because there are so many interesting problems to work on no problem should have to be solved twice. If a solution is kept secret, the problem has to be solved again for others to benefit from it. Reinventing the wheel should be avoided whenever possible.
The hacker culture is strongly meritocratic. You can not give your self the honour of calling yourself a hacker, but based on your merit this title might be awarded to you by other hackers. The measure of prestige in the hacker culture is the code you produce, the software documentation you write, the tutorial for a computer language you make, or other signs of good craftsmanship in software related tasks you show. The culture do not judge according to gender, race, title, but it do judge according to your ability to contribute. Bragging about your abilities would usually not help to improve your merit, let your work brag for you.
Within the hacker community there is disagreement to whether all information/code should be free. The OSI camp emphasises that it is preferable with free information because it gives better results. In a way you could say that we benefit most from information when it is distributed freely, but you can keep it to yourself if you want to. The FSF camp says that it is morally wrong to deprive your neighbor of information. This views we will look closer into in the following two sections.
OSI, Eric Raymond and Linus Torvalds represents the more pragmatically inclined contingent of the FLOSS community. The emphasis is on the joy of programming, and on how good the FLOSS model is to create good stable software. FLOSS gives you the ability to look into other peoples code, so you can learn from and improve it. FLOSS has so many sensible engineering advantages that it is not necessary to go into the realm of ethics. To keep information to yourself is not morally wrong, but it would be much more helpful if the information is allowed to be used and built upon freely.
The pragmatic reasons sounds better to the ears of a business manager. If your business is in need of software, where the software itself is not meant for sale, like an e-commerce application, you basically have three alternatives. You can buy a proprietary solution from a vendor, you can build your own or you can base it on FLOSS solutions. For businesses that do not have it’s profit from software sale, the large majority, but depend on software to run the business it makes sense to share the cost of developing the necessary software through sponsoring a FLOSS project. Like the previously mentioned SHARE from the fifties shared code, because hardware was seen as the main business.
A majority of software developers do not work on software meant for sales. The majority of developers develop software because a company need it as a service to support it’s revenue generating enterprise. To look at software production though the spectacles of industrial production is misleading in this cases. A developer is not a point in an assembly line, but is more like a doctor asking where it hurts and working to remedy that. Having access to a large tool-set of FLOSS applications makes this much easier and saves the company money.
Many other pragmatic reasons can be given, but the point is that it is many different reasons for the resent interest in FLOSS. For sure most of this interest is based on pragmatic reasons, few of them particularly idealistic. There are arguments for using FLOSS software and sponsoring FLOSS development based entirely on economic considerations.
Parts of the FLOSS movement represented by FSF have elevated the concept of free sharing of information into the realm of ethics. The key elements in the ethics promoted by FSF is outlined in the four freedoms listed in section 4.5. By keeping information to your self you are hoarding information. Restricting access to information is to deprive others of the freedom to use and build upon this information.
The grand old man of FSF, Richard Stallman, in his article Why Software Should Not Have Owners (Stallman 2002) presents key points in the ideology behind free software. Copyright fitted well with the printing press because it restricted only the mass producers, but to restrict copying and editing of digital information restricts the right of the individual user. Stallman argue that the authors have no natural right over what they write, that is why copyright are limited in time. The concept of copyright exists to give the authors some economic gain from their work in order to promote development. Before the computer, copyright only restricted mass producers, but as distribution of information electronically is much simpler than distributing by paper copyright do not restrict only mass producers, but individual users. FSF has made use of copyright in the previously mentioned copyleft scheme. This scheme ensures that the software stays free by requiring modified versions to stay under the same license.
The previously mentioned pragmatic advantages FLOSS gives are happy consequences of freeing information, but it is fundamentally a moral question. In the Hacker Survey 34,2% gave “Code should be open” as one of the top three motivations for FLOSS participation. The majority of FLOSS participants are participating because of pragmatic reasons, but still a substantial part are idealistically motivated. The FSF with it’s moral message kept to the ideals of free software in the eighties and nineties at a time when few believed that free sharing of source code would be anything more than a small niche. Even if the pragmatic reasons for FLOSS are dominating, the moral message is important for bringing the FLOSS concept to life.