How well do you know Apache? One thing you might know is that its name came from the fact that it grew out of patches to an earlier Web server, HTTPd, and so was literally “a patchy” server. Except that this story isn't true, as Brian Behlendorf, one of the key people behind the original Apache project, told me a few years ago when I was writing Rebel Code:
“I had some friends at a company called EIT – Enterprise Integration Tehchnologies,” Behlendorf explains. “I had some discussions there about what, if someone were to write a commercial Web server, should be in it. So I wrote up a page on a bunch of different features, and just put a name on it – Apache. Because I thought it was an interesting name, something that wasn't Web this or Spider that, or Arachnid, or any of the kind of metaphors being used [then]. It was something that was abstract and not related to anything specifically, but just connotated a kind of powerful server.”
Nothing ever came of the commercial Web server Apache, and so Behlendorf decided to recycle this “interesting name.” He recalls, “When I finally got together with a few other people and started passing patches [for HTTPd] and saying, 'Shall we do our own distribution?' I volunteered the name 'Apache' and that seemed to go over pretty well. That's kind of the genesis of the name, but when I volunteered it, people said that's a very funny pun” because the new Apache server was indeed “a patchy server”, created as it was out of patches to the NCSA code.
So what else do we know for sure about Apache: that it's a Web server, perhaps? Well, yes, but rather more too, because the original project has blossomed into a both a foundation and Foundation that oversees the creation of getting on for a tens of individual projects. Some of these, like Tomcat, SpamAssassin and Maven, are well known; others are not: Derby, Felix, Gump, Jackrabbit, Lenya, Shale etc. etc.
That partial list of fascinating applications shows how far Apache has come from its origins as a few patches to pre-existing code. It is not only – still - the pre-eminent Web server, it is also a large-scale meta-project that seems able to managed dozens of subsidiary projects with astonishing ease.
The foundation has, at the time of writing, 1765 committers, that is people who have write access to at least one of the 65 Apache projects.
Collectively these committers have made 662,663 changes to the various Apache projects in Subversion.
For the month of May 2008 the ASF web servers received an average of 5,995,132 requests per day with a further 1,572,052 requests to the subversion servers and 479,636 requests to the issue trackers.
In terms of data transfer that amounts to an average of 2.908 TB per day from the web servers and another 21 GB per day from subversion and svn.
Impressive as those stats are they become all the more impressive when you consider that the Apache Software Foundation does all this with an expenditure of only $181,202 in the 2007 fiscal year.
Got that? Over 60 projects running on a total budget of around £90,000. As Ross rightly notes, that statistic alone is crushing proof that the open source development methodology not only works, but works with an efficiency that is orders of magnitude better than anything the proprietary world can dream of, let along achieve. Indeed, I'd venture to say that the consistent quality of the code its projects produce, together with its unmatched ability to keep on scaling, makes the Apache Foundation the best example of open source and its advantages that we have today.