BTC 2009
I just came back from the 2009 Bicycle Tour of Colorado. This was a 515 mile long (excluding an optional segment to the Colorado National Monument) loop ride from Glenwood Springs, Colorado with over 1700 other riders from all around US and a few other countries. We started the ride on June 21 from Glenwood Springs, and went through Hotchkiss, Grand Junction, Montrose, Crested Butte and Buena Vista/Leadville. Overall, I climbed over 27000 ft, and three passes – McClure Pass, Cottonwood Pass, and Independence Pass. Another massive climb was to the Grand Mesa near Grand Junction, which is the largest mesa in the world. Here are the logs and pictures.
Caching Chapter
Here is a post on our thoughts on the chapter on caching for our RESTful Web Services Cookbook.
Let us know if you have any comments.
Orca Hurt
My bike, hurt but still standing after yesterday’s crash.

The right shifter looks bad. Both the levers are damaged. The front break assembly is bent. The fork and the front wheel seem alright, as I was able to ride for 15 more miles with the front break assembly disengaged. It is going to the shop today.
Atom Is Not SOAP
After reading Stefan’s agreement and Mike’s observation that Atom is "too widespread" in some cases, I can't help but add that, Atom isn't SOAP.
In order to build interoperable distributed systems over HTTP, there is no need for a general purpose envelope format other than what HTTP provides. HTTP gives us a format with representation metadata (i.e. headers) and a message body. That is as general purpose as we can get.
Atom as a General Purpose Format
A format is just what it is – a format. Dare Obasanjo recently commented that "the Atom syndication format has been as successful or perhaps even more successful than originally intended because it’s original scenarios are still fairly relevant on today’s Web". True. This format is relevant for what it was designed for. However, there has been a slow trend to use Atom as a general purpose payload format for RESTful applications. One of the arguments that gets used is that, standardizing on such a format makes all services consistent and easy to use. This approach, IMO, is suboptimal, and the benefits of doing so are, in some cases, pedantic.
Announcing RESTful Web Services Cookbook
I am happy to announce that Mike Amundsen and I are writing a book titled RESTful Web Services Cookbook. This will be published by O’Reilly by the end of 2009.
See http://www.restful-webservices-cookbook.org/ for more details.
Daffodil Classic 2009
Start time: Apr 19, 2009, 07:23 AM
Total distance: 63 miles
Total time: 4 hours 28 minutes
Average speed:14.0 mph
Total ascent: 2922 ft
Total descent: 2926 ft
That Was an AtomPub Test
The previous post was meant to test AtomPub on WordPress. One of the riders at Cyclogz asked for this feature yesterday, and the previous post demonstrates that all is well.
Mt Constitution (Orcas Island)
Start time: Apr 5, 2009, 09:55 AM
Total distance: 24 miles
Total time: 2 hours 43 minutes
Average speed:8.96 mph
Total ascent: 3454 ft
Total descent: 3147 ft
Is “rev=canonical” a Good Idea?
I agree that URL shorteners are bad for the web in the long run. Link shorteners defeat the centralized nature of the web as they introduce an external redirection service that is not in your control. When that service disappears, your resources become unreachable.
But is the rev="canonical" that is being floated now going to fix the problem? It can not.
As Ben Ramsey points out, the rev relation is ill-defined. More importantly, why not just use the short URI as the value of hrefs in the first place? I don’t get it.