January 27, 2006

bsmedberg rocks!

$ cat $MOZCONFIG
mk_add_options MOZ_CO_PROJECT=all
mk_add_options MOZ_BUILD_PROJECTS="xulrunner browser"
mk_add_options MOZ_OBJDIR=@topsrcdir@/../obj-combined-debug
ac_add_options --enable-debug --disable-optimize
ac_add_app_options browser --with-libxul-sdk=../xulrunner/dist --enable-libxul
ac_add_app_options browser --disable-installer

Geek out on that!

Posted by darin at 5:28 PM | Comments (3)

January 20, 2006

"click pings"

Rogers Cadenhead left a comment on my blog about a new PHP class library he's developed that "can receive click pings and report on the most popular links." It shows how <a ping> can be used to help you get a better feel for the usage of off-site links on your website.

Posted by darin at 3:07 PM | Comments (8)

January 18, 2006

User feedback...

User feedback is a wonderful thing isn't it? I started my day out with reading the following bug comment:

  ------- Comment #51 From bugzilla@public-files.de  2006-01-18 08:13 PST  [reply] -------
  Assholes

Then I discovered a mountain of wonderful comments on my previous blog entry, punctuated with the damning:

  P.S. Your website is about to be Slashdot'd.
  Posted by: Michael Schaefer at January 18, 2006 07:27 AM 

I went about my day, occassionally visiting my blog to unleash the latest flurry of comments (not really having time to read them all). Now, it's the end of the day, and I happened to read a posting on a mozillazine forum that echoes my position on <a ping> pretty well:

  Well, the benefits (listed in the replies above and all over the net)
  are seemingly quite obvious:
  1. It actually gives you more control over privacy if adopted, since
     you can turn it off.  You can't turn off redirect links which are
     already used all over the web.
  2. It makes URLs more obvious to end-users.
  3. You can get to the destination site, even if the tracking script
     fails or goes offline.
  I can't actually think of disadvantages to list, so you'll have to think
  up your own to refute these benefits.

Now, I'd like anyone reading this blog entry to understand that <a ping> is an experimental feature that only exists in development builds of Firefox that most users will never ever touch. Also, I'm keenly interested in implementing this feature the right way or not at all. If the net result of this work is not a benefit to the user, then it's not worth doing.

Finally, I think I should make it very clear that <a ping> is something I personally chose to work on in my spare time. I am not working on this on behalf of any organization, least of all my employer or the Mozilla Foundation. As with all prototype Firefox features, they either sink or swim on the basis of their own merit. If the community of Firefox developers agrees that this feature manifests itself as a benefit to the user, then it will likely appear in a final version of the product. Otherwise, it will be dropped.

Flame on?!

Posted by darin at 6:50 PM | Comments (73)

January 17, 2006

<a ping>

I've been meaning to blog about a new web platform feature that we've added to trunk builds of Firefox. It is now possible to define a ping attribute on anchor and area tags. When a user follows a link via one of these tags, the browser will send notification pings to the specified URLs after following the link.

I'm sure this may raise some eye-brows among privacy conscious folks, but please know that this change is being considered with the utmost regard for user privacy. The point of this feature is to enable link tracking mechanisms commonly employed on the web to get out of the critical path and thereby reduce the time required for users to see the page they clicked on. Many websites will employ redirects to have all link clicks on their site first go back to them so they can know what you are doing and then redirect your browser to the site you thought you were going to. The net result is that you end up waiting for the redirect to occur before your browser even begins to load the site that you want to go to. This can have a significant impact on page load performance.

Websites even employ "onmousedown" event handlers that change the href attribute at the very last second before a click occurs. This makes it so that hovering over the link displays the location that you want to go to, but it still ends up taking you someplace else.

This change is being considered in large part because some very popular websites have asked for a solution to this problem. The feature itself was designed and specified by the WhatWG.

Edit: I left out an important detail earlier: Websites already do something similar in IE by exploiting a bug with the way images load. There's of course no pref to disable that bug ;-)

Edit: Wow, a lot of people seem to have really missed the point of this feature. In a world where link tracking is the status quo, this feature comes along with the intent of giving the user more control than they previously had, and people balk at it. I'm really quite shocked that so few people seem to realize this. I posted some summary thoughts in my next blog entry.

Posted by darin at 11:02 AM | Comments (368)

January 9, 2006

Prefetching Hints

Edmund Edgar wrote up a nice article about using prefetching hints to improve the performance of websites. It's a good read. He even provides a perl script that helps you design the best prefetching hints for your website.

Posted by darin at 9:31 AM