Please create an account to participate in the Slashdot moderation system

 



Forgot your password?
typodupeerror
×
Mozilla Books Media The Internet Book Reviews

Creating Applications with Mozilla 255

Peter Wayner writes "The book Creating Applications with Mozilla did not set out to capture the essence of modern open source software development in a few hundred pages, but it comes closer to that unreachable goal than almost any other book I can imagine. Everything is there: the proliferation of acronyms, the funky names, the endless layers, the earnest collaboration, the unstoppable yearning for customizability, and, of course, plenty of source code. The book is just supposed to be teaching us how to turn Mozilla into a front end for everything, but it's really a distilled exhibit of all that is hip and now in code creation." Peter's review continues below.
Creating Applications with Mozilla
author David Boswell, Brian King, Ian Oeschger, Pete Collins & Eric Murphy
pages 454
publisher O'Reilly
rating 9
reviewer Peter Wayner
ISBN 0596000529
summary How to use the Mozilla APIs to do anything.

On the first and most obvious level, the book is just the typical, thorough treatment of the important APIs that we've come to expect from O'Reilly. There are chapters addressing all of the important layers of the Mozilla platform and plenty of examples that show you how to customize the platform. Some may want to change the icons and others may want to add more robust features. The range of possibilities is surprising and coders are creating one-to-one communications enhancements, add-on widgets, and even games. There are certainly some things missing, and some areas that could use more detail or more complicated examples, but the book is already 454 pages long.

On another level, this book is also one of the first finished documents that explains what the Mozilla group has really been up to for the past five years. Some have abandoned the project, and others have attacked it as fundamentally misguided. This book shows why it took so long by demonstrating all of the cool features added during the long march to a new, thoroughly extensible architecture.

Are the results enough to justify the time and the effort? Some note that the features may be a bit overhyped, because building your own browser with the Mozilla API is like making a pizza with $15 and a telephone. While there's a large part of the book devoted to the work you can do to change the look and feel of the buttons on your browser, the book and the project offer much more. The Mozilla project is one of the biggest threats to simple tools like Visual Basic to come down the pike in some time. The various layers offer many ways to provide good, customizable interfaces to databases, the web, and much more. I can see how many corporate development shops may want to start making Mozilla the platform for a license-free front-end, simply because it's a straightforward tool without extra costs or restrictions.

At the most abstract level, the book is a great way to get a taste of modern software development. Computer scientists sometimes fix problems by adding more and more layers of indirection. This may not solve anything, but at least there are hooks for a real solution to use some time in the future if some one ever does figure out how to make the box do it. The Mozilla browser is one of the most extreme examples of this philosophy to ever emerge. Emacs was something special, but this is even more insane. Everything can be changed around by rewriting some XML and Javascript and most people don't need to juggle the pointers in grubby C to do amazing things. I realize it's not as beautiful as Lisp to some, but it's got a clarity and level of abstraction that's stunning to behold. Lisp was just procedural, while XML is more like logic programming.

This relentless customizability embodies one of the deepest reasons for the success of open source. Technology is inherently complicated and the only way we can use it is if we can look under the hood. You can say all you want about CVS trees and bazaars filled with competing code, but opening up the interface is one of the most powerful themes of open source. It's not about teaching people to build their own VCR or PVR from scratch, getting the VCRs for free or even debugging the VCR's source code -- it's just about making them easy enough to program.

The book illustrates how Mozilla opens up the API to create a relatively easy language for people to use. The real open source is not the C in the tar ball, but the XML interface spelled out in the book. Many people feel that the most important thing that the first browser designers did was make it easy for people to see the HTML tags marking up the document in front of them. The new Mozilla takes this transparency to a new high.

If you look at the book at all of these levels, you can see that this is one of the most important documents to emerge from the open source community in some time. At first glance, it's just another set of APIs for us to wiggle. I realize it's not fair to credit the Mozilla team or the book authors with creating the browser or XML ex nihilio -- they just jumped on some of the most popular bitwagons propagating across the Net. But the result is a stunning completion of a very important and cohesive vision. The book doesn't crackle with bleeding-edge novelty, but shines with the certainty of a job well-done.


Peter Wayner is the author of Translucent Databases , Disappearing Cryptography , and a number of other books. You can purchase Creating Applications with Mozilla from bn.com. Slashdot welcomes readers' book reviews -- to see your own review here, read the book review guidelines, then visit the submission page.

This discussion has been archived. No new comments can be posted.

Creating Applications with Mozilla

Comments Filter:
  • Standards anyone ? (Score:0, Insightful)

    by BESTouff ( 531293 ) on Wednesday October 16, 2002 @10:33AM (#4461541)
    How is developping a web application which will run only on Mozilla different from doing an IE-only website ? Honestly, I'd like to know.
  • by BoomerSooner ( 308737 ) on Wednesday October 16, 2002 @10:36AM (#4461570) Homepage Journal
    It could be a stand alone app that uses mozilla as the core functionality. It's my understanding Mozilla runs on almost every available platform where IE is windows specific (the mac version is nothing like the windows version).

    That being said I run mozilla on mac os 8, 9 & 10, linux, solaris and windows. I'm not sure what the problem would be.
  • by veddermatic ( 143964 ) on Wednesday October 16, 2002 @10:39AM (#4461602) Homepage
    Let's see... can I embed IE into my web app?
    Nope.

    Can my IE web app run on almost every platform out there?
    Nope.

    Can I modify IE in case I need additional functionality?
    Nope.

    There's the tip of the iceberg in differences...
  • by henben ( 578800 ) on Wednesday October 16, 2002 @10:39AM (#4461603)
    No, I think they're on about using the Mozilla codebase to make desktop applications, where the code is installed on your machine. Like Galeon, or kiosks, or that wacky Mozilla-based OEOne desktop thing, or something. NOT "web applications" that work over HTTP.

    Not sure whether it will catch on, but it's nice that they make it easy for other developers to benefit from all the work that's gone into coding Mozilla.

  • the important part (Score:2, Insightful)

    by cetan ( 61150 ) on Wednesday October 16, 2002 @10:41AM (#4461620) Journal
    On another level, this book is also one of the first finished documents that explains what the Mozilla group has really been up to for the past five years. Some have abandoned the project, and others have attacked it as fundamentally misguided. This book shows why it took so long by demonstrating all of the cool features added during the long march to a new, thoroughly extensible architecture.

    To me this is the one of the most important parts. I'm not a programmer, nor will I ever be I think. But from an evangelism perspective, I can point to this and say: "See, see? They were not just f-ing around for years, they were building something with amazing functionality!"
  • by Anonymous Coward on Wednesday October 16, 2002 @10:41AM (#4461628)
    How come Lisp become 'just procedural'?! Do u have any idea baout what u r writing?
  • by kfg ( 145172 ) on Wednesday October 16, 2002 @10:43AM (#4461641)
    this could catch on. Why on earth do you think they were so hot to kill the browser market for anything but IE?

    Hint: It was *not* to simply have the most popular browser that they made no profit on.

    KFG
  • by nervlord1 ( 529523 ) on Wednesday October 16, 2002 @10:45AM (#4461663) Homepage
    Mayeb because these standards are open, and can be extended by anyone who chooses to extend them. That simple really
  • by JordanH ( 75307 ) on Wednesday October 16, 2002 @10:47AM (#4461677) Homepage Journal
    I think the point is not to develop web applications with Mozilla, but more generally to use the plugin architecture and the customizability of Mozilla to develop generalized local applications.

    An example of this kind of thing would be Komodo [activestate.com], an IDE for Perl/Python/Tcl/ development.

    I seem to recall that some use MSIE as a component architecture to develop generalized applications in much the same way, but I can't think of any examples of this right now.

  • by Jack Wagner ( 444727 ) on Wednesday October 16, 2002 @10:48AM (#4461680) Homepage Journal
    Isn't so much about standards, it's more about de-facto standards and their general tendancy to change. I couldn't see devoting 5 or 6 months to develop a custom application specifically for Gnu/Mozilla when one year down the road they may decide to alter the XUL "standard" and totally screw me.

    This is why stuff like TCP/IP and "C" took off, because they were in the hands of a standards body who were responsible and considerate of issues like this.

    The Gnu/Open Source community needs to take into consideration that since they are working their way into the mainstream they *must* begin to be more proffesional and intelligent in matters of "standards" or they risk alianating the commercial development community.

    That would be a serious mistake on their end, serious indeed.

    Warmest regards,
    --Jack
  • by K. ( 10774 ) on Wednesday October 16, 2002 @10:55AM (#4461736) Homepage Journal
    The last thing the world needs is non-programmers evangelising programming tools.
  • by DrXym ( 126579 ) on Wednesday October 16, 2002 @11:15AM (#4461861)
    Aside from all the extensions and skins for Mozilla (of which there are hundreds already in places such as in MozDev.org), the various apps that comprise the Netscape/Mozilla suites (browser, mail/news, chatzilla, dom, js debugger, aim etc.), you also have browsers such as Phoenix & Beonix, and entire new applications such as Komodo [activestate.com]. and Crocodile Clips [crocodile-clips.com]. Then there are the numerous 'embedded' applications which use the Gecko engine (little or no chrome) to host content in the likes of Compuserve, Galeon, Chimera, and more.


    In short anywhere which requires a web-oriented application (preferably cross-platform) would do very well to evaluate Mozilla as a development platform. I expect database and server-side apps will ship in due course with applications based on Mozilla to do form design and other administrative tasks in a cross-platform manner.

  • by IamTheRealMike ( 537420 ) on Wednesday October 16, 2002 @11:37AM (#4462062)
    It seems Mozilla is working closer and closer to being an OS than just a browser. Kinda funny if you think about it, where MS has windows which was supposed to be an OS and is now including a browser.

    What is doubly amusing is that when Microsoft attempted to kill (perhaps did kill) Netscape, they did so because they were scared the browser would turn into a platform that would let you write kickass apps making Windows irrelevant. In a way, this became a self-fulfilling prophecy, as if Netscape hadn't been taken over by AOL and left to do its own thing, would Mozilla (a platform as well as a browser) exist today?

    I doubt that one day all desktop apps will be written using Mozilla. But it's an intriguing possibility, I look forward to the GRE with much interest.

  • Re:My Review (Score:4, Insightful)

    by Dalcius ( 587481 ) on Wednesday October 16, 2002 @11:52AM (#4462181)
    Hiyas, Pave! Good trolling!

    Folks, this is a rip of the preface of the book.

    Have a look for yourself [mozdev.org] and then mod this troll down.
  • by Tablizer ( 95088 ) on Wednesday October 16, 2002 @11:55AM (#4462214) Journal
    The XUL interface, which is basically XML-based at its core, is about as flexible as one can get with the UI experience.

    When I last checked, XUL did not have coordinate-based positioning, but rather nested-based. Coordinate-based works better with visual screen builders IMO. True, it does not auto-scale as well, but when the boss wants something very specific WRT GUI layout, coordinates are much easier than nesting to give him/her precisely what they want.
  • by LoRider ( 16327 ) on Wednesday October 16, 2002 @12:15PM (#4462381) Homepage Journal
    But is the book any good. All I got from the "review" was that the reviewer thinks Mozilla is cool. What about the book? Was the book good? Was it well written? What did the reviewer like about the book, not the subject, that warrants a 9? Why not a 10, what didn't he like about the book?
  • Comment removed (Score:3, Insightful)

    by account_deleted ( 4530225 ) on Wednesday October 16, 2002 @12:15PM (#4462388)
    Comment removed based on user account deletion
  • by unsung ( 10704 ) on Wednesday October 16, 2002 @02:24PM (#4463340) Journal
    I can get plenty of opinions about XUL by looking through previous Mozilla /. posts. I just want to know if I should buy the book. Do they have a tutorial and step us through a FOO test application? If so, what is the application? What other tools do I need to create the application?

  • by Dalroth ( 85450 ) on Wednesday October 16, 2002 @02:29PM (#4463389) Homepage Journal
    This isn't even close to a book review. He does nothing but glower over how great Mozilla is (which we all agree on), but says nothing about the quality or content of the actual book.

    The book itself *IS* good (at least that which I have read so far). You'd never be able to tell from this review though....
  • by Locutus ( 9039 ) on Wednesday October 16, 2002 @03:25PM (#4463796)
    we also now have a very inexpensive GUI on the clients. Had the makers of the XTerminals been more realistic, this wouldn't be news because we'd already have thin-ish clients with a GUI interface.

    There are MANY places where thin-ish clients are far more practical then thick clients. Especially when MS Windows is what's running on the thick client....

    There are many places for thick clients also.
    IMHO.

    LoB

I've noticed several design suggestions in your code.

Working...