In the early days of the World Wide Web, a web browser would download the HTML of a page, and any images (though there were far fewer) and only once it was complete would it display the page, and what's more it would do this all with a modem a fraction of the speed of the standard ones these days.
Then, along came a browser, produced by a company called Mosaic, that changed all this. Mosaic used clever techniques to allow the page to be rendered once only a portion of the complete data had been downloaded, so it would progressively display the text, and, once the HTML was completed, could display the page to be read, so that a surfer did not need to wait for images to download very slowly. Mosaic changed its name in late 1994 to Netscape Communications, and its product was to revolutionise the Internet - the modern browser was born.
Due to legal issues, having been sued by the University of Illinois, the name Mosaic was removed everywhere from the product, and the brand became Netscape. However, one part of Mosaic/Netscape's image did not change - and that was its happy mascot, Mozilla. It wasn't clear whether Mozilla was a lizard or a dragon, but he owed a lot in terms of image to Godzilla1.
Whilst many feared Mozilla was gone forever, when Netscape chose to go with the more corporate pulsating, wobbling and rotating 'N' so familiar to today's web-user, Mozilla was to live again, in a very different form.
When Microsoft, attempting to take back the web, which was seeing an increased reliance on Netscape's product, released their own browser, Internet Explorer, for free, Netscape was forced to do likewise. Netscape struggled on, making newer browsers, but lost their footing - and their market share - to what many believe to be a far superior product. Internet Explorer has now been widely adopted, and, being slower and bug-ridden, Netscape's market share continues to fall.
Seeing their failing fortunes, Netscape spun-off their browser, putting the creation of its next generation browser into the hands of the open source community, under the auspices of the Mozilla Organisation.
Netscape Opens its Source Code
Netscape revealed all the source code that it could without infringing its licensed products, and offered this up to the world at large, inviting every hacker and his dog to help improve the product, and produce a highly standards-based new version of its browser, email and news programs.
It was originally thought that much of the code from previous version of Netscape Communicator could be salvaged, but as time went on the hackers decided that the code was too muddled and badly written, and should be written from the ground up. One of the ways to simplify the code was to break it up into many components, which interacted with each other, a much more modern approach to programming.
Unfortunately, since they were re-writing the program from the base up, it took a lot longer to do than they had originally thought that it would, and many people have suggested that it is simply too late, with Internet Explorer already having a foothold.
The way that it has been done, however, has produced some very positive features, and many believe that these are so attractive that people will indeed use the Mozilla product, especially once it is fed back into Netscape.
The Killer Features
The first astounding feature to come out of the Mozilla project is probably the most important - since it is the most fundamental. It is also the least apparent part of the browser. Gecko is the new, super-fast rendering engine that powers the browser. The idea behind the original Mosaic browser has been taken to extremes, and Mozilla is able to display individual table cells as they are downloaded, for example, so that as soon as any data has been downloaded it is displayed, and additional data is fed in when it had been retrieved.
As anybody who has used the latest 'Milestone build'2 will tell you, Gecko is indeed incredibly fast, even with much of the debug-code still hard-wired into the program.
One of the very clever things about Mozilla is that it is written using XUL This means that the entire layout engine, rather than being written in traditional programming languages is written in web-programming languages.
This means that what you are seeing when using the browser is effectively all a web page. Even the standard buttons, back, forward, stop, refresh, etc. are simply images placed onto a web page that are able to perform special functions. Even the slider bars at the same are just images on a web-page!
This new way of programming leads on to yet another feature...
The third killer feature is entirely trivial, and happens to lead on very simply from XUL, but may well be one of those that drives people to use Mozilla.
Because the interface is basically just images placed on a page, it is very simple to swap those images for others, and this will be very simple in the final version of Mozilla - it will support skins. This means that people can quickly and simply changes the look and feel of the browser, and customise it. It also means that specialist devices can effectively build a browser on top of Mozilla that looks very special and individual. A portable h2g2, for example, could have goo for buttons very simply, and you would never know that Mozilla was running underneath.
Though this may not much interest the end user, the code of Mozilla has been written to be very portable indeed - with 90% of the code able to run on all platforms. This means that making available a version of Mozilla will be a very simple process, simply requiring that the 10% of platform-specific code to be adjusted. What this means in simple terms is that Mozilla will be available not just for Windows and Macs, but also for Linux, BSD, Unix, BeOS, Sparc, etc.
As different platforms emerge as contenders in the desktop market, a browser easy to install and use on all of these will be very useful. Not just a de facto standard, but one that conforms to public, cross-platform standards.
In the stage that Mozilla is currently at, one of the most important features is already emerging - Mozilla's stability. The open source model means that if there is a bug it is quickly reported and fixed, and this has already made Mozilla pretty stable. Although the product is still pre-alpha, it is already possible to see that Mozilla should be a very stable product, and with the months remaining before its official release, any bugs still about should be ironed out.
Whilst again not one of the most apparent features of a product, this will minimize the annoyance factor, and will ensure that people continue to use the product - why would you use one browser that might crash, when you have the option of another that is almost totally stable? Especially once distributed applications become more prevalent, and mission critical work might be lost if the browser crashes, stability will be demanded.