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.
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.
- 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 xulplanet.com 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 xulplanet.com has nearly doubled in the last six months. Hopefully, the issue should be resolved soon so it won't happen again.
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.
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.
1:07 PM About:mozilla
Hmmm. The about:mozilla text probably doesn't make any sense any more.
10:23 PM Firefox and Cars
Hmmm. A screenshot of a car-related website. An indicator of a product's name switch using an odometer. Yes, you can always tell when Ben creates a page on mozilla.org.
7:58 PM Chrome Starter Guide
One of the most common questions asked is how to get a simple chrome application up and running. The XUL App Tutorial describes this. Usually people have problems near the end because they missed a file or typed something in wrong. Since I didn't write the App Tutorial, I am hesitant to change it to be clearer.
However, I have now written a short guide to setting up a chrome application for testing.