Free Software

What is Free/Open Source Software?

Free and open-source software (FOSS) is software that can be classified as both free software and open source software. That is, anyone is freely licensed to use, copy, study, and change the software in any way, and the source code is openly shared so that people are encouraged to voluntarily improve the design of the software. This is in contrast to proprietary software, where the software is under restrictive copyright and the source code is hidden from the users, so that the rights holders (the software publishers) can sell the final program.

Free and Open Source Software (FOSS) has become an international phenomenon, moving from relative obscurity to being the latest buzzword in a few short years. However, there is still a lack of understanding about what really constitutes FOSS and the ramifications of this new concept. To better explain this phenomenon, we will examine the philosophy and development methods behind FOSS.

Basic principles of Free Software

There are two major philosophies in the FOSS world: the Free Software Foundation (FSF) philosophy and the Open Source Initiative (OSI) philosophy. We begin with the FSF philosophy, due to its historical precedence (see the following section, “A Brief History of FOSS”) and pioneering position in the movement.

According to the FSF, free software is about protecting four user freedoms:

The freedom to run a program, for any purpose;

The freedom to study how a program works and adapt it to a person’s needs. Access to the source code is a precondition for this;

The freedom to redistribute copies so that you can help your neighbour; and

The freedom to improve a program and release your improvements to the public, so that the whole community benefits. Access to the source code is a precondition for this.

At the heart of FSF is the freedom to cooperate. Because non-free (free as in freedom, not price) software restricts the freedom to cooperate, FSF considers non-free software unethical. FSF is also opposed to software patents and additional restrictions to existing copyright laws. All of these restrict the four user freedoms listed above. For a more detailed explanation of why software needs to be free, please refer to the FSF explanation, “Why Software Should Be Free”, found at http://www.gnu.org/philosophy/shouldbefree.html

The OSI philosophy is somewhat different:

The basic idea behind open source is very simple: When programmers can read, redistribute, and modify the source code for a piece of software, the software evolves. People improve it, people adapt it, people fix bugs. And this can happen at a speed that, if one is used to the slow pace of conventional software development, seems astonishing.

The OSI is focused on the technical values of making powerful, reliable software, and is more business-friendly than the FSF. It is less focused on the moral issues of Free Software and more on the practical advantages of the FOSS distributed development method.

While the fundamental philosophy of the two movements are different, both FSF and OSI share the same space and cooperate on practical grounds like software development, efforts against proprietary software, software patents, and the like. As Richard Stallman says, the Free Software Movement and the Open Source Movement are two political parties in the same community.

Why Free Software is important

Introduction

If you are coming from the introductory entry on FOSS and if you have been reading carefully enough, you will in fact already have encountered one of the advantages of FOSS. We were too lazy (we like to call it too smart) to write that section from scratch. We thought that we were probably not the first to think of writing such a text and that someone else might indeed have already written such a text and put it up on the internet. And indeed, we did find such a text. And what’s even better is that that text was published under a free licence, which means that we could copy it, change it to suit our needs and publish it here. While that text is obviously not a piece of software, it is important to notice that the free culture and free knowledge movement has to a large extent started out of the free software movement. Furthermore, they share many of the reasons that speak for them.

In the following we have tried to group the reasons that should make you use free software under two major headings, on the one hand pragmatic reasons and on the other hand what one might call ideological or moral reasons. This distinction reflects also the different approaches taken by proponents of the open source and the free software movements. Free software exists for longer and the focus of this movement is mainly on the moral factors, the open source movement on the other hand is younger and has usually focussed on the pragmatic factors.

Pragmatic reasons

Transparency

In FOSS the source code of software is freely available and can be looked at and analysed by everyone. In proprietary software this is not the case, the inner workings of such software can be imagined to be in a kind of black box, into which it is impossible (or very difficult) to peek. Why should you care about such a thing?

Firstly, as has become apparent with the recent PRISM and Tempora scandals, governments are quite interested in getting to know what we are doing and this has become much easier with the advent of the internet. The issue is of course much more acute in countries where civil society engagement is repressed. The user of proprietary software can never be sure that his software does not transmit his data to unwanted institutions without his knowledge. Furthermore not only governments but also the commercial makers of software have an interest in gathering as much information about the user (that is you!) as possible. This is in itself dangerous, and can become even more so when companies work in concert with repressive governments. There exists also the danger that other groups can gain access to a company’s servers without their consent, which leaves you exposed if there is any information on these servers you do not want to be public.

FOSS programmers and activists are very privacy conscious (indeed, one could say that this sometimes borders on paranoia), which is a first reason for FOSS software being much safer in this regard. Furthermore, even if an individual programmer tried to build a function into his software that allowed for the transfer of private information, such a function would be easy to spot by others, as he could not hide this function anywhere. Because the source code of FOSS is open to everyone, such attempts are very easily spotted.

This brings us to a second point. As the source code is open and because there are often very big numbers of people (of course depending on the popularity of the software project) working on and analysing the source code, bugs (these are mistakes and weaknesses in the software code) are quickly spotted and mostly quickly fixed as well. This leads to a higher dependability on the software. FOSS is often more stable, more secure and more privacy oriented than proprietary software. Users of FOSS often feel very invested in the software they use and actively contribute to the bettering of their favourite tools. Users of commercial software are usually more apathetic in that regard and even if they did want to help, they lack the tools to investigate software errors, as they cannot look at the source code of their software. Knowledgeable users of FOSS can even fix errors they find themselves, which of course is entirely impossible with proprietary software.

As a user of FOSS, you can find out what your software is doing and you are helped in that task by a very big community!

Control and independence

Behind a proprietary software stands (usually) a single developer, be it a software developing company or any individual or group of people. If that developer decides to discontinue the software, users of the software encounter a very serious problem. They can continue using a software that will at some point stop working on new hardware and operating systems, a software that will never get rid of bugs it contains, and a software to which certainly no new features will ever be added. Users cannot either easily migrate to a different software, that is take their data and simply use a different program for it. The reason for this is that the user doesn’t know how his data is saved nor how it is processed by the proprietary software he is using. A similar problem arises if the developer decides to continue development of his software in a direction that you as a user do not agree with, here you are faced with the decision between using old software (that will stop working) or new software (that does not do what you want it to do).

With FOSS these issues are a lot less scary. If development by the original authors of the software stops, and if there are some users (maybe you?) that have the necessary coding skills and motivation, they can simply continue the project. Problem solved. If that doesn’t happen, at least you as a user of FOSS are much more likely to be able to transfer your data for use in a different program, because the inner workings of the software you are using are transparent. And what happens in the case where the original author or authors decide to develop the software in a direction you do not like? Well, you can simply fork it! That means that you take the source code of the program as it is and turn it into your own project. This is in fact how much of the diversity of FOSS has come about. Take OpenOffice as an example, which used to be the most popular FOSS word processor. However at one point many developers stopped agreeing with the direction into which the project went. What they did is that they simply started a new project, called LibreOffice, and continued to develop that as they saw fit. Nowadays, at least under GNU/Linux, LibreOffice has become the most popular word processing software.

As a user of FOSS, you control the software you use and you are independent from any possible tyrannical decision by the software’s developer!

It’s cheap!

FOSS advocates always say that the free in Free Software should be understand as in “free speech” and not as in “free beer”. However, the good thing is that Free Software is also free as in “free beer” (we are sure that you as green activists understand the appeal of that!). While there are companies that make money with FOSS, they do so with either support or custom development services. FOSS must always be available freely for everyone to use, and for people with little or no money (such as us), this can be a very welcome point.

As a user of FOSS, you save money that you can use on beer (which unfortunately isn’t usually free at all)!

Leverage the masses!

Open source projects are open to everyone. Anyone can use, read, modify some software’s code. This has a couple of very significant consequences that stem from the fact that big groups of people gather around such FOSS projects. Firstly, as already mentioned, the more users a software has and the more people look at its source code, the more likely eventual bugs are to be spotted. Secondly, a software’s users will usually be very helpful towards new users, and support is often better even than in commercial projects. Also, if you have a good idea how your favourite FOSS project could be improved and you mention that to its developers, the chances are that your feature will soon be implemented. It is very rare to observe programming that is as responsive to user wants as in FOSS in the world of proprietary software. a bit more here

As a user of FOSS, you are standing on the shoulders of giants and can rely on the help of a great many engaged people!

Ethical reasons

You might think that we have heard enough reasons already. Well, actually, we haven’t even come to the most important ones. Even if FOSS weren’t so darn good to use, there are still even more weighty reasons to use it.

FOSS as a model mode of production

FOSS and the related copyleft movements (such as Creative Commons) can give us a model of how an alternative societal mode of production can look like. And what is best, FOSS proves that such a model can grow and thrive even within the current economic system. Thus, using FOSS can be seen a bit like projects that (for example) try to build alternative modes of living within a society that is very much focused on monetary gains and incentives. If you think about FOSS, don’t think of it as boring unintelligible work behind a computer screen, but more like guerilla gardening!

What makes FOSS so different from proprietary software development in the way it is produced? Firstly, it is not based on monetary incentives. FOSS developers do not code in order to make any money, they code because it is something that fulfils them personally, or because they believe it to be useful for themselves and above all for the wider society. Secondly, FOSS developers implicitly acknowledge their place within a wider society. They do not try to control what they create by limiting other people’s access to their work, but see themselves as part of human society, where culture and knowledge creation is a common enterprise. Every contribution made to FOSS (and other forms of free culture) makes bigger the pool of common culture and knowledge that everyone can draw from, use and improve on. FOSS is part of the commons or the public domain, it is not owned by anyone, but everyone in common (or no-one at all – but that’s a philosophical detail). Furthermore this digital commons is far more diverse than what would be possible in a market driven system: There are for example at the moment more than 300 different GNU/Linux varieties (called distributions). This lively diversity makes for a very innovative environment, where those distributions that are popular with users can quickly gain in popularity while others sink into obscurity. Good practices and smart ideas spread quickly in this environment, because – again – they are open to everyone.

What is more, most FOSS software is using copyleft licences, which means that every derivative work based on it, must also be published as FOSS software. This assures that the public domain grows constantly, especially because also companies sometimes want to use FOSS software and are thus forced to publish their improvements in turn.

As a user of FOSS, you make a statement for better organisation of how we produce stuff. You literally live the change you want to see in the world!

Community matters!

While most FOSS projects are initially started by a single person and or a small group of developers they usually turn quickly into a big communal effort. Big projects can group together dozens if not hundreds of developers and many many more users that help in improving the software. You might be wondering how you can help in such projects, as you probably do not know how to code yourself. While programmers are of course essential, a successful FOSS projects needs very diverse skills. Firstly, a large user base is important in finding bugs in the software and to be helpful in this regard does only require very basic computer skills. Furthermore, FOSS projects are translated into many languages, so that every user can use it in his mother tongue: Therefore translators are needed! Also, many FOSS projects depend on graphical designers, who can help make the graphical elements of the software. Most FOSS projects also have an active forum, where new users can ask for help. Thus experienced users are needed to give support to newcomers. As you see, a FOSS project can be very inclusive and can group together a very diverse set of people. The feeling of a common enterprise, of creating something together to help society and to enlarge the common stock of tools that everyone in need can use, can be a very beautiful, enriching and fulfilling experience!

As a user of FOSS, you are part of a big community, where people help each other and where everyone contributes the skills they possess!

Software isn’t neutral

You might have often heard people decry the dangers of any given technological innovation, be it the internet, the TV, mp3s, or Facebook. While it is wrong to categorically claim that every new technology is bad for us human beings, not all such fears are unfounded. Just to say that technology is neutral is too simple! Our lives are more and more shaped by the way we interact with technology (which includes software) and, more importantly, how we human beings interact with each other is shaped by technology. Software is not in that sense neutral, it can shape who we are individually and socially. We need to see that this can be both for the worse and the better. What is clear however, if we do want to have a say in what kind of people we want to be(come) and in what kind of society we want to live in, if we deem these basic democratic interests important, then there is no way around FOSS. Only in FOSS the user can directly shape the software he uses, while proprietary software is developed so that the company behind it can extract the highest possible profit from it. We are sure that you will agree that a profit maximising principle is a bad basis to help us shape the society we want to live in. These matters are especially important nowadays where the internet and thus software structures more and more our social lives, as for example through Facebook. It is also crucial where software is used – as by us – in activism. It is absolutely essential that we realise that the digital sphere has begun to constitute a major public space, and as a public space its structure and shape should be actively formed by those who inhabit it, and not those who can make the most profit of it!

As a user of FOSS, you can actively shape the digital world we all live in!

Conclusion

Thus if you want to live in society where collaboration is the norm, where people create because it brings them fulfilment and because it helps others, and where everyone is involved in a communal project, then you can do that! Unfortunately not yet in all spheres of life, but definitely in the sphere of software! The ideas inherent in FOSS have already spread to other domains, such as art and also hardware development, and by using it we strengthen it further so that the idea of freedom can one day encompass all aspects of productive life! Using FOSS is a political statement for a better future!

The FOSS development method

The FOSS development model is unique and became possible only with the advent of the Internet and the communication boom caused by it. The cathedral and bazaar analogies are used to contrast the FOSS development model with traditional software development methods.

Traditional software development is likened to the way cathedrals were built in ancient times. Small groups of skilled artisans carefully planned out the design in isolation and everything was built in a single effort. Once built, the cathedrals were complete and little further modification was made. Software was traditionally built in a similar fashion. Groups of programmers worked in isolation, with careful planning and management, until their work was completed and the program released to the world. Once released, the program was considered finished and limited work was subsequently done on it.

In contrast, FOSS development is more akin to a bazaar, which grows organically. Initial traders come, establish their structures, and begin business. Later traders come and establish their own structures, and the bazaar grows in what appears to be a very chaotic fashion. Traders are concerned primarily with building a minimally functional structure so that they can begin trading. Later additions are added as circumstances dictate. Likewise, FOSS development starts off highly unstructured. Developers release early minimally functional code to the general public and then modify their programs based on feedback. Other developers may come along and modify or build upon the existing code. Over time, an entire operating system and suite of applications develops and evolves continuously.

Libreoffice

  • Type of software:

Allround word processing, Spreadsheet etc. work suit.

  • Supported Operating System:
  • Replacement for which closed software:

Microsoft Word etc.

  • Links with further information:

http://www.libreoffice.org/

Apache OpenOffice

  • Type of software:

open-source office software suite for word processing, spreadsheets, presentations, graphics, databases and more

  • Supported Operating System:

Windows, Solaris, Linux and Macintosh operation systems, with more communities joining, including a mature FreeBSD port.

  • Replacement for which closed software:

Microsoft Word package

  • Links with further information:

https://www.openoffice.org/

Scribus

  • Type of software:

Scribus is an Open Source program that brings professional page layout to desktops with a combination of press-ready output and new approaches to page design.

  • Supported Operating System:

Linux, BSD UNIX, Solaris, OpenIndiana, GNU/Hurd, Mac OS X, OS/2 Warp 4, eComStation, Haiku and Windows

  • Replacement for which closed software:
  • Links with further information:

http://www.scribus.net/canvas/Scribus

Tor

  • Type of software:

Tor is free software and an open network that helps you defend against traffic analysis, a form of network surveillance that threatens personal freedom and privacy, confidential business activities and relationships, and state security.

  • Supported Operating System:
  • Replacement for which closed software:
  • Links with further information:

https://www.torproject.org/

Cryptocat

  • Type of software:

Cryptocat is an instant messaging platform that lets you easily have private conversations with friends. Messages are encrypted before leaving your screen and are protected from being viewed by any third party, even from us.

  • Supported Operating System:
  • Replacement for which closed software:
  • Links with further information:

https://crypto.cat/

Thunderbird

  • Type of software:

Thunderbird is a free, open-source, cross-platform application for managing email and news feeds

  • Supported Operating System:
  • Replacement for which closed software:
  • Links with further information:

https://support.mozillamessaging.com/en-US/home

Etherpad

  • Type of software:

Collaborative text editor

  • Supported Operating System:

Probably all (used in web browser)

  • Replacement for which closed software:

Google Docs

  • Links with further information:

http://etherpad.org/

http://etherpad.net/

Strut

  • Type of software:

Fancy presentations

  • Supported Operating System:

Probably all (used in web browser)

  • Replacement for which closed software:

Prezi

  • Links with further information:

http://tantaman.github.io/Strut/

GIMP

  • Type of software:

Allround photo editing and graphic design software.

  • Supported Operating System:

Linux, Windows, Mac

  • Replacement for which closed software:

Adobe Photoshop and similar software.

  • Links with further information:

http://www.gimp.org/

http://www.gimp.org/tutorials/

Darktable

  • Type of software:

Photo editing and workflow software specialised in raw editing.

  • Supported Operating System:

Linux

  • Replacement for which closed software:

Adobe Lightroom and similar software.

  • Links with further information:

http://www.darktable.org/

Cinelerra

  • Type of software:

A “movie studio in a box,” Cinelerra lets you capture, composite, and edit audio and video

  • Supported Operating System:

Linux

  • Replacement for which closed software:

Adobe Premiere Pro CS5

  • Links with further information:

http://www.heroinewarrior.com/cinelerra.php

Kdenlive

  • Type of software:

This tool brings high-quality video editing tools to home users and “semi-professionals”

  • Supported Operating System:

Linux, OS X

  • Replacement for which closed software:

Adobe Premiere Pro CS5

  • Links with further information:

http://www.kdenlive.org/

KeePassX

  • Type of software:

Password Manager. A locker for all your passwords than can be accessed via one master password. As it is not safe to let the browser remember passwords or always use the same password, this software let’s you use a different password for every service while having to remember only a single one.

  • Supported Operating System:

Linux, Windows, Mac

  • Replacement for which closed software:

  • Links with further information:

https://www.keepassx.org/

TrueCrypt

  • Type of software:

TrueCrypt is a open source software that allows you to crypt files.

  • Supported Operating System:

Windows 7/Vista/XP, Mac OS X, and Linux

  • Replacement for which closed software:

  • Links with further information:

http://www.truecrypt.org/


Operating systems is that very basic software on your computer that allows you to run other more specialised software. Common operating systems are Microsoft Windows, Macintosh OS X, and Linux. Of these three only Linux is FOSS.

List of FOSS operating systems

Zim

  • Type of software:

A personal wiki, that allows for easy note-taking, journals and task management. You can use as a single person or collaboratively with others. As with a normal wiki pages can be interlinked and pages are saved in a simple wiki format. Many plugins exist that add diverse functionality.

  • Supported Operating System:

Linux, Windows

  • Replacement for which closed software:

  • Links with further information:

http://zim-wiki.org/index.html

gPodder

  • Type of software:

Podcast aggregator

  • Supported Operating System:

Linux, Windows, Mac, Meego, Blackberry, Sailfish

  • Replacement for which closed software:

Podcast aggregators

  • Links with further information:

http://gpodder.org/

https://gpodder.net/

VLC Media Player

  • Type of software:

VLC’s simple claim to fame is “It plays everything!” It can handle DVDs, (S)VCDs, Audio CDs, web streams, TV cards and can even play most damaged files.

  • Supported Operating System:

Linux, Windows, OS X

  • Replacement for which closed software:

Windows Media Player, Apple QuickTime

  • Links with further information:

http://www.videolan.org/vlc/

MPlayer

  • Type of software:

MPlayer is a media player. It can play a very wide variety of formats, both audio and video. There are varieties like gmplayer and smplayer that add easier to use user interfaces.

  • Supported Operating System:

Linux, Windows, OS X

  • Replacement for which closed software:

Windows Media Player, Apple QuickTime

  • Links with further information:

https://mplayerhq.hu/

The following software is for those who are interested in some of the more difficult to use (but great!) FOSS software there is. These programs are not made to be as easily accessible as possible, and often require for example the use of the terminal. It’s good to learn the names of some of these so you can drop them casually into conversation with nerds and geeks. This will give you instant street credibility ;).

Arch Linux

  • Type of software:

This is a Linux operating system. It is very minimalistic. There is no graphical installation and after installing the base system you will only have access to the terminal. All the other components of the system (Desktop environment etc.) need to be installed manually. Configuration of the system is done with text files. Arch Linux can be set up in a very customised way to suit exactly the taste and needs of the individual user. Arch follows the KISS principle, Keep It Simple Stupid: “Arch Linux defines simplicity as without unnecessary additions, modifications, or complications, and provides a lightweight UNIX-like base structure that allows an individual user to shape the system according to their own needs. In short: an elegant, minimalist approach.” Arch also has one of the best wikis and a very active, helpful, knowledgeable user community.

  • Replacement for which closed software:

other operating systems

  • Links with further information:

https://www.archlinux.org/

Vim

  • Type of software:

Vim is a text editor to be used from a command line interface. It is very hard to use at first as most commands are given with keyboard shortcuts. Once mastered it becomes extremely efficient however.

  • Supported Operating System:

Linux, Windows, OSX, iOS, Android

  • Replacement for which closed software:

other text editors and programming environments

  • Links with further information:

http://www.vim.org/

FOSS and Education

Introduction

What does FOSS have to do with education? Software freedom has an especially important role in education. Educational institutions of all levels should use and teach Free Software because it is the only software that allows them to accomplish their essential missions: to disseminate human knowledge and to prepare students to be good members of their community. The source code and the methods of FOSS are part of human knowledge. On the contrary, proprietary software is secret, restricted knowledge, which is the opposite of the mission of educational institutions. Free Software supports education, proprietary software forbids education. Educating to FOSS is not just a technical question; it is an ethical, social, and political question. It is a question of the human rights that the users of software ought to have. Freedom and cooperation are essential values of non-formal education and FOSS.

Methods

Non-formal Education

Free courses

Resources

Free learning resources is a matter of freedom, not price. It’s about bringing the principles of Free Software to general knowledge and educational materials. Knowledge should be usable and accessible to all without restrictions and should not be treated as property. It is not an article of consumer goods that decays over time or wears out with use like a pair of shoes. Knowledge is a naturally abundant resource that improves with usage: the more it is used and passed around, the more it grows for the benefit of all. The introduction of measures designed to favor the ownership of knowledge, tailored to prevent people from accessing, using or sharing knowledge, is a conspiracy to inhibit human progress. Some of educational resources:

List of resources related to education in and about FOSS/technology

“OpenEducation.net is a site dedicated to tracking the changes occurring in education today. In an era where it is possible to photoshop images, facebook people, and access an endless stream of knowledge by googling, the Internet Age offers both great promise and enormous challenges for educators. At OpenEducation.net, readers will be exposed to both an objective and subjective look at the many issues facing the profession today.”

A paper about holistic approaches to teaching technology, which means that not only the purely technological needs to be looked at, but also social, economic, environmental and other factors.

“This web site targets creative school teachers interested in research based approaches to the teaching and learning of various forms or types of technologies taught across school curriculum. We define forms or types of technologies using the concept of technacy genre theory.” Technacy theory is a holistic approach to the teaching of technology inspired by the worldview of the aboriginal Australians.

Short blog post calling for increased education about FOSS.

List of resources related to the economic and legal aspects of FOSS

A study on “[t]he impact of Free/Libre/Open Source Software on innovation and competitiveness of the European Union”.

Information on many aspects of opensource software. Mainly focused on legal and licensing information.

List of resources related to democracy, collaboration and FOSS

“The openDCN software environment […] provides on-line dedicated tools to support participation and deliberation.”

“Powerful collaboration, code review, and code management for open source and private projects.” This is used by those who want to write software in collaboration with others.

“LiquidFeedback is a software, powering internet platforms for proposition development and decision making.”

“AT4AM for All is the free / open source release of AT4AM, the web-based amendment authoring tool used at the European Parliament.”

“[Airesis is a software platform] to enable communities and groups to organize themselves in a productive manner according to the principles of direct democracy and participation”

List of resources related to the privacy and FOSS

Information on alternative software and websites that help protect the user’s privacy.

List of resources related to the technical aspects of FOSS

This article explains how a modern GNU/Linux system works. It starts by explaining the basics of the desktop and then descends to the inner workings of the kernel passing through many of the intermediate steps.

A treasure trove of information on the more technical aspects of GNU/Linux.