Saturday, May 16, 2009

Open source software

A new NBER working paper discusses the creation of "open source" marketplaces:
Half a Century of Public Software Institutions: Open Source as a Solution to Hold-Up Problem by Michael Schwarz, Yuri Takhteyev #14946 (and an ungated version here)

As the title suggests, the paper is about (avoiding) the problem of holdup that would arise if you make a lot of complementary investments in particular software, but are then vulnerable to arbitrary increases in its price. Part of the paper's considerable charm is a long section on the history of open source software (which, because it is not proprietary, avoids much of the holdup problem). Two sections which I excerpt from below concern the 1950's, and the 1960's-'70's.

"Early on, however, IBM also had a different idea for reducing customers’ programming expenses: encouraging the clients to share software with each other. It pursued this strategy by setting up an association for its users in 1952, with a mission of helping IBM customers help each other (CampbellKelly 2003). The association was later renamed “SHARE,” the new name explicitly representing the objective of sharing knowledge and software..."

An early contributor of shared software was United Aircraft:
"To understand United Aircraft’s interest in getting other organizations to use their software for free, and in fact their readiness to put additional resources into modifying it to suit the needs of some of the other SHARE members, we must consider, first of all, that United Aircraft already had an assembly program (UASAP) that it had written for its own needs, and quite likely had made a complementary investment into software written for it. If UASAP were accepted as the standard by other members, United Aircraft could benefit from the future software that other organizations would write for it and at the same time get to keep the software that it had written for UASAP."

ARPANET and Unix
"While modern open source institutions diverge substantially from scientific institutions, both in how they attract external funding and in their handling of credit, they share important characteristics and have clear historical links, the ARPANET project being an important opportunity for a transfer of institutions."

"Among the less successful projects funded by ARPA in 1960s was a new operating system called “Multics.” Multics promised to deliver features that were of interest to AT&T and that IBM had been willing to provide in its software (Ceruzzi 2003, p. 156). AT&T’s Bell Laboratories then joined the Multics project with the hope of accelerating it and steering it closer to AT&T’s needs (Ceruzzi 2003, p. 155, also Salus 1994, p. 26). The Multics project failed, likely due to its excessive complexity. However, a number of Bell Labs researchers produced a simplified version of Multics which they called “Unix.” Unix proved an immediate success."
"In 1973 Unix was rewritten in C, a new language also developed at AT&T. While FORTRAN and COBOL had already enabled portability for certain kinds of software, a combination of C and Unix made it possible to write almost any software in a way that would allow it to be moved between computers. Doing so, however, required access to the source code, because different binary software had to be generated for each machine and modifications to the source code were often required. Being able to move software between computers also meant being able to use it on later computers, increasing the time horizons for software users. While much of the software written in 1960s (including all of the ARPANET software) was hardwarespecific and could be expected to become obsolete eventually, most of the software written for Unix in 1970s can be used today. Increased time horizons made access to source code even more important, as some users could now plan to use their software for decades."

The paper goes on to trace how changes in copyright law and the rise of cheap personal computers influenced the open source movement, including the marketing effort that led to the name "open source" replacing "free software".


Unknown said...

On big factor is the rise of standards such as Java which allows the Open source to be written once for all platforms, Ant for builds etc. In addition many open standards such as HTML, CSS etc from w3c allows anyone to develop to a known 'target' rather than unknowable requirements of a closed source commercial product.

free viagra said...

Great post. I think one of the basic things that we should know know is that we must always make sure that you are safe in every transactions you wanted to indulge with.

Waseem said...

Great all the info..I appreciate you share it.

Church Software