Neil's Place

May 14, 2004

6:54 PM XULPlanet has returned!

After a long time off, 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 )

April 17, 2004

Bug 221619 - tree widget improvements checked in
Removes need to put ids on columns, improves drag/drop, and paves the way for tree editing

How to automate the organization of information
Is the solution to build a Google engine for your own system?

April 15, 2004

11:44 AM Huge Changes!

I haven't been posting much lately. That's because I've been busy working on lots of big changes and improvements on XULPlanet. Here are some highlights:

  • I have personally gone through every XUL tag, attribute and property and combed through the XBL bindings and C++ code that implement them, to ensure that the element reference is complete and accurate.
  • A new Scriptable Object Reference lists objects that are available to unprivileged JavaScript. This is a work in progress and is mostly generated from the XPCOM reference.
  • The element reference now lists inherited attributes and properties along the side.
  • The element reference lists the types of most attributes and properties as well as the return types of methods.
  • The element reference now lists some common style classes that can be applied to elements. These classes work in at least the Classic and Modern themes and should in others as well.
  • Two new sections about commands and command updaters have been added to the XUL tutorial.
  • The tutorial sections on focus, and broadcasters have been reworked.
  • Sidebars have been added to the reference pages for better navigation.
  • Comments are now available on the XPCOM reference and the new scriptable object reference.
  • An index of frozen interfaces has been added.
  • Components in the XPCOM reference now list all the methods of all the interfaces that they implement. For example, see the reference for the local file component.
  • Interfaces now provide a cross reference of other interfaces that refer to them, either via a property, a method argument or a return type. For an example, see the nsIRDFDataSource interface.
  • A bug where unscriptable properties were not marked as such in the XPCOM reference is fixed.
  • The main page has been reworked a bit to make it clearer as to what information is available.

Comments ( 19 )

April 12, 2004

A Manifesto for Collaborative Tools
Thoughts on where to go with applications in the future.

April 7, 2004

11:13 AM Software Economics Poll Results

After looking at the results and comments from the last poll, I'm not sure that people really understood the choices. The Linux choice was inspired by comments made by Microsoft employees and others, where Linux was being compared to communism on the basis of it being free and it promotes sharing of code. The second choice was centered about the idea that packaged software is generally not given to people to use, but licensed for use. In this case, people are not given any private property; it is instead owned by one collective body, in this case, the software developer.

Both comparisons are actually stretching definitions quite a bit. By carefully selecting parts of the free/open source model, or parts of the commercial software model, we can suggest that either is communism. In fact, everything is communism if you really wanted to find a similarity. One could just as easily say that they worked under communism since, at work, one doesn't own anything (their desk, their pens, their other tools,...) and everyone works for the common good of the company.

The point is that free/open source isn't communism. It's a licensing model for distributed software.

By the way when I read Steve Ballmer's line "Linux sort of springs organically from the earth," I wondered if that means that Windows doesn't and is therefore unnatural. See, I can easily stretch things to fit my own agenda.

Comments ( 7 )

April 5, 2004

Mozilla and the potential for interaction
Discusses XUL applications

April 2, 2004

MozNGW - Firefox-based Cross Platform Client for GroupWise
Always nice to see what great things those people in the Mozilla newsgroups were working on.

101 Things Mozilla can do - Korean Edition
Someone -- not sure who -- has written a Korean version.

April 1, 2004

11:52 AM Software Economics Poll

Which of the following is more like communism?

The way Linux is free and encourages sharing of code.
The way Microsoft licensing doesn't allow one to own software they purchase.


Comments ( 18 )

March 29, 2004

101 Things Mozilla can do - Brazilian Portugese Version
Thanks to Caio for providing the ninth translation of 101 things.

March 26, 2004

101 Things Mozilla can do - German Version
Thanks to Wladimir for providing this

March 16, 2004

12:28 AM References Update in Progress

I'm in the process of making some changes to the XUL element reference and XPCOM reference. For instance, I'm including more details on the components pages. If anyone has any suggestions for information they would like to see on the reference pages, leave a comment.

Comments ( 39 )

March 5, 2004

RDF Datasources Reloading
Now scriptable. Also updates when the datasources attribute is changed

March 2, 2004

2:19 PM I have returned from the developer day

I'm back from the Mozilla developer day. There doesn't seem to be any of the videos, photos or slides up yet, except for the roadmap slides. There were six talks, as listed on the developer day page. Two additional talks not listed were by George Cao on rich client apps, who showed some Firebird+SVG demos which were really great -- including dynamic updating, and bar and pie charts. The last was a short talk on RDF datasources from Ben. I hadn't realized he had an interest in RDF and wanted to ensure that people knew that creating custom datasources without using RDF/XML was possible.

The roadmap talk from Brendan suggested a number of interesting things that the foundation wants to do in the future:

  • Try to get enough SVG implemented. SVG is a big spec, so try to find what parts are more necessary. Mention of work desired on making Mozilla render to hardware graphics libraries.
  • Support other languages besides JavaScript. Indication was that Python was the easiest to do. Later, Perl and possibly runtimes like Mono.
  • Help build a XUL IDE using Eclipse.
  • Create a documentation site. The foundation is looking for help. I was going to ask about this and what kind of documentation was desired but didn't get a chance.

The talks were mostly aimed at developers except for the Firefox/Thunderbird talks. The assumption was that people there knew enough about the basics of Mozilla. People did ask some branding related questions though. One main point is that the Foundation felt that the name 'Mozilla' was being used for too many things - the organization, the website, the browser and the platform. The news apps are intended to push the Firefox and Thunderbird names for the browser to help distinguish them from other Mozilla names.

There were a number of people there looking to hire for Mozilla work as well as people looking for jobs. Many of the rest of the people were Foundation employees as well as other former Netscape/AOL employees. Interestingly, it was mentioned that half of the foundation staff are now paid outside of the AOL money.

Quite a good day. They want to hold one every six months, so there should be plently of opportunity to go to another.

At the end, most people left but some hung around for discussions. I had a few with folks looking for Mozilla developers or asking questions. Afterwards, I thought that I could have gone back to the hotel I was staying in, but that wasn't very exciting. Instead, I stayed and listened to Asa talk on various topics such as the environment, politics, curling, language usage and the pop/soda/coke issue. A few others like James, timeless and others occasionally said something. I'm not much of a talker so I didn't say much but I did find it all interesing. Anyway, I finally decided to leave about 3 hours later. Asa propably kept talking for several more hours.

A few notes outside of the developer day since I stayed for a few extra days as a vacation. I did various touristy things. The grass is green in California. Very unusual. I always thought grass was usually more yellowish. I haven't seen a hill in almost two years. Going to and from Millbrae station on the BART makes no sense. In three days, I don't think I've yet completely figured out how to pay for it. People say the weather in California is nice. They weren't talking about last week. It rained often. I wore a jacket every day and turned the heater on at night.

Anyway, I had a good time, and might consider going again, but probably not for the next developer day.

You may have noticed that ran out of bandwidth last week. Coincidently, it happened the same day that I left. There wasn't much I could do about it while I was gone, sorry. We tried to prevent it before I left but that didn't seem to happen. In case you're wondering, usage of has nearly doubled in the last six months. Hopefully, the issue should be resolved soon so it won't happen again.

Comments ( 11 )

February 20, 2004

101 Things Mozilla can do in Russian
Thanks to Sergey for providing this

12:09 PM Heading into an unknown world

It's official now. I'll be going to the Mozilla developer day next Friday. I've never been to that part of the world before so it should be quite exciting. Especially after Chris Blizzard mentioned that Asa won't be wearing pants. In fact, the farthest west I've been in the US is Miami, which isn't particularly very west. I'll be there for a few days (25th to 29th) so I'll have a bit of a vacation too.

This is a good opportunity for others to complain about XUL documentation to me in person.

Comments ( 36 )

February 17, 2004

Generating XUL with PHP
PHP library outputs XUL tags

February 16, 2004

Woman accidently tries to take grenade across border
Customs found one in her glove compartment.

February 15, 2004

11:15 PM Making remote chrome work

There are many times when people want to use XUL remotely. There are a lot of restrictions on the kinds of things that can be done however. Some are more obvious such as reading local files, but others are really just bugs, such as the buttons on a wizard not appearing properly. There are many times when a remote application will want to have privileges to perform additional operations. Currently, in Mozilla, the only way to allow this is to sign the code, or package the code up into an installable download, which is what all the extensions do. Code signing is not viable in most cases -- you need to get a certificate, the steps involved are difficult and very error-prone, and I haven't been able to get it to work with newer Mozilla versions. Back when I first tried to sign code (many years ago), it took me almost a week to figure out how to do it.

Creating a chrome package is simpler although is more complex than it should be. Many people have problems creating the RDF files necessary, putting files in the right place and packaging the files correctly. Chrome also requires that the package be installed on the user's machine. For many applications, such as those internal company ones that do things like bug tracking, project management, and so forth, this isn't a good solution. Chrome applications currently have no automatic updating mechanism, unlike a web site which can be tweaked every day without hassle. There is some talk of adding such a feature to Firefox soon, but this isn't really a viable solution. Having to install things is just not acceptable in the eyes of many internal support people. Also, having to call enablePrivilege all over the place is too much trouble for some.

Instead, I think a better mechanism would be to use a file containing an application description (like the contents.rdf file) which sits somewhere on a remote site. In addition to the application name and author, it might list permissions that the application desires. It could be simple, such as a site that desires general enhanced access, or fine-grained like listing specific URLs or a base URL that requires access to specified XPCOM components or interfaces.

When this remote description file is read, a message box would appear where the user would be asked to grant permission, along with the option of checking a Remember this Decision checkbox. The user would then be redirected to the actual application, the URL of which is specified in the description file. The application would have whatever privileges are necessary.

In this scheme described above, enhanched privileges are only a click of a Grant button away. Some may think that this would lower the security in the browser, and put the user at greater risk. Not really. Enhanced permissions are already only a click away, since XPInstall only requires a single click for a chrome application to be installed.

People ask all the time about why some feature doesn't work in remote XUL. We need to be able to allow these kinds of operations without resorting to some complex scheme such as code signing which just isn't viable for many purposes. Granted, there are places where a extreme amount of security is needed, but very few ordinary users would have a need for this.

Comments ( 21 )