Open sourcing in software development is incredibly valuable. Since the early years of modern computer science, collaboration has been a cornerstone of software development. Successful projects that have depended on the sustained contributions of developers include the GNU Project, Linux kernel, and a host of programming languages such as Python and Ruby.
This open source system seems to run counter to the general principles of capitalism. Historically, we have seen companies thrive by developing proprietary products or systems, often employing patents and copyrights for their content. However, as access to computers and the Internet grows, the number of people with the requisite tools and expertise to contribute to software simultaneously grows. Additionally, platforms (like GitHub) enable people to collaborate, contribute, and build on preexisting projects. In fact, many corporations, such as Google and Microsoft, make their code available to the public. By making some software open source, companies gain many benefits such as additional development, testing from other developers, and potentially recruitable talent. Not only do companies release their internally developed software, but they also often rely on open source software (OSS) as a core component of their business. In fact, according to a Ponemon Institute study, “67% of US IT professionals believe commercial open source software comprises fewer bugs, and 74% prefer commercial open source software to proprietary software”. Building on preexisting, robust OSS allows companies to build their products quickly, and at lower costs.
However there is concern over, and even opposition to, OSS. Take for example, a 2010 report by the International Intellectual Property Alliance (IIPA), which claims that in encouraging use of OSS the Indonesian government, “fails to build respect for intellectual property rights” and “limits the ability of government or public-sector customers to choose the best solutions to meet the needs of their organizations and the Indonesian people.” In reality, OSS offers an inexpensive way to provide services to people and is completely legitimate as a product in the free market. Notably, this report comes from an organization consisting of groups such as the Recording Industry Association of America (RIAA) and the European Space Agency (ESA), groups that have a vested interest in supporting tight rules on ownership and promoting proprietary software.
There are also security concerns such as the Heartbleed bug associated with OpenSSL, a widely-used open source cryptography library. Vulnerabilities such as this are inevitable, so it is simply a question of whether it is better to have bugs publicly discovered and rapidly patched, or to depend on a cloud of secrecy – as is the situation with proprietary software – as the first line of defense against malicious attacks. This issue is in reality more nuanced than the subject of this article, but nonetheless, security is a major factor in discussing open source projects.
The open source community relies on certain principles, a central one being on the idea of giving back. If developers are to adapt other people’s code for their own projects, then to be sustainable, those same developers must find a way to contribute back to the marketplace of ideas. Unfortunately, there are accounts in which this trust was violated. For example, Michael Lewis describes in Flash Boys: A Wall Street Revolt, the story of Sergey Aleynikov, an ex-programmer for Goldman Sachs who discovered Goldman’s “one-way relationship with open source”. According to Aleynikov, he took open source code and modified it, after which it became company property. Of course, it is understandable that some code must remain private, especially if it pertains to proprietary technology. However, the problem lies in defining how private code can be; in Aleynikov’s case, it was reported that “even when his modifications [of free software] were very slight and of general rather than financial use”, his code was not allowed to be made public. Where to draw the line is a company’s decision, but it is still an issue worth examining.
While there is no law stating that developers must release their changes back into the open source community, those who create software see an unwritten rule of sorts. For open source contributors like Aleynikov, keeping a cloud of secrecy around their work seems wrong. In economics, this situation is described as a free-rider problem, a problem in which those benefiting from a resource do not offer anything return, ultimately resulting in the degradation of that resource. If a company is profiting on the free labor of developers, it is reasonable to expect some type of compensation to help sustain that system. Fortunately, there is now a strong pro-open source sentiment that exists in the software development community.
Due to the culture that forms around such a decentralized system, the network is referred to as an open source ‘community’ rather than a ‘forum’ or ‘group’. Developers for these projects exist across a spectrum of personalities, from individuals who contribute daily and are constantly in touch with new developments, to individuals who merely push for minor changes. Regardless, the community benefits not only in the creation of better products, but in learning from others who have different solutions to a shared problem. For example, Stack Overflow is an incredibly popular platform, a question-and-answer site that encourages people to ask questions and have knowledgeable developers respond in turn. This too is part of the community – there is no one forcing or incentivizing anyone to contribute, participation is implicit within the community.
The strength of the open source movement comes from the users and developers that believe open access is valuable. Many of the developers build OSS work out of interest, often without remuneration, because they believe in its underlying principles. The world benefits greatly by allowing people to use OSS and to modify existing code to suit their own needs. As long as the balance of this ecosystem, which is as reliant on giving as it is on taking, exists, open source software will continue to be a crucial, central component of the digital age.