Open source software: where it came from and why it is important
In his new book The Innovators, Walter Isaacson reviews the impact of the intermingling of the Internet and the personal computer in the late 1980s and early 1990s. He writes, “This merger of the personal computer and the Internet allowed digital creativity, content sharing, community formation, and social networking to blossom on a mass scale.”
Indeed, in the ten years from 1984 to 1994 the convergence of these two previously separate technologies changed the world. The integration of the mouse driven and graphical desktop with web browsing and email communications was the beginning of a transformation in human activity on a mass scale that continues to this day. Without this accomplishment we would never have reached the wireless, mobile, touch and social world we now live in.
Isaacson’s book shows how the gifted and creative innovators that brought the digital revolution into being also collaborated with each other and across generations; their genius and creative accomplishments could not have been achieved without teamwork.
Isaacson explains the social and cultural environment of that time which nurtured the social element of the digital transformation, “For the birth of the digital age, this included a research ecosystem that was nurtured by government spending and managed by a military-industrial-academic collaboration. Intersecting with this was a loose alliance of community organizers, communal-minded hippies, do-it-yourself hobbyists, and homebrew hackers most of whom were suspicious of centralized authority.”
Most people are familiar with the contributions of men like Steve Jobs of Apple, Bill Gates of Microsoft and Marc Andreesen of Netscape during those early years of the convergence of the PC and the Internet. The competition and legal battles for domination of the new technology markets—with billions of dollars at stake—are now legendary chapters of American business history. As much as collaboration was an organizational prerequisite for the age digital innovation, the market also drove antagonisms that split people and firms apart from one another.
Apple, for example, famously launched (1988) and ultimately lost (1994) a lawsuit against Microsoft over the manner in which Windows 2.0 copied features—the “look and feel”—of the Macintosh desktop. Even something as universal as the Trash Can became a source of contention.
Later, the US government initiated (1998) and won (2000) an antitrust case against Microsoft—on behalf of competitors including Netscape—that forced the unbundling of Internet Explorer (which Microsoft was giving away free of charge at the time) from the Windows operating system. Just at the moment when the seamless integration of web browsing with the underlying operating system would be the next logical phase of development, competitive pressures drove these elements of the computing experience apart from one another.
Open source software
Although perhaps less legendary, there was another no less significant group of innovators who made major and lasting contributions to the digital age during the same ten-year span (1984-1994): the creators of open source software (OSS). Their approach to digital technology development was based entirely upon a collaborative model. Although competitive and strategic differences did emerge among them, the open source community today is a central and growing force in the computer software industry.
Open source software is computer software whose source code is available publicly by license from the copyright holder. As opposed to closed source software—where the source code is hidden and unavailable for modification by anyone but the copyright holder—open source software encourages users and the public as a whole to study, copy, modify and distribute the source code to anyone and for any purpose.
Open source software licensing maintains the copyright ownership of the original author and frequently has obligations for licensees. For example, an open source software license may require that modifications to the source code be distributed in open source form or an attribution of the original author must be included in the documentation or program being distributed.
Open source software development relies upon the collaboration of a community of thousands of programmers. In OSS programming, the mostly volunteer developers work independently and use the Internet to collaborate on solving problems and fixing defects. The social networking aspect of OSS development has helped produce reliable, professional quality software at low cost and at an accelerated pace.
Richard Stallman, GNU & the Free Software Foundation
Richard Stallman—the Harvard educated hacker and activist—is recognized as an originator of the free software movement, a precursor to open source software. In September 1983, after leaving his job at MIT’s Artificial Intelligence Lab, Stallman launched the GNU Project with the aim of giving computer users the freedom to use and modify software. For Stallman and his community of supporters, the term “free” does not mean free of charge; it is free in the sense that it is unencumbered by the requirements of commercial and proprietary software licensing such as with Microsoft Windows and UNIX (GNU is a recursive acronym that stands for GNU’s Not UNIX).
In October 1985 Stallman founded the Free Software Foundation as a non-profit organization to promote the universal freedom to study, distribute, create and modify computer software. With the tongue-in-cheek methodology of a radical, Stallman wrote the GNU General Public License and advanced the concept of the “copyleft” (as opposed to the copyright) which gives everyone the right to do what they like with software with the exception of placing restrictions upon others.
An early product of his free software project was Stallman’s GNU Emacs text editor launched in 1984. Emacs has many of the features found in commercially available word processing software combined with a high degree of customizability including the addition of community developed plug-ins and extensions. In the 1980s, these were new concepts in PC software. GNU Emacs continues to be developed today and is up to version 24.4. Some estimates put the worldwide Emacs user base in the hundreds of thousands.
While Stallman’s work was pioneering, it came upon a dilemma: GNU free software programs were being written to run on proprietary operating systems, i.e. UNIX, MS-DOS, MacOS, Windows, etc. Although he tried, Stallman was unable to develop a GNU software kernel, the heart of the computer operating system that manages the exchange of data between applications and the central processing unit (CPU).
Linus Torvalds & Linux
In October 1991 Linus Torvalds—a Finnish-American software engineer—released the first computer operating system assembled under an open source software development model. Torvalds was 21 years old. He called his system Linux (a contraction of Linus and UNIX) because it had a UNIX-like kernel. Torvalds wrote the original Linux code on an Intel 386 PC clone while he was living with his family in an apartment in Helsinki.
After he completed ten thousand lines of code, Linus Torvalds elected to offer his product publicly instead of trying to market it privately. Torvalds’ decision was influenced by a Richard Stallman lecture that he attended with a friend. Torvalds used the GNU General Public License to launch Linux officially in 1992 because he thought that letting hackers around the world help with the source code would lead to a much better end product.
The release of the Linux kernel produced a massive response which became a model of peer-to-peer collaboration. Within a year, there were tens of thousands of Linux collaborators all over the world working on bugs and developing additional capabilities such as a graphical user interface and networking capabilities. Meanwhile, Linus Torvalds maintained his role as the leader of the Linux development process.
Although Torvalds’ Linux was released with the spirit of Stallman’s free software licensing, there were differences between the two men. The separation of Linux from the pure GNU model emerged as Torvalds and others started to refer to their product as open source software and emphasized the development model more than the absence of proprietary or business interests. While Stallman believed that software must be free of all private and corporate interests, Torvalds took a more pragmatic view that as long as the source code remained open, other things could be done with the products that do not follow all of the GNU principles.
Today, the Linux operating system has been ported to more computer platforms—including the world’s largest supercomputers—than any other. Although Linux is used on less than 2% of desktop and notebook computers, it is the leading operating system on servers and the Linux kernel is the basis of Android, the most widely used OS on smartphones and tablets. There are many examples of open source software being used widely by the public every day, Mozilla’s Firefox browser and Wikipedia’s internal wiki technology among them.
While books on the history of computer technology tend to omit it, to his credit Walter Isaacson in The Innovators devotes a section of his chapter on software to Stallman and Torvalds and free and open source software. Isaacson quotes Eric Raymond, a leading open source software developer and advocate, “Who would have thought that a world-class operating system could coalesce as if by magic out of part-time hacking by several thousand developers scattered all over the planet, connected only by tenuous strands of the Internet?”