Apache has moved on rather a long way from those “patches”, but crucially, its development was not just about code. In June 1999, The Apache Group – the coders working on the Apache program – created something a little more formal, the Apache Software Foundation:
The Foundation was formed primarily to:
provide a foundation for open, collaborative software development projects by supplying hardware, communication, and business infrastructure;
create an independent legal entity to which companies and individuals can donate resources and be assured that those resources will be used for the public benefit;
provide a means for individual volunteers to be sheltered from legal suits directed at the Foundation's projects; and,
protect the 'Apache' brand, as applied to its software products, from being abused by other organizations.
That all sounds a sensible, if relatively unimportant change. Far from it: it has allowed Apache the project to evolve into Apache the ecosystem with the Apache web server at its heart. This has led to the creation of the most extraordinary range of projects, some in the ASF “incubator”, others as standalone projects. Here's the ASF's own explanation of how that happened:
As the Apache Web Server started to grow in market share and popularity, due to synergy of its technical merit and to the openness of the community behind the project, people started to create satellite projects. Influenced by the spirit of the community they were used to, they adopted the same traditions of community management.
So, by the time the ASF was created, there were several separate communities, each focused on a different side of the "web serving" problem, but all united by a common set of goals and a respected set of cultural traditions in both etiquette and process.
These separate communities were referred to as "projects" and while similar, each of them exhibited little differences that made them special.
In order to reduce friction and allow for diversity to emerge, rather than forcing a monoculture from the top, the projects are designated the central decision-making organizations of the Apache world. Each project is delegated authority over development of its software, and is given a great deal of latitude in designing its own technical charter and its own governing rules.
At the same time, the cultural influence of the original Apache group was strong and the similarities between the various communities are evident.
This, in a nutshell, is why Apache has continued to trounce Microsoft's IIS. The Apache community has succeeded not just in developing great code, it has managed to distil the essence of the development process and ethos in such a way that other cognate projects can adopt and adapt it.
As the above description notes, one of the key aspects of the ASF is that “rather than forcing a monoculture from the top, the projects are designated the central decision-making organizations of the Apache world”. In the long term, this successful application of open source's bottom-up, distributed approach at the next level up – that of coordinating ASF projects – may well prove Apache's greatest legacy as it begets more mutually-supportive open source applications, and as other major open source projects learn from its success in co-ordinating them.
It's also worth noting an irony here. As the ASF's “thanks” page notes:
The Apache Software Foundation could not exist without the continued generous support from the community. We would like to take this opportunity to thank our Sponsors.
The highest level is “Platinum”, and there are currently three companies paying the required $100,000: Google, Yahoo and Microsoft. As Sam Ramji wrote when this sponsorship was announced in 2008:
It is not a move away from IIS as Microsoft’s strategic web server technology. We have invested significantly in refactoring and adding new, state-of-the-art features to IIS, including support for PHP. We will continue to invest in IIS for the long term and are currently under way with development of IIS 8.
It is a strong endorsement of The Apache Way, and opens a new chapter in our relationship with the ASF. We have worked with Apache POI, Apache Axis2, Jakarta, and other projects in the last year, and we will continue our technical support and interoperability testing work for this open source software.
Well, that significant investment didn't turn out so well, as the latest Netcraft survey shows. And that means Microsoft still hasn't understood what “The Apache Way” really means, much less applied it to its own portfolio. Until it does, The Microsoft Way is likely to ensure that the IIS Way is strictly a one-way street: downwards.