Jeff dropped by a few days later. I offered him a drink and we chatted about the latest Linux developments, then we went to my room.
Jeff instructed me to checkout a certain initial working environment he prepared for working on DocBook documents in advance, from its version control repository. We then started to work on the specification.
DocBook is very verbose in comparison to HTML or any other document format I knew until then. Here's a small glimpse of it:
<orderedlist> <listitem> <para> First Item. </para> </listitem> <listitem> <para> Second Item. </para> </listitem> <listitem> <para> Fourth Item. Just kidding! It's the third. </para> </listitem> </orderedlist>
But with a lot of fast typing and copy and pasting, it was pretty much OK. DocBook can be translated into a great deal of other formats: HTML, Acrobat Reader PDF, Microsoft Word, and even UNIX man pages. We routinely did the conversion only to HTML, but occasionally converted it into PDF as well.
We made a lot of progress that day, despite the fact that Jeff or I initiated some breaks sometimes. It's really good to work in pairs like that. At the end of the day, we checked in the most recent version into the version control repository, uploaded the specification in its various final formats to a pre-designated web-site, and sent a link to what we had so far to the Linux User Group's mailing list.
The next day, when I checked my E-mail, I saw several messages about it. It also caused a flame-war. ("Media-enabled IRC? That would be as Evil as HTML E-mail is."). Anyway, some of the input was useful, and some people even said they may be able to donate some time and help us out.
Jeff and I finished the specification after two more meetings like that. We submitted it as a "Request for Comments" document, and started working on the client and the server.
This took a while as we both had to learn Mozilla XUL, but we were able to get a working version in a relatively short time, that implemented a subset of the functionality. It was pretty neat talking with it, even though we were only two people there. So we set up a testing server for it, packaged the client and the server as media-irc-client and media-irc-server-perl (versions 0.2.0 for both) placed them online on a web-site, and announced it on Freshmeat. (the uneducated reader should know that freshmeat.net is a site that categorises software for Linux and displays news of their recent releases.)
It was a project of mostly just our LUG for a time being. Erisa decided it was a cool thing, and kept using the bleeding-edge of the software and talked with it. She also contributed some very nice patches (= changes that are both human readable and easy to apply) to it. Taylor got very enthusiastic about it ("You're a first-class hacker now, Jenn!") and kept suggesting ideas for the code, and doing clean-ups. Even Jeff's girlfriend, Amanda, who wasn't particularly technologically-inclined (well to be honest, she wasn't a computer- phobic, either) used it to talk from work and home, and reported bugs and stuff.
We opened a channel for this on the old-fashioned IRC, where we could coordinate the efforts if the server broke down, or if we needed something simple. Eventually, we also started a mailing list for the developers. Other of the user-group's members gave a hand or lurked on the mailing list. It was all a lot of fun.