Neil's Place

May 29, 2004

4:03 PM Effective use of text replication tools

Compare this with this.

Mind boggling.

Comments ( 36 )

May 21, 2004

11:55 AM I'm tired of updating Mozilla

The Mozilla Foundation has finally managed to release an alpha version of a later release before the previous release. What does this mean to end users? It means confusion as people don't know what to download. What does this mean to people who want to file bugs? It means that unless you've been involved with the project for a while, you have no idea what you should be testing. What does it mean to extension authors? It means that your users will be using 25 different versions of Mozilla. Is there a way to test your extension or theme with all of these? No. Same goes with web sites actually. They've been known to break between versions. I know of one web application that only worked on Netscape Communicator 4.06 and no other version. Of course, if you're an extension author, you could try only building only to the stable API releases. Do you know which the most recent one is? (Hint: The version number begins with 1 and ends with .4) I doubt many people knew that, since this isn't indicated anywhere. But, of course, don't file bugs on it, since it's too old.

In the world of Mozilla, software that was released two months ago is considered old and outdated. For other software, two months is considered new. If your file a bug on a build that is a month old, you get chastised for using an old product and the bug often gets marked invalid. Sure, some bugs are invalid (or duplicates) since they were fixed recently; many others aren't.

I stopped upgrading Mozilla a long time ago, opting instead for an occasional update. I used Mozilla 1.4 up until a month after 1.6 was released. I could have updated to get a few features or security fixes, but I didn't. Why? I'm tired of updating software. And just for the Firefox crowd, I'm also using Firebird 0.7 (still the old name). Why don't I update? I'm tired of updating software. Will I update to 1.7 or 1.8 or Firefox 1.0? I don't know. Perhaps if it's the one or two days a year when I'm not tired of updating software, I will.

I used to get excited when a new version of something arrived. I don't any more, as the new version is more of the same. Ordinary users aren't going to update software either. (People who have at some point posted a message on Mozillazine.org aren't ordinary users in this sense). They're not going to update unless there's a compelling reason to do so. And that reason has to be more than my urge not to update since I'm tired of updating software.

This is also why people don't switch from IE. Popup blocking is the only real advantage that any end user would care about, and that advantage is going away with the next IE update. Mozilla has lots of great features like tabs and type ahead find and DOM inspectors, but the reality is that advantages don't sell a product. Actually, the disadvantages of the competitor are what makes people switch. An IE user might say "Look at all these popups and ads; this makes it very difficult to use; perhaps there's something better out there." Then, they might start using Mozilla (or Firefox). However, I can't imagine any ordinary user saying. "Look at how I have to select the Find command and then type in what I want to find on the page. I wish there was a way I could find text by pressing the slash key and then typing what I want and having it find the text incrementally." No user thinks this way, since most people aren't creative enough to think of the easier way. You have to show them the easier way. And make sure to show them, since ordinary users won't know which of the many Mozilla versions to try.

I'm sure there's some reason for having a new release or pseudo release every month. Perhaps it's for QA purposes so that people who aren't tired of updating software will always get the latest versions and test them. Maybe it's to get more feedback as people who aren't tired of updating software will always get the latest versions and provide feedback. Maybe it's for marketing purposes so that slashdot and other tech news sites post articles about the newest release. I'm not sure about the latter. Mozilla has so many releases that it hardly qualifies as news any more. Reporting about a Mozilla release is like reporting that the month ended.

In my opinion, if there is still a need for frequent releases, why not make the version numbering more sensible and release ten alphas and betas, then release a final build once a year or every nine months, like most other sofware? I'm sure someone will tell me that I'm all wrong, but, as an end user, I'm tired of updating software.

Comments ( 20 )

May 19, 2004

8:42 PM Investigating the XUL Template Builder

A few weeks ago, someone was asking some questions about XUL templates. In the process of answering, I had a revelation and finally understood completely how templates work. I also decided it was finally time to try to understand the template building code. This code is rather complicated, involving about 20 - 30 different data structures. I still don't understand what all of them are for, and I don't think it's possible that anyone ever will. I think the complexity comes from the code needing to be scalable for templates with lots of rules and conditions, and ensuring that only the necessary parts need to be reevaluated. Most templates only have a few consitions so I'm not convinced that the complexity is worth it. But then again, I wouldn't be able to tell for sure without ripping it all out and changing it, which I don't think I want to do.

I am, however, more sure that the template builder actually does work as it's supposed to. Any problems people have are caused by errors either in RDF or template syntax. Common problems include using the wrong RDF content type, using the different parts of the RDF triple incorrectly, or putting the wrong values or variables in the template itself.

Many people would agree that templates need some kind of debugging aid. This would involve two things. First, the simplest, would be to print template syntax errors on the Javascript console. This would catch some types of errors, but wouldn't be able to catch RDF usage errors. The second would be to have a way of enabling a log of what the template builder is doing, allowing one to determine where in the process things are going wrong. Debug builds of Mozilla already have such a feature, but the output is very cryptic and is intended more for someone who is debugging the template builder code itself. I like the idea of a template builder log, but I'm not sure where it would be stored. One possibility is to add an attribute 'debugtemplate' or somesuch and, if true, store a log in a string field in the template builder, accessible via script.

That said, I'm in the process of creating some patches for the template builder, one patch to print template syntax errors to the JS console, and another nice patch for the enhancement bug 86435.

Comments ( 38 )

May 18, 2004

XULPlanet Forums
The XULPlanet forums have also now returned.

May 14, 2004

6:54 PM XULPlanet has returned!

After a long time off, XULPlanet.com has returned in all of its glory!

Well, almost. There's a few things that don't work quite right yet. The forums aren't up yet for instance. These should be fixed soon.

In case you were wondering, the old host decided to suddenly go out of business. Fortunately, we were able to make a backup of all of the content and move it onto a new host. We got numerous requests to help and I'd like to thank everyone who offered. However, we decided to go with a dedicated machine for XULPlanet. With a dedicated server, this should eliminate bandwidth issues such as those we had in February. I might even be inclined to provide downloads of the XPCOM reference. Or, perhaps I should go back to some XUL templates work.

Comments ( 67 )