SM: How did you get involved with Apache? Was it through Organic?
BB: Organic was my day job and I stayed there until 1998. Apache was a side effort that ran in parallel to Organic. Web technologies were brand new at the time and companies were just starting to emerge with commercial web software. Most of the software which was used to build the Internet was freely available. We were using the NCSA web server which was from the same group that put out Mosaic. We were hacking on that server when their team lost a lot of developers to Netscape.
The users of that community had a moment of self realization and it was decided that since the main developers were going to be lost that the software should be maintained on its own. We determined it was easier and more cost effective for us to fix a few bugs and add an occasional feature by working a couple hours a week than it was to spend $5,000 per CPU on commercial web server software that did not seem any better. That, in short, is the genesis of the Apache project.
SM: Was the word OpenSource coined yet?
BB: Not yet. The term OpenSource came about in 1998. I attended the meeting where it was coined. At the time free software had started to take a political bend which didn’t describe nor illustrate the practical advantages a lot of us saw. It certainly did not recognize the business advantages and flexibility that open code provided. The term ‘free software’ made it sound like an anti-capitalist movement, yet the reality is we were hardcore capitalists. We liked a lot of the attributes of that type of software and felt a re-branding effort was needed. That is when the term ‘OpenSource’ was coined.
Apache grew from one mailing list, one CVS tree, and one simple bug database to a couple dozen projects. We established a template to guide groups as they worked together. My own role shifted from being a programmer to being somebody who thought about how the community formed, how it accomplished tasks, how it made decisions and what tools were needed to support the effort. The main concern was how to develop a consensus oriented process that was not design by committee.
The tools at the time, for example CVS, were equivalent to the classic VW Beetle. They were insufficient for doing real work. They did, however, work at a certain level and when they broke people knew how to fix them. Something new was definitely needed. Likewise the integration between the older tools such as the mailing lists, bug databases, CVS, and other development software was non-existent. For the Apache project I had to piece these elements together with duct tape, bailing wire, and a whole lot of manual labor. That is when I first started thinking there had to be a much better way to do all of this.