Why to Get Involved in the Open Source Community?

Free, Libre and Open Source Software (FLOSS) is software released under a license that allows developers to: 1) access the software’s source code, 2) use the software for free, and 3) develop derived works based on software’s previous releases. FLOSS’s success can be attributed to the motivations of the individuals that are members of the open source community. However, FLOSS’s recent boom is also associated with the adoption of many business models, which rely on FLOSS, by modern companies. The aim of this post is to summarize the reasons that make individuals and companies to participate in the open source community and highlight the impact of FLOSS projects on computer science. To name some of the most popular FLOSS projects, consider: the Eclipse IDE, the Firefox browser, the Apache server, the Linux kernel, the Java, C/C++, Python programming languages, the MySQL, SQLite, PostgreSQL databases, the GNOME and KDE desktop environments, the Git version control system, the R-Project for statistical computing, the TeX system for publishing, etc.

Developer motivations Several studies in different disciplines (computer science, psychology, economics, law) have been conducted over the last fifteen years in order to investigate the key elements behind the success of FLOSS. Regarding developers, most studies focus on two motivation types: intrinsic and extrinsic (see chapter 9.1 in [1]). Specifically, intrinsic factors refer to the innate enjoyment and fulfilment that developers feel when they write code and find problem solutions, as well as to the sense of creativity that developers feel when they implement their ideas (see Linus Torvalds‘s characteristic claims in [3]). Extrinsic factors refer to developers’ eagerness to acquire reputation, professional skills, and experience through their involvement in FLOSS projects. Actually, the open source community can be an excellent start for students to improve their programming skills and gain experience in order to implement their own ideas or join proprietary companies afterwards. Also, developers can use the source code of distinguished FLOSS projects to develop high-quality derivative works (e.g. FreeBSD’s source code has been used as an internal part of the Apple’s OS X operating system). However, except for various psychological factors, developers can be motivated by political and ideological factors. In particular, altruism, “gift giving” [2], and community identification can be strong feelings of the participants of the open source movement.

Company motivations Even though open source software is free of charge, it can be profitable for companies (see chapter 9.2 in [1]). First, companies can take parts of open source projects (e.g. libraries) and use them in derived works, avoiding significant development effort and cost. Second, companies can benefit from code reviews and guidance provided by the open source community and its “gurus”. Third, a company can gain commercial reputation by opening its projects’ source code. For instance, consider Google’s Android open source platform that is used by countless developers, who use the Android’s Application Programming Interfaces (APIs) to build their applications. In addition, consider the Intel Open Source Technology Center that is committed to the development of open source projects including the Linux kernel, the Android platform, and graphics. Finally, there are many business models that combine proprietary and open source software. In particular, many new start-up companies provide their software for free and put some extra costs for additional services.

Impact Open source can lower the labor entry barriers for both developers and companies. Software and hardware innovations, coming from the open source community, can have a significant impact on the software industry. Even more, the open source culture affects changing sectors of the society, namely: the youth, the science, and the developing world. The youth can benefit from the open access to several online sources (e.g. GitHub, MIT’s Open CourseWare Initiative, Android and iOS’ APIs, and stackoverlow). Also, the provenance of open data from the FLOSS society is a valuable ground for research. For instance, in empirical software engineering researchers can access large software repositories (that provide projects’ source code, bugs, and mailing lists) to evaluate several project aspects (e.g. source code quality, developers’ contribution, and bug causes) and extract valuable insights. Finally, open source software can contribute to the education and technology outsourcing in less privileged countries, since FLOSS is free of charge (consider the OLPC project).

References

[1] S. Androutsellis-Theotokis, D. Spinellis, M. Kechagia, and G. Gousios. Open source software: A survey from 10,000 feet. Foundations and Trends in Technology, Information and Operations Management, 4(3–4):187–347, 2011.
[2] E. S. Raymond, The Cathedral and the Bazaar: Musings on Linux and Open Source by an Accidental Revolutionary, Sebastopol, CA: O’ Reilly and Associates, 2001.
[3] L. Torvalds, The Linux Edge, in Open Sources: Voices from the Open Source Revolution, (C. DiBona, S. Ockman, and M. Stone, eds.), O’Reilly, 1999.

Leave a Reply

Your email address will not be published. Required fields are marked *