Open Source Communities: Software Development and Governance
Total Page:16
File Type:pdf, Size:1020Kb
An introduction to open source and implications for management INF5890 Guest lecture Jan Fredrik Stoveland-Alfsen [email protected] Topics Introduction: Main questions for management History of open source: From hacker communities to big business Motivation for the individual and the enterprise Case: Netflix Open source communities: Software development and governance Case: Novell and SUSE Linux 15.04.2016 3 Topics Introduction: Main questions for management History of open source: From hacker communities to big business Motivation for the individual and the enterprise Case: Netflix Open source communities: Software development and governance Case: Novell and SUSE Linux 15.04.2016 4 What is open source? • Open source refers to a program in which the source code is available to the general public for use and/or modification from its original design free of charge, i.e., open. Open source code is typically created as a collaborative effort in which programmers improve upon the code and share the changes within the community. (Webopedia) • Open source contains two aspects (O’Mahony): 1. Intellectual property strategy 2. Development methodology • The Open Source Definition published by the Open Source Initiative describes what conditions a license must fulfill in order to be termed an Open Source license. https://opensource.org/osd 15.04.2016 5 The cathedral and the bazaar Proprietary software Open source software development development • “Carefully crafted by individual wizards • "Given enough eyeballs all bugs are or small bands of mages working in shallow" splendid isolation” • Code developed over the internet with • Development occurs behind walls several others in public view • source code is usually not provided - • Source code open to all users kept locked up • Corporate hierarchy 15.04.2016 6 http://www.catb.org/esr/writings/cathedral-bazaar/cathedral-bazaar/ Who is open source? 15.04.2016 7 Open source vs traditional software development 15.04.2016 8 Open source: Key questions for management 1. How to ensure contributions and an active community? 2. How to manage and govern distributed and voluntary development? 3. How to protect the commons? 4. How to make money (firms)? 5. How to gain legitimacy (firms)? 6. How to ensure software quality and continued support? (customer) 15.04.2016 9 Topics Introduction: Main questions for management History of open source: From hacker communities to big business Motivation for the individual and the enterprise Case: Netflix Open source communities: Software development and governance Case: Novell and SUSE Linux 15.04.2016 10 Early 1960’s: Origins of UNIX Dates back to the mid-1960s when the Massachusetts Institute of Technology, AT&T Bell Labs, and General Electric were jointly developing an experimental time sharing operating system called Multics for the GE- 645 mainframe. https://en.wikipedia.org/wiki/History_of_Unix 15.04.2016 11 1983: Richard Stallman establishes GNU and the Free software foundation • 1980’s: Commercialization of AT&T’s Unix triggered MIT professor Stallman to develop the GNU alternative as free software • The Free software foundation was established along with the General Public License (GPL) – «Copyleft» 15.04.2016 12 1991: Linus Thorvalds publishes first version of the Linux kernel to an internet newsgroup • Linux 2.0 released in 1996 • The Linux kernel is still considered the most successful and active open source project to this day • Linux forms the basis of multiple Linux distributions, including: – Debian, Ubuntu, Fedora, SUSE, Gentoo, and hundreds more 15.04.2016 13 1995: Release of Apache 1.0 • Has dominated the market of web servers since • Developed by a cluster of people later to form the Apache Group • In 1999 incorporated as a nonprofit organization, the Apache Software Foundation 15.04.2016 14 1998: Foundation of the Open Source Initiative • OSI was jointly founded by Eric Raymond and Bruce Perens in late February 1998 • The Open Source term was coined to accommodate use of open software in the commercial world • Primary mission to maintain the open source definition and approve open source licenses 15.04.2016 15 1998: Netscape Navigator released as open source (later to be Mozilla) 15.04.2016 16 2012: Red Hat reaches $1 billion in annual revenue • 2016: First Open source company to hit $2 billion 15.04.2016 17 Open source might have started as religion, but is now part of every software company - one way or another 2001 2014 "Linux is a cancer that «Microsoft loves Linux» attaches itself in an - Satya Nadella, CEO Microsoft intellectual property sense to everything it touches” 2016 Microsoft SQL is ported to - Steve Balmer, CEO Microsoft Linux 15.04.2016 18 Topics Introduction: Main questions for management History of open source: From hacker communities to big business Motivation for the individual and the enterprise Case: Netflix Open source communities: Software development and governance Case: Novell and SUSE Linux 15.04.2016 19 Motivation for participation 15.04.2016 20 Individual motivation in the openSUSE project 15.04.2016 21 Open source business models 15.04.2016 22 Firms’ relationship to open source software • Based on case studies relationships between firms and open source communities may be characterized as symbiotic or parasitic (Dahlander & Magnusson, 2005). • The symbiotic approach: – co-evolution between the community and the firm. – Legitimacy is gained through status in the community based on its norms and values, not from having a formal role in a firm. • The parasitic relationship: – Clearer that the firms maximize their own benefits often in violation with the norms of the community. – Could for example characterize a firm with a packaging or proprietizing strategy, making large profits as a free-rider without contributing anything back to the community. 15.04.2016 23 Topics Introduction: Main questions for management History of open source: From hacker communities to big business Motivation for the individual and the enterprise Case: Netflix Open source communities: Software development and governance Case: Novell and SUSE Linux 15.04.2016 24 How it started • Netflix became big user of Apache licensed open source software. • When Apache Cassandra was picked as data storage solution Netflix started to contribute fixes and extensions to optimize Cassandra’s capabilities on AWS (Amazon Web services) • This led to Netflix see the benefits of releasing their own projects and created a central Netflix account at netflix.github.com 15.04.2016 25 Netflix now host over 50 open source projects 15.04.2016 26 Netflix rationale for going open source • «Paying back in kind» • Can benefit from the scale effects of other AWS users adopting similar patterns and technologies • External community contributions • Improved code and documentation quality • Durability 15.04.2016 27 Topics Introduction: Main questions for management History of open source: From hacker communities to big business Motivation for the individual and the enterprise Case: Netflix Open source communities: Software development and governance Case: Novell and SUSE Linux 15.04.2016 28 What is an open source community? In general, an open source community should include (O’Mahony, 2003): 1. The source code and binaries to the software product 2. A collaborative information platform 3. Communication channels 4. Development tools 5. A governance structure 6. Collaboration protocols 7. A unifying identity 15.04.2016 29 Characteristics of autonomous communities • Community and code base scale in parallell • Initiated by individuals • Governance ranges from autocratic to meritocratic to democratic with decentralized decision-making • Norm-based rationale • Needs to ensure protection for project and software • Independent • Pluralistic 15.04.2016 30 Tactics for guarding the commons 1. Licensing terms that restrict proprietary apporpriation 2. Legal and normative sanctions 3. Incorporate (create legal entity) 4. Transfer individual copy rights to a foundation 5. Trademark brands and logos 6. Assign trademarks to the foundation 7. Actively protect brand 15.04.2016 31 Challenges for autonomous communities • «The initial leader must assemble a critical mass of code to whitch the programming community can react» (Lerner & Tirole) • Attracting talented software developers • Acquiring resources for legal services, marketing and production 15.04.2016 32 Characteristics of firm-sponsored communities • Initiated by sponsor firm • Massive code base is released to minor community • Ambiguous control and ownership, usually held by sponsor firm • Community product forms basis of or complements commercial software product 15.04.2016 33 Managerial challenges for sponsored communities • Steep learning curve when releasing a mature product to an infant community (West, 2005) • Respecting norms and values • Supplying resources for community development • Attracting developers and users • Aligning different interests about the nature of work • Resolving ambiguity about control and ownership • Getting acceptance for using community software for commercial purposes (Dahlander & Magnusson, 2005) 15.04.2016 34 Considering what you now know about open source communities, answer the following: • What is required by management of an open source community in order to ensure successful software development and governance? • Spend 5 minutes in discussion with you neighbor 15.04.2016 35 Suggested answers: • A sponsor with legitimacy and authenticity • Charismatic leadership • Community