Aug 30
Gave in
icon1 Niklas | icon2 Tags: , . | icon4 08 30th, 2007| icon3No Comments »

Somewhat reluctantly I started using Facebook a couple of weeks back. For me, joining Facebook meant leaving LinkedIn as I only have so many cycles to spare for social sites. Anyways, Facebook is a big advancement over LinkedIn, if nothing else but the fact that you can actually do something almost useful after linking up your friends. Facebook as a platform is the big hype right now, deservingly it seems.

In all its AJAX glory, one really neat interface feature at Facebook is the “Add To Friends” link.

Click it normally, and an AJAX popup opens in the same window allowing you to add a friend.

Click to open in a new tab or windows (like with Ctrl+click) and instead a new page will open with pretty much the same dialog. Giving the user the choice, very friendly and clever.

For someone who wrote AJAX like web sites at the time it was still called DHTML, the thing that truly stands out with the sites like Facebook, RTM and Gmail is how well the dynamic stuff fits in your normal work flow, rather than being show-offs like we used to do in the good old days.

Technorati Tags: ,

May 9
Twittering
icon1 Niklas | icon2 Tags: , . | icon4 05 9th, 2007| icon3No Comments »

Against my own better judgement I’m trying out Twitter. After a day, I’m far from convinced that it’s of any use. If you know me and are using Twitter, feel free to add me as a friend, maybe that will make it more interesting.

Well, at least they gave me a cute looking error screen.

Tags: ,

Jan 7
Thinking on URL canonicalization
icon1 Niklas | icon2 Tags: . | icon4 01 7th, 2007| icon32 Comments »

Over at REST-discuss there’s an interesting discussion going on regarding how to construct you URLs in the best way. Bill Venners of Artima posted a very interesting note on how he canonicalize all URLs, including the ordering of query parameters and removing default parameters, using redirects. His motivation for doing this, which I think is brilliant, is to aid search engines in identifying two URLs as pointing to the same resource. That is, if http://example.com/foo?a=1&b=2 is his canonical URL, the following examples (with c having the default value of 3) would all get a 301 response pointing to the canonical URL above:

Getting a search engine to figure out that all these are the same thing, would add up the four page rankings and likely make the final page a higher hit. Now, we don’t know how search engines do there rankings (or canonicalizations for that matter) but I think it’s a fair guess that this method helps along.

In a response, Roy Fielding suggest he should use a canonical URL that doesn’t use query parameters at all, probably helping caches to do a better job. I think that makes sense as well, so these suggestions will now form my embryo for a URL c14n best practice:

  1. Don’t use query parameters in the URL of the final resource (a search result page is a different matter, but the actual final page should have a clean URL)
  2. Redirect cases where you need to use query parameters (e.g. when allowing a user to select a resource using for example an HTML form) to the canonical URL.
  3. When you really need a page identified by the query parameters (e.g. a search result page), redirect so that ordering and presence of query parameters are canonicalized