Slashdot Mirror


Rapid Application Development with Mozilla

Matthew Morgan writes "Mozilla's strengths as an application platform often go unrecognized for lack of good documentation. Nigel McFarlane sets out to change that in Rapid Application Development with Mozilla. McFarlane describes his book as "a conceptual overview, reference, and tutorial" for building applications on the Mozilla platform. But does he have room for all three in one book?" Read on for Morgan's answer to that question. Rapid Application Development with Mozilla author Nigel McFarlane pages 770 publisher Prentice Hall PTR rating 7 reviewer Matthew Morgan ISBN 0131423436 summary A good overview and tutorial for building applications atop Mozilla, though not a comprehensive reference.

The Basics Rapid Application Development with Mozilla (hereafter RADM) centers on XUL, Mozilla's XML dialect for describing GUIs. Other Mozilla components, like XBL and RDF, are described mainly in terms of how they plug into XUL. Each chapter presents and explains a component, then shows it in action by using it in an example application (a web-page annotator) developed throughout the book. Chapter conclusions take the form of debugging hints; as McFarlane ruefully notes, most errors cause Mozilla to silently do nothing, making debugging a chore.

The first half of RADM covers basic XUL use -- the usual complement of widgets with CSS to style them and JavaScript to manipulate them. McFarlane does assume previous exposure to basic HTML, JavaScript, and CSS, but extensive experience isn't required. At each step McFarlane does a good job explaining what's similar to HTML (e.g. most DOM stuff) and what isn't (e.g. the layout model). A few components have no real analog in the HTML model, like Mozilla's command dispatch system, so they're presented from the ground up.

The Back End

The second half of the book leans more toward the back end: using RDF for registries and template data; piping data into XUL with overlays, templates, and XBL; using and implementing XPCOM components; and deploying applications built on Mozilla.

McFarlane's RDF tutorial is one of the best I've seen. He starts off on the right foot by introducing things in terms of a directed graph, with lots of examples and diagrams. Only after eighteen pages of that does he introduce the RDF/XML syntax. His explanation of RDF/XML is unusually lucid, quite a feat considering how hairy RDF/XML gets. (Disclaimer: I've had past experience with RDF, so I wasn't reading this as a beginner -- in other words, YMMV.)

In the succeeding chapters, RDF is applied within the various Mozilla arenas, like XUL overlays and package installation, where it's used to store config information. The centerpiece of RDF in Mozilla, though, is in its use to create data-driven XUL files through XUL templates.

The chapter on templates runs to sixty-plus pages, and it's worth it. McFarlane covers things I haven't seen covered anywhere else. For instance, he describes the algorithm the RDF query engine uses to evaluate queries, so that you can better understand what kind of queries you can construct. This is crucial information because the query syntax allows a lot of queries that are logically reasonable, but won't actually work.

This points to a strength of RADM: McFarlane doesn't hesitate to criticize Mozilla where necessary. Throughout the book, he flags incomplete features, buggy implementations, and other gotchas, such as security restrictions surrounding RDF that make it all but useless for remote scenarios.

(Incidentally, McFarlane explicitly disclaims coverage of Phoenix/Firebird/Firefox, sticking to Mozilla 1.4, but in practice everything I've tried has worked fine in Firefox 0.8.)

Two Out Of Three Ain't Bad

So, does RADM manage to accomplish its goals of being a conceptual overview, tutorial, and reference? I'd give it two out of three.

As a conceptual overview, RADM shines. McFarlane is at his best when comparing and contrasting closely related components, like overlays, templates, and XBL, all of which extend XUL but do it in different ways. I was left with a good picture of what can and can't be done in Mozilla.

As a tutorial, RADM is solidly useful. The example-application sections cover a surprisingly large amount of ground -- more than enough to get a developer new to Mozilla up and running. McFarlane chose a good subset to present as examples; still, all of his clear writing can't paper over the fact that Mozilla is really complicated, not just internally, but in the interface it presents to developers using it as a platform.

As a reference, RADM stumbles. The index is slim -- a mere eighteen pages after 752 pages of content -- which makes small chunks of information hard to find. This is mitigated by a detailed and well-organized table of contents. After a few weeks of use, I find myself turning to the contents first, and only trying the index if I have to.

Fundamentally, though, RADM isn't really a reference book, and definitely not a "quick reference." You'd be better off using a good site like XULPlanet for quick what-arguments-does-that-method-take checks, and reserving RADM for in-depth explanations.

Conclusion

RADM is published in Bruce Perens' Open Source Series at Prentice Hall under the Open Publication License. After a few months of letting the book sell on its own, they'll post the PDF of the entire book online. Is it worth buying in print? Given that it's more of a sit-down-and-read book than a quick-reference guide, I'd say so.

If you're considering Mozilla as a platform, I'd recommend RADM for its reasonable balance that shows Mozilla's strengths and weaknesses. If you're already sold on Mozilla and just want to wrap your head around it and start building an app on it, RADM is the book for you.

You can purchase Rapid Application Development 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

249 comments

  1. Rapid Mozilla Development by Hot+Summer+Nights · · Score: 5, Funny

    ln /usr/bin/konqueror /usr/bin/mozilla

    --
    Karma: Terrible - and proud of it!
    1. Re:Rapid Mozilla Development by Anonymous Coward · · Score: 2, Funny

      ln -s
      you bloody hard bastard!

  2. Bugs by Fiz+Ocelot · · Score: 3, Insightful

    I'll take less bugs over rapid development any day.

    1. Re:Bugs by Anonymous Coward · · Score: 1, Funny

      That should be "fewer" you tool.

    2. Re:Bugs by Anonymous Coward · · Score: 5, Funny

      Within the first four minutes:


      >> I'll take less bugs over rapid development any day.

      > That should be "fewer" you tool.


      I guess he proved his point. His "rapidly developed" comment had a bug.

    3. Re:Bugs by Anonymous Coward · · Score: 0

      Maybe he wants less bugs (smaller, less devastating bugs could be his alternative of choice). Careful with that argument.

    4. Re:Bugs by Anonymous Coward · · Score: 0


      BTW, see the usefulness of peer review!

    5. Re:Bugs by Anonymous Coward · · Score: 0

      You criticize Lin[whatever] for using deceptive naming, then you deceptively name your disparagement site "Lindows News". Fucking hypocrite.

    6. Re:Bugs by Anonymous Coward · · Score: 3, Informative

      You obviously have no idea what rapid development means. It does not equal "cowboy coding with no testing". It means minimizing bureacratic overhead; iterative approach, building of prototypes. Iterative approach and prototyping make it LESS likely bugs stay there very long -- instead of having month-long painful integration infernon at the end of 2-year long waterfall death march, integration is done much more often, prototypes are reviewed, code is refactored, and code quality remains high.

    7. Re:Bugs by StiLTs · · Score: 1

      Well, no, that disproves his point. He said he'd prefer less bugs but, obviously, he preferred rapid development instead.

      --
      open minded enough to see things for what they really are
    8. Re:Bugs by e-Trolley · · Score: 1

      I'll take speed over RAD any day :( Mozilla, my most used application, is too slow at the moment. I have an old 1.2GHz Athlon/512MB OK, this is not state of the art, but all my KDE Applications run like hell, only Mozilla kinda suxx (in terms of speed).

    9. Re:Bugs by Anonymous Coward · · Score: 0

      Yo dogz, mod this one up.

      Peace out, foolz.

    10. Re:Bugs by bman08 · · Score: 1

      I also would prefer less bugs. right now, i push enter and the text on the screen scrolls down. it's convenient, but i think less could be more fun if it had a few surprises.

  3. Download link by Anonymous Coward · · Score: 4, Informative
  4. Re:Rapid Application Development is RAD! by Anonymous Coward · · Score: 0

    I thought RAD was an 80s BMX movie.

  5. Support of large corporations by sibdib · · Score: 5, Interesting

    Oracle is going to write their applications so that they take advantage of the rich client opportunities that XUL provides. They are going to use Mozilla as a platform in much the same way that the Komodo IDE is based on Mozilla. XUL allows developers to do much more than they could with just HTML.

    This is a great opportunity to show what Mozilla is truly capable of. In may ways Mozilla offers today what Microsoft is only planning to release with Longhorn. Not to mention the fact that Mozilla is Free Software and platform independent. It's made to order for developing and releasing rich client applications on a wide variety of platforms.

    1. Re:Support of large corporations by Anonymous Coward · · Score: 5, Interesting

      Proof of that support reared its (not) ugly head this weekend...
      I was in Lowe's home impovement this weekend, and noticed that the terminals appeared to be running custom apps based on Mozilla on Linux terminals (as well as some character based apps). The widgets appeared to be Gnome, but I am not positive.

      Brian

    2. Re:Support of large corporations by DebianRcksLindowsLie · · Score: 3, Insightful

      Looks like it's time for me to stop shopping Home Depot and supporting Lowe's! Thanks for the tipoff.

    3. Re:Support of large corporations by Anonymous Coward · · Score: 0

      What's wrong with "promoting porn"?

    4. Re:Support of large corporations by Anonymous Coward · · Score: 0

      I was in Lowe's home impovement this weekend, and noticed that the terminals appeared to be running custom apps based on Mozilla on Linux terminals
      I was in red light district too (in Amsterdam in fact), but all were running only standard services on standard terminals...

    5. Re:Support of large corporations by Havokmon · · Score: 1
      It's christian fundamentalist parody - or is it? :P

      --
      "I can't give you a brain, so I'll give you a diploma" - The Great Oz (blatently stolen sig)
    6. Re:Support of large corporations by Anonymous Coward · · Score: 0
      This is a great opportunity to show what Mozilla is truly capable of. In may ways Mozilla offers today what Microsoft is only planning to release with Longhorn. Not to mention the fact that Mozilla is Free Software and platform independent. It's made to order for developing and releasing rich client applications on a wide variety of platforms.

      To play devil's advocate, however: doing so ties you into yet another platform, Mozilla itself. While I do appreciate effort Mozilla is doing, and have less concern about their potential strangehold than Microsoft's, it still raises question of why not trying to improve standard-based browser support, instead of customizing features of one single browser? Plain vanilla web apps will run on most any browsers, on any platform. Mozilla apps just on Mozilla.

      It's almost as if Mozilla folks just got tired of W3C process (understandably so... it's not all that good process nowadays), and decided to just go with Netscape/Microsoft route of "we write standards". They do use open standards, fortunately, just not ones really standardized by W3C.

    7. Re:Support of large corporations by great+om · · Score: 4, Interesting

      Loews has a IT policy that allows any operating system but Microsoft windows (all versions) into their store. Windows is forbidden

      --
      ------- Oh damn.... the Sigfile escaped... -Great OM
    8. Re:Support of large corporations by HyperCash · · Score: 1

      Actualy, Home Depot uses linux, too. Here are a couple of links. One Two

      --
      So I'm jump'n up and down screaming show me the money.
  6. It's time to embrace XUL by darthcamaro · · Score: 4, Insightful

    I think its time for the dev community to embrace XUL as a cross-platform development tool. Too much is made of Qt and GTK - both are great, don't get me wrong..but XUL just doesn't get it's due respect.

    1. Re:It's time to embrace XUL by hot_Karls_bad_cavern · · Score: 2, Insightful

      Sounds great.

      Now for the question that determines whether or not i choose to believe you: why XUL over others?

      Please explain.

    2. Re:It's time to embrace XUL by Deraj+DeZine · · Score: 4, Informative

      I think too much is made of Qt when compared with Gtk/Glade (Glade being the XML format for describing Gtk interfaces, not just a GUI GUI tool).

      The Glade XML format is kind of strange (it looks like XML described in XML; a pointless scheme), but Glade simplifies GUI development to a point that I have yet to see anyone improve on, in terms of simplicity (I've worked with Tk, regular Gtk, wxWindows, and web-based applications).

      --
      True story.
    3. Re:It's time to embrace XUL by Anonymous Coward · · Score: 0

      That should read "too much is made of Qt and XUL when compared with Gtk/Glade" so that I don't appear to be a troll/flamebait/off-topic (they're all pretty much the same, now, right? =).

    4. Re:It's time to embrace XUL by OmniVector · · Score: 5, Insightful

      I don't deny that XUL is a good cross platform development tool, but Qt, GTK, and XUL are all very differnet things. Qt is a comprehensive C++ API, including networking, threading, images, GUI, and more. GTK is strickly a GUI toolkit, plus it's written in C which allows it to very easily be linked with almost anything. XUL is not a toolkit, but a platform-independent GUI description made with XML. This allows you to write XUL apps that look like native os x apps in os x, native windows apps, and well crappy skinned apps in linux. They are all different things really. So one can't mutally replace the others (i.e. XUL replacing Qt).

      It would be an interesting proof-of-concept though if someone wrote an XUL based desktop environment. So far XUL is really missing a killer-app (besides mozilla).

      --
      - tristan
    5. Re:It's time to embrace XUL by duffbeer703 · · Score: 3, Interesting

      The problem is the XUL has been basically undocumented until now and very closely linked with Mozilla.

      Mozilla rocks, but it took them until 2001 or so to produce a better browser than IE.

      --
      Conformity is the jailer of freedom and enemy of growth. -JFK
    6. Re:It's time to embrace XUL by jrumney · · Score: 3, Informative
      The Glade XML format is kind of strange (it looks like XML described in XML; a pointless scheme), but Glade simplifies GUI development to a point that I have yet to see anyone improve on

      Then surely XUL improves on Glade, by being not so strange. On the otherhand, XUL's reliance on Javascript might give the lead back to Glade/GTK.

    7. Re:It's time to embrace XUL by arkanes · · Score: 2, Insightful
      GTK is just a toolkit but it sits on top of glib, which is a C api to a bunch of that other stuff - the whole GTK family has basically all the stuff that Qt has, it's just seperated out more.

      As for XUL - as far as I'm aware, the only XUL-based application out there is Mozilla and XUL is tied very tightly to it - are there any XUL libraries for other, more native toolkits? There's at least a couple other XML based layout languages - wxWindows has one, Gtk has one, and I think Qt uses one now also. Whats the gain from XUL?

    8. Re:It's time to embrace XUL by Anonymous Coward · · Score: 0
      It would be an interesting proof-of-concept though if someone wrote an XUL based desktop environment.

      Homebase Suite is a XUL-based desktop environment.

    9. Re:It's time to embrace XUL by rjshields · · Score: 4, Informative

      XUL is not an API in the same way that Qt and GTK (I infer that these are examples of "others") are. Rather, it's a standard for describing UI with XML. So, if you have a requirement that you might need to port your application another platform at some point, XUL might not be a bad choice.

      --
      In this world nothing is certain but death, taxes and flawed car analogies.
    10. Re:It's time to embrace XUL by ciroknight · · Score: 3, Insightful

      XUL would shine as an application development environment in exactly the same way Visual Basic shined under Windows. You may argue that Visual Basic is a very weak language, but it was intended as such, and it was intended to be easy so that anyone could learn it quickly, and be developing apps quickly, therefore speeding up everything.

      What's more, XUL should let us do fairly easy localizations and the like. Not that this has been a problem in Linux since every major project has implemented some api to get around it, but for smaller projects that want to become bigger projects, it's nice to already have features like localization at your hands.

      I think it would be a fairly impressive, and quite snappy, user environment. With SVG coming to age and XML being embraced *even though I hate it*, it's good to see an actual Good Use (tm) of it.

      Furthermore, doesn't Mozilla require GTK libraries? I was under the impression that it used some code from GTK, but didn't actually render it's widgets and the like with it. I'm most likely wrong about this, but it's still interesting.

      --
      "Victory means exit strategy, and it's important for the President to explain to us what the exit strategy is." G.W.Bush
    11. Re:It's time to embrace XUL by yerM)M · · Score: 1
      I actually thought that the XUL documentation was pretty good. It was complete enough that (as of 2001) I had written an automated display layer that could read xul xml files in python and display them with Tk/Qt or wxWidgets.

      The effort of doing that pretty much made me realize that your other comment is quite true, XUL is way too embedded in mozilla. My python+wxWidgets display layer was smaller than the mozilla installation by far.

      However, XUL + mozilla + xpcom + python is still incredibly powerful, Active States' Komodo is written in this fashion and is quite popular. David Ascher gives quite good talks on the development process. I would love to see him write a book on the subject. A good (if dated) interview is located here.

    12. Re:It's time to embrace XUL by bonch · · Score: 1

      If everyone embraces XUL and suddeny everything ends up becoming as dog-slow as Mozilla, I'll scream.

    13. Re:It's time to embrace XUL by sashako · · Score: 1

      Using XUL would be great. I am considering using XUL for my project, but I have a concern that if Mozilla developers would have a choice between 2% Mozilla/FireFox speed enhansment and keeping XUL interfaces unchanged you bet what they choose?

    14. Re:It's time to embrace XUL by bwt · · Score: 2, Insightful


      My problem with mozilla is not XUL, which I think is great. It's that javascript is the only language with built-in support. Sure you can add others, but unless they are there by default that is too much of an administrational burden and you can't rely on it.

      Mozilla needs to do one of two things (or both):
      a) include a java VM that can run apache BSF
      b) work with the parrot people and build it into Mozilla

      You can rest assured that Microsoft is working on multiple language support through a marriage of IE to .net.

    15. Re:It's time to embrace XUL by Anonymous Coward · · Score: 0
      Furthermore, doesn't Mozilla require GTK libraries? I was under the impression that it used some code from GTK, but didn't actually render it's widgets and the like with it.

      There is a Mozilla QT port, but sadly it was removed from Mozilla base. From the webpage, it suggests that it's languishing in a underdeveloped fork.

    16. Re:It's time to embrace XUL by Anonymous Coward · · Score: 0

      You mean, like this?

    17. Re:It's time to embrace XUL by yerM)M · · Score: 2, Insightful
      XUL isn't reliant on Javascript. You can program xul in python through XPCOM and through Java with luxor among others.

      Komodo is written in XUL with xpcom+python.

    18. Re:It's time to embrace XUL by aminorex · · Score: 1

      Choice is all about choice.

      Linux is all about Linux.

      XUL is all about delivering cross-platform apps
      rapidly. It isn't about Linux. Nor is it about
      choice.

      --
      -I like my women like I like my tea: green-
    19. Re:It's time to embrace XUL by Anonymous Coward · · Score: 0

      b) work with the parrot people and build it into Mozilla

      Polly want a 18d10 fire cone breath weapon?

    20. Re:It's time to embrace XUL by Deraj+DeZine · · Score: 1

      Luxor is an alternative implementation of the XUL format that relies on Java's ugly and slow abomination known as Swing. I don't consider it an option.

      As for XPCOM, just mentioning that technology shows that XUL is unnecessarily complicated.

      --
      True story.
    21. Re:It's time to embrace XUL by IamTheRealMike · · Score: 2, Informative
      The Glade XML format is kind of strange (it looks like XML described in XML; a pointless scheme)

      It's a persisted GObject tree. libglade reads the XML which maps pretty much directly to constructing a tree of GObjects and setting their properties and signals. The reason it looks like XML describing XML is because it's describing a tree of attributed nodes, but with callbacks - ie they *are* similar, but at the same time they are actually quite different.

      The Glade XML format isn't designed to be written by hand, whereas XUL is. To be honest, I'd rather have a decent UI builder....

    22. Re:It's time to embrace XUL by SparafucileMan · · Score: 1

      Someone mod parent up. Last I looked, Mozilla XUL apps were SLOW AS SHIT.

    23. Re:It's time to embrace XUL by OmniVector · · Score: 1

      yes, mozilla does infact have a gtk port. if i'm correct, i believe this means it uses gtk's drawing functions to handle menus, buttons, etc, rather than pure xlib.

      likewise following this analogy, there should be a quartz and GDI port for native mac and windows.

      --
      - tristan
    24. Re:It's time to embrace XUL by Anonymous Coward · · Score: 0

      > It would be an interesting proof-of-concept though if someone wrote an XUL based desktop environment. Not sure, but does OEOne count?

    25. Re:It's time to embrace XUL by Anonymous Coward · · Score: 0

      No, man, Polly wants a cracker; think I should get off her first...

    26. Re:It's time to embrace XUL by GlassHeart · · Score: 1
      Glade simplifies GUI development to a point that I have yet to see anyone improve on, in terms of simplicity (I've worked with Tk, regular Gtk, wxWindows, and web-based applications).

      I've tried "plain" Tk, "plain" GTK, and HTML for GUIs. They were all bordering on painful and inflexible. But before I agree with your conclusion about Glade, have you tried the MacOS X Interface Builder?

    27. Re:It's time to embrace XUL by duffbeer703 · · Score: 1

      I started planning an XUL project that never took off, but did spend some time perusing the Mozilla docs. They weren't awful..

      What was missing, however, is the "critical mass" that toolkits like GTK or QT have. I think that a big part of this was a direct result of Mozilla's AOL affiliation. Politically, AOL had no intention of pushing any kind of programming toolkit on the world, while KDE has an active commercial development effort selling it and GNOME has support from all of the industry players.

      That being said, I really hope that Mozilla's new found independence helps them collaborate with other open source projects.

      --
      Conformity is the jailer of freedom and enemy of growth. -JFK
    28. Re:It's time to embrace XUL by rycamor · · Score: 1

      Everyone screams about the speed of XUL apps, but they are missing quite a few details:

      1. "A XUL app" != "the Mozilla browser". You can build a XUL app that runs only with the Gecko engine itself, which I believe is still less than 3 MB. The Mozilla Browser is quite a large app, when you consider all it's components. I have found smaller XUL apps to be quite snappy. For example, Firebird/Firefox is pretty darn fast, considering that it includes several megabytes of compressed XUL widgets.

      2. Standard Mozilla uses GTK. I am willing to bet most of the people complaining about Mozilla are running KDE. Thus, half of the performance hit is due to loading a completely different GUI toolkit. I can't wait for the time when we will have a true Qt version of Mozilla.

      3. Mozilla is not completely reliant on Javascript for programming. It is possible to use C, C++, Perl, Python, and I'm sure many more languages soon.

      4. Mozilla apps that are run as "chrome" (as in chrome://appname/content) cache very nicely, so after loading once (which can be done in the background), they usually start up as fast as any other app.

      5. ANYWAY... XUL itself is not tied to any particular intepreter or runtime. It is an XML spec for GUI definition that can be implemented in any way you want. Want compiled XUL apps... why not? The point of XUL is not the "scriptedness" of it, although that is nice for some types of projects, but the straightforward declarative nature of the syntax. There is no reason we can't use XUL as a base format for apps developed in many platforms. In fact, there is already an attempt at doing this for KDE, called Kaxul.

    29. Re:It's time to embrace XUL by Deraj+DeZine · · Score: 1

      No, but it's not the fact that Glade is a UI builder that makes it simple. The whole callbacks-oriented model and being able to pick out controls/widgets using names (rather than variables or accessing trees) are the points that stand out to me.

      I would imagine the Mac thing is at least as good as Glade, but, well, it's for Macs.

      --
      True story.
    30. Re:It's time to embrace XUL by Lozzer · · Score: 1

      If you have a requirement that you might need to do something, just ignore it until someone stumps up the cash to do something about it.

      --
      Special Relativity: The person in the other queue thinks yours is moving faster.
    31. Re:It's time to embrace XUL by juhaz · · Score: 1

      Mozilla rocks, but it took them until 2001 or so to produce a better browser than IE.

      Well, they started in 1998. Just three years, it's not that long time...

      Interestingly enough, it's also same time (1995-1998) IE took from 1.0 to the first arguably superior version, 5.0 and same time IE took for a relatively minor step from 5.0 to 6.0 (1998-2001).

  7. Web-installer.... by kevlar · · Score: 4, Insightful

    The single feature that I wish I could get with my applications is the web-installer that Mozilla has for its install. It allows you to stop and resume a download and it would allow people with crappy dialups to download large files without having to restart after every disconnect.

    If I could build an installer with mozilla that would let me do this with _any_ application, that would be golden!!

    1. Re:Web-installer.... by Anonymous Coward · · Score: 0

      Huh....I'm sold now. Serves me right for not fully investigating Mozilla. I'm downloading right now :) Thanks for the tip.

    2. Re:Web-installer.... by Anonymous Coward · · Score: 0

      Spawn a shell and run "wget -c"

    3. Re:Web-installer.... by Syberghost · · Score: 4, Insightful

      It allows you to stop and resume a download and it would allow people with crappy dialups to download large files without having to restart after every disconnect.

      You realize FTP has had that capability since like 1985, right? And that Postel didn't invent it, either?

    4. Re:Web-installer.... by Anonymous Coward · · Score: 0

      Never trust a download to a bloated GUI tool. Use curl -C - or like the sibling above said, wget -c.

    5. Re:Web-installer.... by kevlar · · Score: 1, Insightful

      You do realize you completely missed the point of my posting, right? I am fully aware of the capabilities of FTP. The problem is that when you have end-users who do not use, nor never will use an FTP client, FTP is useless. What I need is a web installer that'll download large files via whatever "resume" capable protocol and install my application. It all needs to be as simple as clicking on the executable. FTP Clients do _NOT_ offer this.

      But thanks for the condescending insight anyways...

    6. Re:Web-installer.... by kevlar · · Score: 1

      I'm talking about in an end-user environment. wget and curl are not options. It needs to be a GUI with minimal or no options.

    7. Re:Web-installer.... by sweet+cunny+muffin · · Score: 1

      So whip it together with libcurl. Can't take more than a few days to do something like this.

    8. Re:Web-installer.... by maximilln · · Score: 2, Funny

      You need to beat your users harder. Make them learn ftp. Tell them that if you wrote a click and drag application installer you'd be depriving them of the golden opportunity to learn.

      How did the world put the lemmings in control of the programmer?

      --
      +++ATHZ 99:5:80
    9. Re:Web-installer.... by tigersha · · Score: 0, Flamebait

      Quite frankl,y the systems that the programmers write are there for the convenience of the lemmings, whether the programmers like it or not.

      --
      The dangers of excessive individualism are nothing compared to the oppressiveness of excessive collectivism
    10. Re:Web-installer.... by Perl-Pusher · · Score: 1

      You do realise that there are many download mangers with those features available? Not only do many broswers have them there are alot of various freeware and shareware standalone versions on www.download.com.

    11. Re:Web-installer.... by maximilln · · Score: 1

      Even with ketchup lemmings don't make a real good meal. When we had the nuke button it was so much easier to control them when they got out of hand.

      --
      +++ATHZ 99:5:80
    12. Re:Web-installer.... by Syberghost · · Score: 1

      The problem is that when you have end-users who do not use, nor never will use an FTP client, FTP is useless. What I need is a web installer that'll download large files via whatever "resume" capable protocol and install my application. It all needs to be as simple as clicking on the executable. FTP Clients do _NOT_ offer this.

      Sigh. I'll try again.

      TAKE THE CODE FROM FTP AND USE IT IN YOUR INSTALLER. YOU CAN DO THIS BECAUSE IT'S FREE SOFTWARE.

      BTW, every web browser has FTP built in. EVERY SINGLE ONE. EVER.

    13. Re:Web-installer.... by sgtrock · · Score: 1

      Yeah? Then tell us O wise one; how many actually support 'resume' properly? How come I consistently have to go to other clients to get the job done?

    14. Re:Web-installer.... by Anonymous Coward · · Score: 0

      True, it's nothing complicated. No need to insert Mozilla code either. Just open a socket to port 21, and pipe a REST offset to the server.

    15. Re:Web-installer.... by kevlar · · Score: 1

      Once again, you have completely missed the point. If I wanted to have all my users install a download manager in order to download large files, I would have done that already. What I want is to have my users download a minimal executable which knows where to download the full install from and have the capability to stop/resume in the event of an interrupt.

      A download manager is an application that generically provides this functionality for _any_ install. I do not want to coach each user on how to install a download manager in order to install my application. It simply gives me more work!

    16. Re:Web-installer.... by Anonymous Coward · · Score: 0

      This is one of those situations where if someone can't do the job, you do it yourself. Be a man, download netcat, read the FTP RFC and resume the file yourself.

    17. Re:Web-installer.... by kevlar · · Score: 1

      The problem is the user is hands-down too stupid to learn anything new. They also are completely unwilling, and having to trouble shoot their FTP woes is not a direction I wish to move in since I'm trying to actually _SAVE_ time.

    18. Re:Web-installer.... by Syberghost · · Score: 1

      Yeah? Then tell us O wise one; how many actually support 'resume' properly?

      Not nearly enough.

      How come I consistently have to go to other clients to get the job done?

      Sturgeon's Law: Ninety percent of everything is crap.

      The fact that there are other clients you CAN go to proves it can be done. There is Free/Open code to do it, so there is precious little excuse NOT to do it if you're writing code that could benefit from it.

      Especially if you're writing code that could benefit from it AND bitching on Slashdot about the lack of this capability.

      What's important isn't how many clients support it; you only need one of those. What's important is how many SERVERS support it. My personal experience would suggest "damn near all of them", since it's required by the RFC.

    19. Re:Web-installer.... by Anonymous Coward · · Score: 0

      How did the world put the lemmings in control of the programmer?

      They didn't. Microsoft did.

      That's like asking, when did the illiterate masses sieze control of our language and culture. Pure numbers (I know... incomplete sentance:-)

    20. Re:Web-installer.... by jrumney · · Score: 1

      I might be misremembering, but didn't the later versions of Mosaic (or something of that c. 1994 era) support FTP resume? Even HTTP has supported resume for over 5 years. Its time webbrowsers got with the program.

    21. Re:Web-installer.... by Saeed+al-Sahaf · · Score: 1
      What I want is to have my users download a minimal executable which knows where to download the full install from and have the capability to stop/resume in the event of an interrupt.

      No, I think *you* are missing the point. Write your minimalist app, use FTP functionality. FTP isn't some huge monolithic think you plug into your app, just provide the minimalist functionality you need. No big deal...

      --
      "Who are in control, they are not in control of anything - they don't even control themselves!" - Glen Beck
    22. Re:Web-installer.... by dolmen.fr · · Score: 1

      If I could build an installer with mozilla that would let me do this with _any_ application, that would be golden!!

      And with BitTorrent support as a an alternative (not replacement because of proxy problems) to HTTP/FTP.

      However the Mozilla installer had some problems with some HTTP proxies some times ago (last time I reported a bug on this part was around Mozilla 1.0). The HTTP code in the installer is not the same as the code for the browser. So an installer using libcurl would probably be better than one based on Mozilla installer code.

    23. Re:Web-installer.... by Eneff · · Score: 1

      Well... if you're willing to put in a few day's worth, you too can build a simple installer.

      Step 1: Find a simple ftp client engine. http://www.marshallsoft.com/fce4c.htm is one I googled for C - http://www.freesoft.org/CIE/RFC/959/index.htm if you want to write your own.

      Step 2: Write a simple GUI. Visual C++ can do this, or NetBeans for Java. However, if you're using Java then you have Java Web Start and why are you complaining, anyway?

      Step 3: Set your program up on an FTP somewhere.

      You're golden!

      But you're supposed to be a programmer who's capable of independant thought...

    24. Re:Web-installer.... by alannon · · Score: 1

      You'd think so, wouldn't you..? You'd be wrong, actually. Apple's Safari browser does NOT have FTP built in. It passes FTP requests along to the finder, which mounts the FTP site as a remote drive. I actually don't like this at all.

    25. Re:Web-installer.... by Anonymous Coward · · Score: 0

      Ok, so what you are suggesting is that I build an installer for my application that will download the guts using FTP? This is precisely what I do _NOT_ have time to accomplish, simple or not, and if you had read the thread, you would have understood that.

      Go back to Univ of Bangelore and learn to read English you freaking monkey terrorist.

    26. Re:Web-installer.... by Saeed+al-Sahaf · · Score: 1

      You could have managed to rough it out in the time it took to respond to all the posts in this thread that you have. The point is, it's a MINOR issue. Period.

      --
      "Who are in control, they are not in control of anything - they don't even control themselves!" - Glen Beck
    27. Re:Web-installer.... by Anonymous Coward · · Score: 0

      Roughing out the code + oodles of time testing it in multiple scenarios is not something I have time for.

      It needs to be already existing, shown to work and relatively easy to adapt to my situation. Software development isn't about "roughing it out", its about building software, then testing it to make sure that it works properly. There are all sorts of issues that can potentially arise, especially when you hack code together, but the point is that I don't have time to add another variable to my development process!!!

    28. Re:Web-installer.... by Saeed+al-Sahaf · · Score: 1

      So basically you're saying that you want it to do everything you need, you don't want to put any work into it, and you want it for free? Jesus, that's not too much to ask for! God forbid you *spend* time or money on an installer...

      --
      "Who are in control, they are not in control of anything - they don't even control themselves!" - Glen Beck
    29. Re:Web-installer.... by Anonymous Coward · · Score: 0

      I never said anything about free or that I wasn't willing to invest time in it. All I said is that the solutions you and others have provided have told me to use FTP by stripping code out of another application and hence creating the potential for issues.

      I also never said I wasn't willing to pay for it. I think I'd pay about $2k for the source provided its proven decently reliable (like the mozilla installer).

      Anything else I need to clear up for you?

    30. Re:Web-installer.... by Saeed+al-Sahaf · · Score: 1
      I never said anything about free or that I wasn't willing to invest time in it. All I said is that the solutions you and others have provided have told me to use FTP by stripping code out of another application and hence creating the potential for issues.

      No, I never said strip code out of an existing application. FTP is not an application, it's a protocol. Just use the parts of the FTP protocol that you need. Write your installer in C++ or some easier to bite language such as VB v.6 (gasp) or Borland's C-Builder, or for web based, Perl or PHP... There are many options. No one said grab an FTP application and butcher it up; that's asking for problems. I'm just saying that working with the basic FTP functionality in some language (hell, make the damn thing run off of your server in a browser...) as mentioned above represents very little work. BUT, should you want to purchase a full featured installer package, your price range for Open Source packages should get you what you want anyway.

      --
      "Who are in control, they are not in control of anything - they don't even control themselves!" - Glen Beck
  8. Developing Mozilla Extensions by 7Ghent · · Score: 2, Interesting

    Finally. More documentation on RDF is always welcome. I hope this has some specific information on developing Mozilla extensions, because the available docco really sucks.

  9. Forbidden!! by Anonymous Coward · · Score: 2, Insightful

    RADM is published in Bruce Perens' Open Source Series at Prentice Hall under the Open Publication License.

    Doesn't look like a very open license to me.

    1. Re:Forbidden!! by Bruce+Perens · · Score: 4, Informative
      Oops. He's moved his site recently. The front page is the Red Hat place-holder. The license qualifies as Open Source, commercial printing and resale allowed.

      Bruce

  10. The 5 Linux platforms by aaron240 · · Score: 5, Interesting

    Nat Friedman recently identified Linux as 5 platforms:
    1) Gnome
    2) KDE
    3) OpenOffice.org
    4) Mozilla
    5) Eclipse

    Considering that each of these are at least marginally successful as platforms, a coherent platform doesn't seem to be in the cards for Linux. Many of us think that's perfectly fine.

    My only concern is whether Mozilla is at least viable as a platform. Can developers assume their apps will run well for many users if they build in XUL?

    1. Re:The 5 Linux platforms by OmniVector · · Score: 3, Interesting
      Eclipse? a platform? i think more specifically you mean:
      1. GTK
      2. Qt
      3. OOo's in-house toolkit
      4. XUL
      5. SWT

      as i said in another post in this thread, these are ALL different things. Each accomplishes different goals. These all share one thing in common: GUI. However each one encompasses other things. SWT for example is limited to java. Java cannot be distributed in just about any distro, so this rules it out as a viable platform. GTK is highly portable, but it is however horrible when it comes to any platform but linux. It runs in windows, without a windows theme to match. it runs in os x, but only via x11. Gtk's in a pretty sad state considering how "portable" it's supposed to be. Qt's one of the better-off toolkits, but it suffers from gtk's problems too. It's only good on linux. half-assed os x port (at least it's not x11 dependent) and the windows port is totally unmaintained (yay 2.0!). Openoffice is unskinnable, ugly, and requires X11 in os x. That rules it out. That really just leaves us with XUL. To be honest, XUL's not half bad. I've seen mozilla. it looks fantastic on all 3 platforms. can you say the same for any of these other toolkits besides SWT (which is java only and has licensing issues)? nope. XUL is WAY under appreciated i think.
      --
      - tristan
    2. Re:The 5 Linux platforms by Anonymous Coward · · Score: 2, Informative

      He was talking about platforms, not toolkits. Platforms provide more than just GUI libraries -- they're application frameworks and component services.

    3. Re:The 5 Linux platforms by TheRoss · · Score: 1

      #6 Apache (Don't underestimate web applications..)
      #7 Wine
      #8 GnuStep

      More?

    4. Re:The 5 Linux platforms by Anonymous Coward · · Score: 0

      Apache, the web server, is not a platform. Apache Cocoon is.

    5. Re:The 5 Linux platforms by TheRoss · · Score: 1

      Good point, But I was thinking of (and should have really said) LAMP.

    6. Re:The 5 Linux platforms by dominator · · Score: 3, Interesting

      "GTK is highly portable, but it is however horrible when it comes to any platform but linux. It runs in windows, without a windows theme to match. it runs in os x, but only via x11."

      BS. I guess that I didn't write the Gtk-wimp theme engine, then. And I guess I'm not running Gimp, Gaim, Xchat, Dia, Inscape, and Workrave on Win32 right now... The gtk-wimp screenshots are out of date, btw, but are good enough to get the general idea across.

      GTK 1.2 has also been ported to Apple's Carbon framework. I have plans to do something similar for GTK 2.x.

      "Qt's one of the better-off toolkits, but it suffers from gtk's problems too. It's only good on linux. half-assed os x port (at least it's not x11 dependent) and the windows port is totally unmaintained (yay 2.0!)."

      Huh? Trolltech gets a lot of money from licensing QT 3.3 on Win32. I've licensed it. It's maintained, and works great. The OSX port isn't as half-assed as you'd like to think. It's not FOSS on Win32, like it is on OSX and *NIX, but that's Trolltech's decision, not mine.

      You're right, XUL may be horribly under-appreciated. But realize that's largely Mozilla's own doing. They've been promising a standalone GRE for about 5 years now, and have yet to follow through. Much of the Mozilla platform is meant for eventual public consumption, but it's not ready for that today. When I can 'gcc -o myapp -lMozillaGRE -lMozillaJScript', come tell me.

    7. Re:The 5 Linux platforms by abigor · · Score: 2, Interesting

      Qt/Windows is at version 3.01. Many successful Windows-based commercial apps have been written with it, by many different customers ranging from Adobe to Intel to NASA. It looks great on Windows XP, by the way. You are talking out of your ass here.

    8. Re:The 5 Linux platforms by kisielk · · Score: 1
      Eclipse? a platform?

      Yes. Try asking any of the dozens of embedded systems tool makers how they created their design environments based on Eclipse, which you apparently consider a non-platform. It's just as much of a platform as Mozilla/XUL.
    9. Re:The 5 Linux platforms by I+didn't · · Score: 1

      6) Emacs
      7) ???
      8) Profit!

    10. Re:The 5 Linux platforms by aminorex · · Score: 2, Interesting

      SWT with GCJ builds sweet fast native code applications that compile and run everywhere I want to be, thank you.

      --
      -I like my women like I like my tea: green-
    11. Re:The 5 Linux platforms by Anonymous Coward · · Score: 0
      That really just leaves us with XUL. To be honest, XUL's not half bad. I've seen mozilla. it looks fantastic on all 3 platforms. can you say the same for any of these other toolkits besides SWT (which is java only and has licensing issues)? nope.

      You do realize that XUL is NOT a toolkit, but just XML-based thing that DESCRIBES user-interface? (ie. "XUL? a platform?") It is a language- and platform-neutral GUI description language, definitely not a platform, and not even a toolkit. In that sense it's miniscule in comparison to other things listed above.

      Now, Mozilla obviously has bindings that allow XUL to describe actual GUI build using widget set; which is much more than what XUL is, strictly speaking.

    12. Re:The 5 Linux platforms by alftheo · · Score: 1

      emacs

    13. Re:The 5 Linux platforms by phre4k · · Score: 1

      Can you help me getting gimp 2 and gaim to run side by side on windows? Seems that the gtk-releases they require are incompatible.

      --
      "Nobody really checks their email any more. They just delete their spam"
    14. Re:The 5 Linux platforms by OmniVector · · Score: 1

      ah, my apologies then. i was unaware of this. perhaps gaim should ship with your theme then, because it doesn't. yes, there is a gtk1 port for native os x apps. however you'll notice it's about as ugly as can be, and does not resemble an os x app at all. my concept of a "native port" is a fully native-looking app, down to the buttons, menus, and everything.

      i believe the reason i said qt is at 2.0 for windows was that FOSS software can only use the 2.0 library, which is why it's impractical to use for cross platform software since no one supports 2.0. i may be wrong with this statement though. the os x port is horrible. plain and simple. it's not native. it's a bad theme. i've tried some qt3 apps ported to os x. namely production quality software and much of the kde software that's been ported by ranger rick, and it looks like crap.

      yeah.. mozilla's XUL system isn't *quite* there yet. but it is promising. i suppose leaves a lot to be desired.

      --
      - tristan
    15. Re:The 5 Linux platforms by Anonymous Coward · · Score: 0

      The version of GTK that ships with gaim does include his theme.

    16. Re:The 5 Linux platforms by dominator · · Score: 2, Informative

      1) Get GTK 2.2.4-2 from http://dropline.net/gtk/. It includes my native Win32 theme.
      2) Get Gimp 2.0 from http://www2.arnes.si/~sopjsimo/gimp/stable.html
      3 ) Uninstall any old GTK, Gaim, and Gimps, just to be safe.
      4) Install GTK 2.2.4-2
      5) Open regedit
      6) Change HKEY_CURRENT_USER/Software/GTK/2.0/Version to read "2.2.4-20040124"
      7) Change HKEY_LOCAL_MACHINE/Software/GTK/2.0/Version to read "2.2.4-20040124"
      8) Install the Gimp
      9) Enjoy

    17. Re:The 5 Linux platforms by Micah · · Score: 1

      Nat Friedman recently identified Linux as 5 platforms:
      1) Gnome
      2) KDE
      3) OpenOffice.org
      4) Mozilla
      5) Eclipse


      He forgot Motif, the insensitive clod! :)

    18. Re:The 5 Linux platforms by dominator · · Score: 1

      *) Gaim does ship with my theme. As does dropline GTK. As does the Gimp's GTK.

      *) The GTK 1.2 port for OSX does suck visually, but you mentioned "portability", so I thought I'd throw that in just for kicks. I wouldn't suggest using it in a production setting. They are, however, making some progress using the OSX Appearances Manager API:

      http://gtk-osx.sourceforge.net/pix/gtktestthing. aq ua.buttons.jpg

      *) The QT3 OSX theme also uses the Appearances Manager APIs. It's not perfect, but I don't think it's as bad as you think it is. Also, doing your evaluation on KDE's "Ranger Rick Ported" software probably isn't a good test. Adobe's is probably a better benchmark. It will also be interesting to see what comes of this: http://www.trolltech.com/campaign/maccontest.html? cid=11

      XUL, XPCOM, NSPR, NSS, etc... are promising - XUL especially so when using the Firefox toolkit. I'd love to use them in my OSS and commercial apps. Some things (NSPR, NSS) are available as separate libraries right now. But many things essential to 3rd-party developers are progressing at a snail's pace, making the Mozilla "platform" anything but one.

    19. Re:The 5 Linux platforms by Joe+Tie. · · Score: 1

      He forgot Motif, the insensitive clod! :)

      Shhhh, don't insult him. He might be nice and teach us how he managed to do that! I've been trying to forget that motif exists for years now.

      --
      Everything will be taken away from you.
    20. Re:The 5 Linux platforms by millette · · Score: 1

      and Java!

      (oh no, look at what you made me say...)

    21. Re:The 5 Linux platforms by phre4k · · Score: 1

      Is the gtk from dropline special? I get a "Bandwidth Limit Exceeded"

      --
      "Nobody really checks their email any more. They just delete their spam"
  11. Sho me the MONEY! by mcrbids · · Score: 3, Interesting

    I've heard about Mozilla's "RAD" capabilities, and I've heard all about "how flexible" it all is...

    But - is there a single application that I'd consider using, written with Moz, other than Moz itself?

    Anybody? One? Just one?

    --
    I have no problem with your religion until you decide it's reason to deprive others of the truth.
    1. Re:Sho me the MONEY! by tntguy · · Score: 1, Informative

      Komodo, perhaps?

      From the Features page:

      Built on Mozilla
      Komodo is built on the Mozilla platform. Portions of Komodo were created using source code governed by the Netscape Public License (NPL) and the Mozilla Public License (MPL). The source code for the portions of Netscape 6 governed by the NPL and MPL is available from under those licenses.

    2. Re:Sho me the MONEY! by Anonymous Coward · · Score: 0

      I believe Komodo is build on Mozilla. It's a pretty good IDE.

    3. Re:Sho me the MONEY! by leoxx · · Score: 4, Informative

      How about the Activestate IDE, Komodo?

    4. Re:Sho me the MONEY! by maximilln · · Score: 2, Funny

      There probably aren't any apps that you would consider using. There are going to be plenty of apps that management gives you no choice but to use.

      Java webapps are the universe's way of sending people back to the 286 era of speed and functionality while allowing them to keep 32-bit color and sound.

      --
      +++ATHZ 99:5:80
    5. Re:Sho me the MONEY! by Anonymous Coward · · Score: 0

      Flamebait mod in 3... 2...

    6. Re:Sho me the MONEY! by Bill+Dimm · · Score: 5, Informative

      OK, you won't use it, but I did recently write a Mozilla application for MagPortal.com to allow our editors to work remotely. We are a Linux shop and our editors mostly use Windows, so it had to be cross-platform. Mozilla/XUL was used for the client application to provide a nice GUI interface (more sophisticated than what you could achieve with normal HTML -- uses widgets like <tree> and transfers data in a way that reduces latency for the user) that transfers XML back and forth across the Internet to the web server for storage. It works very nicely and is quite professional. I am somewhat surprised that you don't hear more noise about companies building custom applications like this with Mozilla.

      McFarlane's book was my primary reference for the project. It is a very useful book, but I do agree with the reviewer that the index needs some work. Additionally, make sure you keep an eye on the errata page. I was a bit disappointed that the book didn't talk about how to parse generic XML in your application (look at the parseFromString() member function of DOMParser).

    7. Re:Sho me the MONEY! by maximilln · · Score: 1

      It would probably be "insightful" if I had left the word "Java" out.

      Allow me to restate:

      "Webapps, no matter what language they use, are the universe's way of sending everyone back to the 286 era of functionality and speed while allowing them to keep 32-bit color and sound."

      Oh. And with prettier widgets and buttons and nifty-knobs and turney-dials and flashy-thingies.

      --
      +++ATHZ 99:5:80
    8. Re:Sho me the MONEY! by X-Nc · · Score: 3, Informative

      If you check out OEone's HomeBase Linux distro you'll see what can be done with Mozilla. Everything in it runs with Mozilla as the desktop interface. It's increadably slick and easy to use.

      --
      --
      If I actually could spell I'd have spelled it right in the first place.
    9. Re:Sho me the MONEY! by Run4yourlives · · Score: 1

      I've seen something like that before...it's called Windows.

    10. Re:Sho me the MONEY! by Run4yourlives · · Score: 1

      Why didn't you just use a web page as an interface for remote users?

    11. Re:Sho me the MONEY! by gavinjolly · · Score: 4, Interesting

      I believe he mentioned the need gor a richer interface.

      Do a google search for XUL and AMAZON and try out the XUL developed Amazon interface. You need a Mozilla based browser.

      After trying this interface then come back and comment.

      --

      The weathers here - Wish you were beautiful

    12. Re:Sho me the MONEY! by Bill+Dimm · · Score: 1
      There were two main reasons for using XUL instead of a web page:
      1. I needed a richer widget set to work with. For example, I needed to use hierarchical trees to display our category list.
      2. HTML is page oriented, so when the user moves from one page to another, a request must be sent to the server and page info sent back to the browser, which may cause delays in places where it is irritating the to user (you could probably work around this with sufficiently complicated JavaScript, but it would be tedious). XUL is for building applications, not individual pages, so it is much easier to download data in a big chunk and allow the user to move through multiple screens/tabs without having to touch the server every time.
    13. Re:Sho me the MONEY! by mcrbids · · Score: 1

      You've got my interest. Care to provide an email address or Phone # I can contact you at? You can get an email address from my website. (See sig)

      -Ben

      --
      I have no problem with your religion until you decide it's reason to deprive others of the truth.
    14. Re:Sho me the MONEY! by darnok · · Score: 1

      Good question.

      I'm looking for the same thing for XWT - who's using it for something that I'd consider using myself?

      XWT tries to address a moderately similar problem - putting a GUI framework to talk to Web services running on remote systems. Rather than being constrained to using a Web browser interface, your XWT apps can look like "normal" applications while still running a thin client with everything downloaded over the wire.

      Great idea, interesting approach, but I can't yet find a compelling app that would convince me to use it myself.

    15. Re:Sho me the MONEY! by Arker · · Score: 1

      Amazon Browser?

      Quite cool, indeed. Damn, I may have to get the book now.

      --
      =-=-=-=-=-=-=-=-=-=-=-=-=-=-
      Friends don't let friends enable ecmascript.
  12. Quick Question by KillerLoop · · Score: 4, Interesting

    I'm always wondering where you put the actual logic in this kind of setup. You write your business logic as XPCOM components in ... what? C++? Java? Python? Javascript?

    I was given to understand that Mozilla as application platform should be platform independent. But what about the actual code apart from GUI and the necessary wiring?

    1. Re:Quick Question by jrumney · · Score: 2, Interesting
      I'm always wondering where you put the actual logic in this kind of setup. You write your business logic as XPCOM components in ... what? C++? Java? Python? Javascript?

      I was given to understand that Mozilla as application platform should be platform independent. But what about the actual code apart from GUI and the necessary wiring?

      Java? But even with C or C++, once you've got the UI out of the way, and using a standard library for network and filesystem access (I assume Mozilla provides this), there aren't many portability problems left.

    2. Re:Quick Question by DdJ · · Score: 2, Insightful

      Personally I'd like to see the application logic live in web services (as in WSDL/SOAP), with WS-Security support for authentication.

      Then the presentation layer could be done in something like Mozilla/XUL on Linux, .Net Windows Forms apps on Windows and Pocket PC, J2ME on PalmOS and java phone devices, AppleScript Studio on MacOS X, and all sorts of other things (eg. our portal has a RAD framework for portlets, and it can slurp up web services with no trouble, and I'm sure there must be at least one BREW dev environment with support for them).

    3. Re:Quick Question by jrumney · · Score: 1

      Sounds nice, but why so many different versions of the presentation layer? A Java Applet and a Midlet should take care of most of those platforms, and would be a lot less work to develop and maintain.

    4. Re:Quick Question by bwalling · · Score: 2, Insightful

      Mozilla/XUL on Linux, .Net Windows Forms apps on Windows and Pocket PC, J2ME on PalmOS and java phone devices, AppleScript Studio on MacOS X

      Uhh, Mozilla/XUL runs on Linux, Windows and MacOS X. Why would you develop three different times when you could do it once?

    5. Re:Quick Question by DdJ · · Score: 1
      Uhh, Mozilla/XUL runs on Linux, Windows and MacOS X. Why would you develop three different times when you could do it once?
      Some people might do so because they prefer native apps to cross-platform apps (for example, under MacOS X it's easier to make the behavior of Services consistent that way -- as things stand, I don't run Mozilla on MacOS X because it's not as well-integrated with the OS as Safari is).

      But the point I was really trying to make is that by using web services, you could enable that strategy, with not too much effort required for all the user interfaces. Nothing would require you to do that, but writing apps that consume web services is really very easy with .Net and AppleScript -- it'd be an afternoon's job for many apps, once the web service providing the application logic was written.
    6. Re:Quick Question by DdJ · · Score: 1

      First of all, I don't know of a way to run Java applets or midlets on PocketPC devices. If you know of a way, let me know. Also, I don't know of a way to run them on PowerPC or ARM or Alpha Linux boxes, which is a concern for me, at least.

      Also, native apps often look and behave better than Java apps. I use MacOS X and PalmOS 5. Do I use Java apps? Yes. Do I use any MIDlets? Yes. Given the choice between a Java app and a Cocoa app, which will I use? The Cocoa app. Given a choice between a MIDlet and a native Palm app, which will I use? The native Palm app.

      If the application logic can be put somewhere that a dozen presentation layers can get to it, and it's very cheap to write presentation layers, then there's less reason not to make a dozen versions of the presentation layer. Hackers can churn them out, they can be made skinnable, et cetera.

    7. Re:Quick Question by jrumney · · Score: 2, Informative
      There are a number of JVMs available for Pocket PC devices, either as MIDP, J2ME Personal Profile, or its predecessor Personal Java, the latter two being Java 1.1.8 compatible and capable of running applets. The exact versions available depend on the underlying processor, but Creme, Jeode and IBM's J9 are ones I've encountered. HP have a Java 2 implementation for Linux on Alpha, and older versions of 1.1.7 (which if you're targeting lowest common denominator applets is sufficient) have been available for years. Blackdown have a 1.3.1 JDK for Linux on PowerPC and 1.1.8 for ARM based devices, which is also supported by IBM's J9.

      "Looking and behaving better" is partly a matter of what you are used to, and also a reflection on the poor quality of many Java UIs, which is more a reflection on the apps themselves rather than the platform (there are exceptions, demonstrating that Java is capable of being better). If you could have an app that looked and acted exactly the same on all desktop machines, and appropriately differently on palmtop devices (but the same across all such devices), would that be enough to make you want to avoid duplicating all those presentation layers? (I think you underestimate the amount of work involved in producing a good presentation layer, BTW).

    8. Re:Quick Question by DdJ · · Score: 2, Insightful
      If you could have an app that looked and acted exactly the same on all desktop machines, and appropriately differently on palmtop devices (but the same across all such devices), would that be enough to make you want to avoid duplicating all those presentation layers?
      Actually, no. That's exactly what I do not want. I want an app that conforms to each platform's UI guidelines. The UI guidelines of the different platforms are incompatible with each other, though. An app that behaved exactly the same on each desktop platform would be able to conform with guidelines on one platform, but then it would be jarring for folks who don't use that platform.

      But back to the rest of what you were writing...
      There are a number of JVMs available for Pocket PC devices, either as MIDP, J2ME Personal Profile, or its predecessor Personal Java, the latter two being Java 1.1.8 compatible and capable of running applets. The exact versions available depend on the underlying processor, but Creme, Jeode and IBM's J9 are ones I've encountered.
      Could you post a more specific pointer to IBM's J9 one? That's what I'm running on my Tungsten T3 already, and if I could run that on my iPaq h4350 (ARM-based PocketPC 2003), I can do a real comparison and see if it's suitable for our applications.
    9. Re:Quick Question by zhenlin · · Score: 1

      Javascript provides glue, and logic if so wanted. If not, you can write it as a server-side logic.

  13. and 1 free -f switch for you by apachetoolbox · · Score: 0

    you win the prize!

  14. Hiow about the (s)ftp lizard by coyote4til7 · · Score: 1

    Filezilla -- probably the best free gui ftp/sftp client for windows there is. The pity is that they didn't stick to cross-platform on some of the underlieing stuff, so it doesn't run on my linux & os x boxen. Boooo!

    --

    the clock on the wall says 4 til 7
    1. Re:Hiow about the (s)ftp lizard by timothyf · · Score: 3, Informative

      Sorry, but FileZilla runs as a native Win32 app. It doesn't have anything to do with Mozilla.

  15. um. by Run4yourlives · · Score: 1, Insightful

    Why?

    Just because you can do something, doesn't mean you should.

    So why exactly should I use Mozilla for RAD?

    1. Re:um. by Bill+Dimm · · Score: 0, Troll
      I recently developed a Mozilla application to allow editors for MagPortal.com to work remotely, so I'll give you the reasons why we chose it:
      1. Cross-platform - application runs on Linux, Windows, etc.
      2. Easily parse XML data, making it work very nicely as a client in a client-server application passing XML.
      3. Uses technologies that are familiar to web developers (XUL/XML, JavaScript).
      4. Easily integrate HTML rendering into your application if you need it.
    2. Re:um. by Run4yourlives · · Score: 1

      Those are all valid reasons, but none of them warrant me choosing Mozilla over any other any other development environment.

      That's my point.

    3. Re:um. by dolmen.fr · · Score: 1

      I do not consider Mozilla to be a "development environment". This is a platform, but there is no development tools besides the Javascript debugger and "view-source".

      The Mozilla platform is not a universal solution. As always, you have to choose the right platform for the kind of aplication you are developping.
      I consider that the Mozilla platform is a good choice for aplication that requires communication with a remote centralized server that maintains the code. This is the same target as Java Webstart.

  16. Sounds like a soon-to-be-added edition by elmegil · · Score: 5, Informative

    This sounds very much like it actually delivers what Creating Applications With Mozilla promised. After reading CAwM first 3 chapters, having them completely confuse all the various issues in my mind, a wrote this review. To give Boswell credit, he emailed me with some pointers to resources that helped get me over the hump, but that doesn't excuse O'Reilly's editorship from their usually excellent job of encouraging authors to make their work accessable as well as detailed.

    --
    7 November 2006: The day Americans realized corruption and incompetence weren't addressing 11 September 2001
  17. XUL? by Conspiracy_Of_Doves · · Score: 3, Funny

    Ok, who is going to be first with the Ghostbuster jokes?

    1. Re:XUL? by happyfrogcow · · Score: 3, Funny

      [evil_voice_over]
      There are no Ghostbuster jokes, only XUL
      [/evil_voice_over]

    2. Re:XUL? by rufus+t+firefly · · Score: 2, Informative
      Ok, who is going to be first with the Ghostbuster jokes?

      Check the XUL specification. It uses http://www.mozilla.org/keymaster/gatekeeper/there. is.only.xul which is a Ghostbusters reference.

      --
      "He may look like an idiot, and talk like an idiot, but don't let that fool you. He really is an idiot." - Duck Soup
    3. Re:XUL? by sweet+cunny+muffin · · Score: 1

      That's why he mentioned Ghostbusters, you moron.

    4. Re:XUL? by rufus+t+firefly · · Score: 1
      That's why he mentioned Ghostbusters, you moron.

      No, he mentioned Ghostbusters because Xul (actually Zuul, according to the Wikipedia) is the name of a character in Ghostbusters, not necessarily because he understood that the Mozilla developers intentionally used that reference. That is the reason why I felt the need to clarify that both "gatekeeper" and "keymaster" (obviously references to Ghostbusters) are in the URL.

      Head off to Kuro5hin if you're so quick to call someone a moron.

      --
      "He may look like an idiot, and talk like an idiot, but don't let that fool you. He really is an idiot." - Duck Soup
    5. Re:XUL? by sweet+cunny+muffin · · Score: 1

      You're a moron.

    6. Re:XUL? by Anonymous Coward · · Score: 0

      Check the dude's user ID. He's just some tard troll that wandered onto this site. He'll disappear after sufficiently making an ass of himself.

    7. Re:XUL? by zarr · · Score: 1

      Check the dude's user ID. He's just some tard troll that wandered onto this site. He'll disappear after sufficiently making an ass of himself, said the Anonymous Coward...

    8. Re:XUL? by dolmen.fr · · Score: 1

      Thank you for this. I knew Mozilla XUL, but as a non-american who has seen the Ghostbuster film many years ago and in french, I wasn't aware of the Ghostbusters references.

  18. Here's the unencrypted PDF and source code. by Bruce+Perens · · Score: 5, Informative
    Here's the unencrypted PDF in a .zip file.

    Here's the source RTF document in a zip file. That's Rich Text File, not the usual acronym :-)

    So, having established that it really is Open Source, I do encourage you to buy the book.

    Thanks

    Bruce

    1. Re:Here's the unencrypted PDF and source code. by dubious9 · · Score: 4, Informative

      I'm surprised you didn't plug the rest of the books in your series. I've look at a couple and they're really quite good.

      For those interested in those that have been released as .pdf's look here.

      --
      Why, o why must the sky fall when I've learned to fly?
    2. Re:Here's the unencrypted PDF and source code. by AT · · Score: 1

      Is there a PDF version of this without the little targets in each corner of every page? Or some way to print it out without these unsightly distractions? Or an RTF version that has the diagrams?

      This book looks really nice, but I find those little circles everywhere distracting when I print it out.

    3. Re:Here's the unencrypted PDF and source code. by Bruce+Perens · · Score: 1
      ps2ps (Ghostscript outputting PostScript) can probably fix the files for you if you give it the proper bounding box.

      Come to think of it, perhaps bounding boxes should be a feature of PDF viewers.

      Or you could buy the book :-)

      Bruce

    4. Re:Here's the unencrypted PDF and source code. by Anonymous Coward · · Score: 0

      Is there any way to access the text of these books that doesn't involve deciphering the ISBN or whatever?

    5. Re:Here's the unencrypted PDF and source code. by Bruce+Perens · · Score: 2, Informative

      Go to phptr.com/perens .

  19. Re:Rapid Application Development is RAD! by apachetoolbox · · Score: 1

    Rad (1986)

    Right before the nintendo generation :D

  20. Available in PDF Now by slakr · · Score: 1, Informative

    The book has already had its few months in paper-only format, and is available to download (along with a number of other books in the series) at InformIT

    1. Re:Available in PDF Now by Anonymous Coward · · Score: 0

      Beaten to the post by Perens himself. Lucky you.

  21. Mozilla + Trailblazer = drool by System.out.println() · · Score: 4, Interesting

    Maybe if someone could read this book and combine Mozilla with Trailblazer we would have the best browser ever.

    And don't suggest me. I'm far too lazy. ;-)

  22. Re:The Linux platforms by Anonymous Coward · · Score: 0

    6) PLT Scheme

    :-)

  23. Re:Rapid Application Development is RAD! by happyfrogcow · · Score: 1

    "Rad" ruled.

    - "you over rotated.."
    - "no shit."

  24. Bah! by Anonymous Coward · · Score: 0

    I was hoping they were going to report that Mozilla 1.7 had finally come out of beta :/

    Been waiting to upgrade for a while now...

  25. Support of large corporations-Ahead of the critics by Anonymous Coward · · Score: 3, Insightful

    And for those who've forgotten recent history. Remember all those people berating mozilla for all their cross-platform work, and just give us the browser. Now here we are with a rich toolkit that can run up against anything Microsoft can produce.
    Something that either would be behind, or none existant if the developers had listened to their critics.

    This is one of the reasons developers shouldn't pay attention to armchair critics. Critics more than anything else, are working from incomplete, or inaccurate, or just plain wrong information. just look at the binary vs open source drivers issue with the Linux kernel.

  26. m$ patent by Anonymous Coward · · Score: 0

    Didn't microsoft get a patent on this thing (html apps without navigation features, etc.)? Is that the same thing or am I just confused?

  27. It's time to embrace XUL-Seperate lives. by Anonymous Coward · · Score: 1, Interesting

    "The Glade XML format is kind of strange (it looks like XML described in XML; a pointless scheme), but Glade simplifies GUI development to a point that I have yet to see anyone improve on, in terms of simplicity"

    This is a rather important point that gets short thrifted. How many times have we logged into "/." to listen to another usability complaint? And the UI people complaining that the programmers don't listen to them, and the programmers complaining that the UI people don't understand what's involved? Well here's the solution staring people in the face. Just as the web people have learned the seperation of content from everything else. The GUI people have the look seperated from everything else, were they can go off and do their own thing, then come back and merge with the programmers. Sounds like a win, win for everyone, except maybe the armchair critic that secretly doesn't want Linux to succeed.

  28. Re:as usual.. by Anonymous Coward · · Score: 0

    My bloated beer belly is on top of your head, cocksmoker! NOW GET BACK TO SUCKING MY POLE!

  29. I've recently read this... by cliveholloway · · Score: 3, Interesting

    ...and found it cluttered. It's like they took the tutorial pages and the appendix and decided to shuffle them together.

    The listings are only for parts of an application at a time, making it hard to visualize the whole project.

    It could really do with having stand alone examples for each chapter or, at the very least, have an associated web site with such content (the listings could, I guess, get a little out of hand).

    It may just be me, but seeing snippets out of context is not how I learn things.

    I think it would have been better if they started off by presenting the whole of the notetaker program, and then analysed each section to explain what it did, and leave the detailed descriptions of tags to appendices.

    In its defence though, there's so much to learn that it would be hard to make a good tutorial in one book along with the reference material - whatever the approach.

    I'm still waiting for a perfect book on Mozilla Application Development. Kudos to anyone who manages to write one though - there's so much to cover.

    cLive ;-)

    --
    -- Trinity in high heels carrying a whip: The donimatrix - there is no spoonerism
  30. Web-installer....Your Lord and Master. by Anonymous Coward · · Score: 0

    "Quite frankl,y the systems that the programmers write are there for the convenience of the lemmings, whether the programmers like it or not."

    OSS breaks that cocaine-like dependency. Without money in the process, those lemmings are as equal as everyone else. And yes programmers do like being drug free.

  31. Comment removed by account_deleted · · Score: 1

    Comment removed based on user account deletion

  32. It's time to embrace XUL-Remotely. by Anonymous Coward · · Score: 1, Insightful

    Actually there's always one thing I've wanted to know. Can you remotely deliver these XUL's to the browser, so when you start up it pulls it off a server somewere. Or is this strictly a local thing?

  33. MOD DOWN! by Anonymous Coward · · Score: 0

    There's is no such thing as Apache Cocoon. The parent just pulled that product name out of his ass!

    1. Re:MOD DOWN! by Anonymous Coward · · Score: 0
  34. don't most... by zogger · · Score: 1

    FTP programs do this already?

  35. MOD PARENT UP. by Havokmon · · Score: 1
    No, I don't have anything of value to contribue to this thread. -shrug-

    --
    "I can't give you a brain, so I'll give you a diploma" - The Great Oz (blatently stolen sig)
  36. OMG WTF FOAD YAAD YHBT YHL HAND by Anonymous Coward · · Score: 0
    1. Re:OMG WTF FOAD YAAD YHBT YHL HAND by Anonymous Coward · · Score: 0

      yawn

  37. Re:Support of large corporations-Ahead of the crit by Anonymous Coward · · Score: 0

    Why don't we wait until it's demonstrated that this can compete with MS before we declare that the cross-platform work was a good idea.

  38. Typical by bsd+troll · · Score: 0

    If this was a commercial, closed book, we wouldn't have problems like this. It's not until people's money is on the line, that you see people actually putting out that extra effort that separates the best of breed, like having a working website.

  39. Cross Platform kits and Native Interferaces by melatonin · · Score: 4, Interesting

    I think everyone agrees that most x-platform tookits have one glaring weakness - all the platforms share the same user interface. Mozilla supports skinning, which is nice, but it doesn't feel like a Windows application or a Mac application. It feels like an XUL application. NeXT had fantastic x-platform support with OpenStep; it's also how it (and Cocoa) acheive localization. That technique should be able to be used with other toolkits, even if they don't have 'native' support for that technique.

    Let's take a look at localization first. Typically, you generate a .strings file for each language. That kinda sucks because if you just did that, all localized versions would share the exact same window and control (widget) dimensions. The following is what Cocoa (OpenStep) does. Each application 'binary' is actually a directory with this kind of layout

    Foo.app/Contents/
    -/MacOS/
    --Foo (executable)
    -/Windows/
    --Foo.exe
    -/Sparc/
    --F oo
    -/Resources/
    --MainWindow.nib (interface file for the main window; controls and stuff)
    --ToolWindow.nib (interface for tool window; no french version)
    -/French/
    --MainWindow.nib (french version of the main window)
    --Localized.strings (localized strings for the entire app, excluding those translated in MainWindow.nib)

    Hopefully that's self-explanatory. Basically each platform gets its own version of an executable, and each language gets its own version of the interface (falling back to the basic definition in Resources/ if no version for a specific language is found). Well the next step is obvious. If you want to create a windows specific .nib, you create a MainWindow-windows.nib, which will only be used over MainWindow.nib on the Windows platform. Native controls are used on each platform, regardless if there's a platform-specific nib or not.

    It's a shame that Cocoa is no longer x-platform (although the support is still there, it's just that the runtime isn't available on other platforms). But this should be possible with other platforms too; you just need to encapsulate resource loading and load the appropriate resource for each platform and localization.


    --
    Moderators should have to take a reading comprehension test.
    1. Re:Cross Platform kits and Native Interferaces by Anonymous Coward · · Score: 1, Funny

      Cross platform development is like unisex underwear

  40. Printed version is available by Anonymous Coward · · Score: 0

    It is called a book. And I bet it doesn't have annoying circles on it.

    Probably will be much nicer to read than printouts, and not much more expensive than the toner and paper you're printing on. Plus some money goes to support the author and publisher, which in this case is a good thing.

  41. Sho me the MONEY!-Widebody code. by Anonymous Coward · · Score: 0

    I like it. Maybe Plone could have one of those "rich interfaces"? Anyway one of the things I like about the whole xpi, XUL thing is that installation is easy, and that it's bandwith friendly. Maybe XUL needs a good RAD IDE in order to get wider exposure? BTW out of all the books for XUL development, which one would you recommend for a public library?

  42. Actually... by sprekken · · Score: 1
    Eclipse is a pretty decent platform built on SWT, and the JFace libraries.

    You can build completely customized applications using the JFace/Eclipse platform that have nothing whatsoever to do with the concept of an IDE. I've recently built a small client app using it and it's not bad really.

  43. Hmm. by Run4yourlives · · Score: 1

    I understand the need (or desire) for a richer interface... but then you go and force me to install a mozilla based browser (so much for platform independence) if I don't regularly use one! (Hint, most people don't) What's the difference then? I could've installed a JVI, or any other type of client application for that matter.

    In his case, it's probably not worth much because the app is internal, but what about the amazon example? Why not a PHP/Perl page? Why not flash even? Just so we can say we used XUL?

    1. Re:Hmm. by Anonymous Coward · · Score: 0

      Wait a sec, you're on Slashdot and you don't have a Mozilla browser? Your geek cred is suspect. I urge you to logout and turn in your Slashdot ID.

    2. Re:Hmm. by Short+Circuit · · Score: 1

      Mozilla is cross-platform, not the web app he developed. Having used Mozilla as a platform, the editors can access the web app from Linux or Windows, depending on whether they're at work or at home.

      At least, that's how I read it.

    3. Re:Hmm. by Run4yourlives · · Score: 1

      I'm playing the devil's advocate a bit here.

    4. Re:Hmm. by dolmen.fr · · Score: 3, Interesting

      Too many companies sell "intranet applications" for things such as timesheets, knowledge management... that are IE only because they try to imitate Windows application look. When you have one of theese, your are "IE-locked".

      Do you think it is any better?

      At least, the Mozilla platform is free and available on other OS than Win32.

  44. You forgot the most important one by Wolfier · · Score: 2, Funny

    0) emacs

  45. I for one... by Short+Circuit · · Score: 1

    ...welcome our new XUL overloards.

    But if she gets out of hand, bring on the Ghostbusters!

    And catch someof that liquid marshmellow for me.

  46. Rapid Application Development, what does it mean? by Wolfier · · Score: 1

    Does it mean "Develop applications rapidly" or "Develop rapid applications"?

    If Mozilla itself is any example, Mozilla and XUL can only be used for rapid development of antirapid (i.e. sluggish) applications.

  47. Hmm-Microsoft made me do it. by Anonymous Coward · · Score: 0

    "but then you go and force me to install a mozilla based browser (so much for platform independence) if I don't regularly use one!"

    and

    "I could've installed a JVI, or any other type of client application for that matter."

    Not by your logic, you couldn't.
    Besides I too can claim that Microsoft "forced" me to install something I don't regularly use (so much for platform independence).

    "In his case, it's probably not worth much because the app is internal, but what about the amazon example? Why not a PHP/Perl page? Why not flash even? Just so we can say we used XUL?"

    Already covered by the author below. It kind of helps to understand the situation completely, before critisizing other people's solutions.

  48. stand-alone XUL by Anonymous Coward · · Score: 1, Insightful

    Like everything else I've seen on XUL, the intro this book hypes how you can build standalone apps with XUL, which don't need to be Mozilla extensions.... and then says "but we're not going to do that."

    Hi. THAT'S THE PART I WANT TO LEARN. The rest is just syntax, it's XML and javascript and it's really not that hard, if you keep a reference handy (and XUL Planet seems pretty nifty for this) you can make it up as you go along.

    But how do I get started building a standalone app? Where do I get just the mozilla libraries? HELP.

  49. Exactly... by Run4yourlives · · Score: 1

    Which makes it no different than Java, in that respect.

  50. Cheaper on Amazon by aralin · · Score: 1

    Its considerably cheaper on Amazon. Barnes and Nobles has it for $44 dolars and Amazon for $31.

    --
    If programs would be read like poetry, most programmers would be Vogons.
    1. Re:Cheaper on Amazon by dolmen.fr · · Score: 1

      The link points to a downloadable version of the book.
      Is paper really cheaper if you have broadband and just want to read one or two chapters?

      Thanks to Bruce Perens for giving large access to theese books.

  51. ok. by Run4yourlives · · Score: 1

    Alright, I can buy those arguments. Although I'm still not completely sold on any large performance boosts over a properly designed PHP/Perl etc. web application. I'll buy the richer widget set, but that could easily be achieved as well using flash (I know, i know, flash is for lusers), or the dreaded Java. (dreaded because it doesn't play as nice as it should with XP - well, vise versa, but the same result nonetheless)

    We're starting to redesign an internal app here, for which we have a fair number of remote users. These users are quite frankly (who can blame them) sick of using a citrix based set up, so I thought if I could see some real advantages, this would be worth the investigation.

    You've piqued my interest. I'll do some further research.

  52. Re:Support of large corporations-Ahead of the crit by Anonymous Coward · · Score: 0

    Even developers that were fired for being two years behind schedule? (j/k)

  53. This book is helping the porn/spyware industry... by Random+Guru+42 · · Score: 0, Offtopic

    I've heard through the grapevine that some spyware companies and porn sites are putting together XPIs containing spyware, to start catching Mozilla users like they have IE users in the past. With the growth in use of Moz, plus this book, it's a pretty smart decision on their part. But it does mean that people will now need to be more careful about what they're browsing with Mozilla.

    I guess a browser stops being alternative when porn sites start peddling spyware through it. So at least on that, congrats to all us Moz developers, we're on the road to mainstream!

    --
    Christopher S. 'coldacid' Charabaruk -- coldacid.net
  54. Have you seen XUL's root? by aWalrus · · Score: 1

    Found this in Firefox's config files. Check it out (and read the full URI):

    There is no data. There is only XUL

    Warning In the past, I've had versions of Explorer crash on me when looking at that page, so you may want to try it only in non-IE browsers (YMMV).

    --
    Overcaffeinated. Angry geeks.
  55. Take a look at parent's posting history.... by Anonymous Coward · · Score: 0



    Looks like someone with too much time on their hands. Life is short, dude...stop shilling, astroturfing, phreaking, or whatever the /. troll cummunity calls it these days.

  56. Re:Rapid Application Development, what does it mea by AchilleTalon · · Score: 2, Interesting
    Well, with little effort you could rapidly conclude the qualifier applied to Application Development.

    RAD is usually targetted at quick-and-dirty application with a GUI. Something where usability is the most important factor. I would never develop a banking system with a RAD tool given the number of transactions/secs, error recovering and other stuff which are required and much more important than a flashy GUI to it.

    --
    Achille Talon
    Hop!
  57. While you're at it... by Da+VinMan · · Score: 1

    you may want to investigate doing a richer web application using newer UI level toolsets. My favorite at this point is for Java and it's called Tapestry. Therein, you will find a much richer than usual web development framework. Another one that Sun is working on is called Java Server Faces, though they're not really done with it yet and the current consensus among Tapestry folks is that, while it may be better than plain old JSP, that it's not better than Tapestry yet; but they're not biased either. ;+)

    The point here is that you *can* remain in a fat/rich client environment, but if you would like to finally make the transition to a web application, it's easier than ever now. We're well past the point where everyone is writing Perl CGI scripts or Java servlets that generate all of their own raw HTML (*shudder*).

    --
    Please mod this post only if you think others should/n't read this. I have enough ego^H^H^Hkarma. Thanks!
  58. Welcome to 6 years ago! [mark Redundant] by Anonymous Coward · · Score: 0

    We already know all that. Old. Very old.

  59. Re:This book is helping the porn/spyware industry. by LittleDan · · Score: 1

    Well, Mozilla prompts you before installing anything, so that eliminates most insecurities.

  60. Re:This book is helping the porn/spyware industry. by Random+Guru+42 · · Score: 1

    IE prompts a lot of the time, too. It's not the browser to be worried about; usually the problem with these cases lies between the chair and the keyboard.

    --
    Christopher S. 'coldacid' Charabaruk -- coldacid.net
  61. Re:Rapid Application Development, what does it mea by Anonymous Coward · · Score: 0

    As far as I understand it, Mozilla (Seamonkey, the suite) is not a XUL application. Mozilla Firefox on the other hand, is.

  62. Lacking Grid Widget by Anonymous Coward · · Score: 0

    The XUL toolkit seems to be lacking a decent editable "grid" widget. Grid widgets allow spreadsheet-like grids where users can enter information into data cells, resize columns, etc.

  63. Adding entries in Mozilla's default popup? by ZorroXXX · · Score: 2, Interesting
    A friend of mine is involved in a project where they are using Microsoft .Net to add an entry in the default popup menu on a webpage. This of course only works on windows and in IE.

    I would love to be able to present for him a solution that works for mozilla as well. Is it possible to add an entry, say "Print 5 Copies" to the default popup menu below "Save Page As", and have that run some javascript (or something else) using any of the mentioned RDF/XBL/XUL?

    --
    When you are sure of something, you probably are wrong (search for "Unskilled and Unaware of It").
  64. Re:Rapid Application Development, what does it mea by jesser · · Score: 2, Informative

    Firefox and Thunderbird use a newer XUL toolkit than Seamonkey, but they all use XUL.

    --
    The shareholder is always right.
  65. Re:Rapid Application Development, what does it mea by jesser · · Score: 2, Insightful

    Firefox is much faster and slightly more featureful than the browser component of the Mozilla suite. Saying XUL is slow because Mozilla is slow is like saying C++ is slow because your insertion sort code sorts slowly.

    --
    The shareholder is always right.
  66. Can a geek appreciate an easy to use UI? by saroth2 · · Score: 1

    I certainly appreciate an easy to use UI. When I want to change networking settings, it seems like everyone here wants me to go to /sbin/ifconfig and type in three or four parameters I have to look up every time. and may require mutiple commands which take more time. In my opinion it is much faster to use a GUI that displays all necessary information in one window!

  67. Just bought it by kendoka · · Score: 1

    I was looking for something exactly like this - thank you /.! =)

    Finished skimming it and from the surface it looks pretty decent. Dunno how well it will be when it comes time to write code but from here it's already the best descripton of Mozilla tech I've read yet.

  68. New Languages in Mozilla by superyooser · · Score: 1
    Slides from Brendan Eich's Mozilla Futures Talk at Developer Day

    See this and this slide on programming languages.

    Extend existing Python support to match chrome JS
    It mentions Perl, too.
  69. Doing real work with Mozilla by rycamor · · Score: 2, Informative

    timothy got it exactly right. This is a very nice overview and collection of tutorials. It is definitely not designed as a reference, and that is the biggest thing missing for Mozilla/XUL right now. (For now, your best bet is a combination of the book + xulplanet.com, but XULPlanet's reference is just a little too terse to be useful on many things). IMHO to really document Mozilla in a useful way would take at least a couple 1000-page books.

    Anyway, reading this book did provide me a great leap forward in my first large Mozilla app. For anyone who doubts whether serious work can be done in Mozilla, I will say... yes, but not with Mozilla alone. Obviously, Mozilla is intended as a GUI framework, so to accomplish serious work, you still need some system-level stuff to happen. My biggest quest in developing a kiosk-based app for Linux was how to integrate the two:

    1. How to do this is not as readily apparent as I had thought. Of course, every web app developer's first thought would be to use Apache/PHP and basically treat the thing as a web app. But that ignores 90% of the true capability of Mozilla, so even though that was my home turf, I rejected that concept.

    2. I thought maybe I would dig into that incredibly large pile of interfaces that makes up XPCOM, and see if I could play with the Python or Perl implementations, but my project was too much of a RAD situation to allow for that kind of time.

    3. I thought maybe I could use MozPHP, which embeds a PHP intepreter in Mozilla. Turns out that it is near impossible to actually get it to work, and it really plunks you right back in the same old dynamic-document-building territory as the HTTP-based solution would. (In other words, you are using PHP to constantly re-write XUL content, which in the end can be very counter-productive and performance-intensive for the front end)

    4. Finally, I realized that with JSlib (http://jslib.mozdev.org), I could use ... sockets. In Javascript. Crazy... So, trying to keep in mind Eric Raymond's "Art of Unix Programming", I pulled together a few small daemons using PHP in CLI mode to handle back-end stuff, and used socket_select() to set up a message-dispatching system, keeping things nice and simple and "textual" (as ESR puts it) between PHP and Mozilla. Used the ":" as a delimiter, escaped text going in both directions using standard urlencoding (PHP and Javascript talk that language nicely). Asychronous notification... fun stuff. I can use PHP to call any Javascript method in Mozilla, and vice-versa with PHP, using variable function execution.

    Performance? Performance is great. Remember, these are daemons, so I am not continually invoking the PHP interpeter to recompile and execute. And, since my front-end is a chrome:// app, it caches nicely after loading once.

    It really was more fun than I thought it would be. All I can say is, give it a try.

    1. Re:Doing real work with Mozilla by timothy · · Score: 1

      Actually, M. Morgan got it right :) My role was much smaller. Glad you liked his review, I certainly did.

      timothy

      --
      jrnl: http://tinyurl.com/c2l8yr / foes: http://tinyurl.com/ckjno5
  70. Not for nothing but... by Ayanami+Rei · · Score: 1

    The original intent was to use ECMAscript because it was 'already there', seeing as XUL and the XHTML DOM are pretty close in purpose so you wouldn't be writing code twice. And it's a great language for the job, letting you do nice things like using closures to handle events, or doing funky things like adding properties to objects instances and shit. useful in an event driven environment where things are being thrown around willy nilly, properties being checked for, and their existance spawning all manner of conditional behavior. javascript is a really ass-easy language to plug your gui components together. In this way you can skin simple behaviors into the interfaces with it, and try different modes of interaction without recompiling. You shouldn't actually WRITE non-trivial applications with it, though. You should be using XPCOM callbacks that talk to native code for that (i.e. C/C++, java, python).

    --
    THIS THING CAN TURN ON A DIME, MACROSSZERO STYLE ALSO FUCK BETA, ~NYORON
  71. Nothing Wrong with the Vernacular by Cruxus · · Score: 1

    Please. The distinction between fewer and less is minuscule at best. Yes, fewer is to be used for objects that are in an inferior countable number; and, yes, less is to be used for an inferior graduated amount; but what is significant is that both denote inferior quantity. Because whether an object is countable or graduated can be determined by the meaning of the word modified, the distinction is superfluous and so is obsolescent in informal language.

    Moreover, many languages do lack such a distinction between countable and graduated. These languages' users somehow manage to get by, though. Indeed, they may be a little confused when they learn English and discover a semantic distinction they'd never thought about before!

    --
    On vit, on code et puis on meurt.
  72. Nope. by Anonymous Coward · · Score: 0

    Mozilla uses the GTK+-Libraries to draw itself in Unix-Environments. But it does not rely on GTK+. In Microsoft Windows, GDI is used to draw the canvas.

    There was a QT-Port of Mozilla for Unix, but it has long gone from the tree.

  73. A comparison to JSF or ASP WebForms? by Phatmanotoo · · Score: 1

    With all people comparing XUL with other client/server-oriented UI toolkits... I'm surprised nobody is asking about the possible use of XUL as the UI enhancement in web applications. It's something that's been badly needed for such a long time. Just look at where the current battlefield is between the J2EE and .NET camps: the web-UI. MS came up with WinForms, Sun is counter reacting with Java Server Faces.

    I have no idea about XUL, so could someone care to comment about XUL and webapps?

  74. dcop by kwoff · · Score: 1

    Does mozilla have something like DCOP? I read an article recently on using DCOP with KDE and it seemed really cool. Now I want everything to have DCOP. :)

  75. Server-based XUL applications by pkphilip · · Score: 1

    For XUL to be really useful, I think there should be a provision for the XUL app to be loaded from a server.. say, if I hit http://www.mysite.com/store, it should be able to load the shopping site xul onto my browser without requiring any client-side installation.

    As far as I know (I could be wrong) I don't think this currently works in Mozilla. At the moment, all XUL apps need to be registered in the chrome (put into this folder?) before it can be used - so a client-side installation is mandatory.

    Therefore there is no compelling reason to develop an app in XUL when wxwindows, qt, gtk etc serve the same purpose better (performance is definitely better than xul and qt/gtk/wxwindows are all cross-plaform to varying levels)

    Mozilla can already load apps directly into a browser and do some pretty nifty things with it, so adding this ability to load apps across the network would greatly increase its usefulness.

    Integrate SVG and SVG based UI widgets and we really could have a killer platform.

    1. Re:Server-based XUL applications by rycamor · · Score: 1

      XUL apps can be loaded from the server (as long as the server has the right mime-type), but there are various security restrictions.

      See the Mozilla Amazon browser (http://www.infodraft.com/~faser/mab/) as an example of a XUL app that can be launched remotely.

    2. Re:Server-based XUL applications by pkphilip · · Score: 1

      Thanks a lot for the tip! I didn't realize this was possible, I managed to check out the link that you sent over and was most impressed.

      How is that not much mention is made of this? This is a killer web-application development feature.

      Thanks again.

  76. Bill Dimm, I'd like to talk w/you by mcrbids · · Score: 1

    Bill,

    I'd really like to get your feedback on XUL. Any chance I could arrange for a conversation w/you?

    -Ben

    --
    I have no problem with your religion until you decide it's reason to deprive others of the truth.
    1. Re:Bill Dimm, I'd like to talk w/you by Bill+Dimm · · Score: 1

      Hi Ben,

      I emailed you at the address given on the contact page for your website earlier. You can call me at 610-581-7702 whenever you like.

  77. xulplanet.com great reference...but by Anonymous Coward · · Score: 0

    anyone know why xulplanet.com has been down for the last 3 days?......