Subject: The Free Software Community's contributions to standards
From: (Adam J. Richter)
Date: Sat, 21 Sep 1996 21:56:18 -0700 (PDT)

Peter Deutsch writes:
>The problem is that the free
>software community has never succeeded at (1) establishing reasonably stable
>API standards above those of Unix and X [...]


	I disagree, but let me first point out two ways in which this
criticism is misleadingly slanted against free unix-like systems.
Firstly, the design of application programming interfaces is usually
not separable into free and proprietary software camps.  Secondly, the
commonly understood definition of "Unix" has come to include most API
standards as they have come to be developed on unix-like platforms,
such as networking, curses, long file names, dynamically loaded
libraries, DES cryptography, posix threads, and the domain name
interface (even if just considering the C interfaces).  Consequently,
you are exempting a very large amount of contribution to API standards
to API standards without exempting anything from the other side of
the comparison.

	Nevertheless, I think your slanted criticism is still false.
If we define "Unix" to be just the base V6 unix functionality, then
the entire history of the Berkeley Software Distribution enhancements
to unix is a laundry list of counter examples to your statement.  I am
hard pressed to think of any standard from Motif (the HP Xray toolkit)
and OpenLook in the graphics world to the domain name system (even if
you just count the C programming interfaces) to C interfaces to
extension languages like Tcl in which free software did not play a
major role in shaping the standard.  In most cases, free "reference
implementations" were integral to the development of the standard, and
often ended up obviating the need for proprietary versions.

	If there is any particular strength in documenting C
programming interfaces on the part of the proprietary software world,
it is because there is little alternative when the source code is not
available (I am ignoring proprietary software for which source is
available, because I think that is a statistically insignificant class
right now).  On the other hand, if you look at all programmatic
interfaces, not just C calls, but also protocols, languages, utility
programs, and maybe even file formats, I think the contribution from
the free side is greater, even without scaling to the vastly smaller
amount of revenue currently powering the free side.  Examples from the
internet RFC's are legion.  Just to take a few that Microsoft has had
to adopt recently, consider MIME multimedia email formats, the domain
name system, and RPC.  The contributions of CERN and the W3 consortium
to the current web standards should not be overlooked, and, by your
definition of "free software", I suppose you could throw in
contributions due to Mosaic and Netscape.