Towards Apache 1.0

By August activity on the new-httpd mailing list is higher than ever before. From release 0.8.5 on August 1, Apache reaches release 0.8.12 by the end of the month. Activity is heating up. On August 8 the Apache group releases the first public beta of Apache. The response is overwhelming. After the beta release a whole host of new developers join new-httpd. With 24 developers active on the mailing list in July, the number increases to 33 by August. After the voting system broke down during the May-June crisis, it still has not been revived. Robert Thau retains his position as project coordinator with the power to decide which patches to include and which to exclude. As the new design is coming together and the API stabilizes, Thau relinquishes control. On August 22 he sets up the first ballot in over a month. While the response is not overwhelming, it is sufficient for the vote to go through. Even though new blood has found its way onto the new-httpd mailing list, only the original group members—people like Brian Behlendorf, Rob Hartill, Roy Fielding, and Randy Terbush—that cast their votes.

The upsurge is only temporal. By September activity has dropped again. It is still high, though, but nowhere near the August peak. Once again the Apache group seems stuck in an endless myriad of bug fixes. Last month's rapid release cycle has lost speed. Despite only allowing bug fixes and no enhancements into the code, there are only two releases during September (release 0.8.13 on September 11, and 0.8.14 on September 20). It is obvious that the Apache project is heading straight into the same problems it had during April and early May. By October list activity is dwindling again. Only during the May-June crisis has activity been this low. Once again Rob Hartill sees the need for him to take charge. He had inquired about the switch to a 1.0 release number in late August [HARTILLAUG95A](Hartill, posted on the new-httpd mailing list August 29 1995), with no response from the other developers. On October 2, as a follow-up to his first inquiry, Hartill proposes a release schedule for an Apache 1.0 release [HARTILLOCT95A](Hartill, posted on the new-httpd mailing list October 2 1995). Instead of driving the process forth through coding, as he did with the 0.6 and 0.7 releases, he suggest a timetable of for getting the 1.0 release ready. While meeting little resistance, the idea does not meet an overwhelming response either. Some agree; most keep their silence: "...continued silence is a sign of apathy or satisfaction." Hartill writes sarcastically [HARTILLOCT95B](Hartill, posted on the new-httpd mailing list October 5 1995).

As soon as plans for the 1.0 release are announced, the developers start planning ahead on the next release after 1.0. Ben Laurie is especially active with this. He proposes an operating system independence for Apache. Such an undertaking would require another rewrite of the code to abstract the OS dependent elements of the code. But it is not simply the issue of Apache running on other platforms that interest the Apache developers. Instead of adding new features to the existing code base, Roy Fielding would like the group to concentrate on its usability in form of commenting the code and developing proper documentation [FIELDINGOCT95A](Fielding, posted on the new-httpd mailing list October 15 1995). In the mean time Ben Laurie goes about adding support for Secure Socket Layer (abbrev. SSL) to Apache [LAURIEOCT95A](Laurie, posted on the new-httpd mailing list October 16 1995). As with Garey Smiley's OS/2 port, SSL/Apache forks off the original code base. I.e. it is not integrated into the Apache code base. Instead SSL/Apache maintains its own code base independent of future changes to the Apache code.

Parallel to this activity, Rob Hartill is pushing forward on the 1.0 release. Once more he is fighting an uphill battle, and his original timetable slips bit by bit as the other developers show little or no interest in the 1.0 release. On October 17 release 0.8.15 the one that according to Hartill's timetable will be released as 1.0 is made public [THAUOCT95A](Thau, posted on the new-httpd mailing list October 17 1995). Upon having the release candidate, Hartill sets out preparing the 1.0 release further. He rounds up a handful of developers who can provide binaries for the different Unix platforms [HARTILLOCT95C](Hartill, posted on the new-httpd mailing list October 18 1995). A proper release should not have to be compiled by the end-user. Then the whole release plan crashes. Internal dissent in the Apache group crushes Hartill's efforts. As it turns out, a faction within the group feels the code has not been properly tested [THAUOCT95B](Thau, posted on the new-httpd mailing list October 24 1995). On October 26 Hartill cannot be bothered any more. He has been fighting the uphill battle too long, with no response from the group. "I'm not going to suggest any more timetables for 1.0 'cos they just get ignored or rejected" [HARTILLOCT95D](Hartill, posted on the new-httpd mailing list October 26 1995). Instead of a 1.0 release, a new bug-fix release is made public November 5 [THAUNOV95A](Thau, posted on the new-httpd mailing list November 5 1995), setting a definite end to Hartill's 1.0 release effort.

Perseverance and persistence is the key to success. Hartill has not altogether lost hopes of a 1.0 release. In mid-November he makes a new effort [HARTILLNOV95A](Hartill, posted on the new-httpd mailing list November 14 1995). The 1.0 release has been over 3 months in the waiting by now. This time around the other developers respond positively to Hartill's effort. Several people involve themselves with clarifying the outstanding issues for the release. Show stopper bugs are traced, patches to be included are announced, and a date for the code freeze is set. Suddenly the project explodes with activity. After a longer discussion, it is determined which modules to include with the binary distribution of Apache [TERBUSHNOV95A](Terbush, posted on the new-httpd mailing list: November 25 1995). An SSL version of the 1.0 release is being prepared , and on December 2 the Apache group can announce the release of Apache 1.0. Within less than a year the Apache project has matured from being simply a collection of much-needed patches for the NCSA Web server, to having its own architecture and API, having reached a 1.0 release, and being the second most used Web server on the Internet.

While development activity on Apache has been somewhat up and down, the figures of use tell a different story. Apache is becoming increasingly more popular. In August of 1995 the NCSA and Berners-Lee's CERN Web servers are topping the usage statistics with over 75% of all Web servers on the Internet running either one of those. Apache is third on the statistics, with over 15% less users than the CERN server. Only 3.47% of all Web servers on the Internet is running Apache at this stage. From there on, the usage statistics only go one way: upwards. During September, October, and November Apache remains third most used Web server. Its market share increases to 11.39% in November. During the same period both the NCSA and CERN servers loose ground with less than 65% market share by November. Then, in August, Apache has passed the CERN server, and is now the second most used Web server on the Internet with a total market share of 17.91%. During this period, the NCSA server, still the most used Web server on the Internet, has dropped from a hegemony of 57.16% market share in August to 37.71% in December. Things are looking very bright for the Apache developers. (Source: The Netcraft Web Server Survey http://www.netcraft.co.uk/Survey/Reports/)