Mozilla web applications are another attempt to do what Sun tried to do with Java Applets. However, the Mozilla effort comes after the web has had 7 more years to mature (1.0 released in 2002, with Java making the scene in 1995).
Perhaps the greatest advance has come with XML. Mozilla puts it to good use as: (1) an interface specification language (XUL); (2) a declarative programming language (XBL); and (3) a data definition language (RDF). This removes a lot of the need to write procedural code (a la applets) which is one of the hardest parts of writing distributed applications. Javascript is used for any procedural bits that remain, mainly client-side interaction effects.
Creating web applications with Mozilla does a great job of laying this architecture (and more) out and giving the novice an idea of where to start. Even if you already know XML, javascript, CSS, and all the other components that go into creating Mozilla applications, you need this book to tell you how mozilla synthesises them.
The problems I see with this book are the problems I see with mozilla. Mainly, it's the issue of maturity. For instance, there is mounting evidence that mozilla is going to evolve from its current monolithic approach of providing web, email, chat, and whatnot all in one package to individual applications. One imagines that that will bring about a paradigm shift in how one creates mozilla applications. Is there a way to code with those possibilities in mind. The book is silent on this point because I suspect too much is unknown. It will probably require a major update at that point.
Other issues: (1) What are best coding practices? How would one implement model-view-controller, a popular web application paradigm, using mozilla? (2) Are there standard solutions available so that people do not have to go around re-inventing algorithms and packages? A mozilla coookbook might be in order. (3) How can one write remote applications? The book gives one tantalizing chapter, suggesting this is a growth area. Eventually, it might warrant a book on its own, once things have become clearer.
All in all, I rate the book very good because I think it is a great start. There's more to do.
|