Ionrock Dot Org

by Eric Larson

My Weblog

On Routes with Paste URLMap

In working with Bright Content I have found how important URLs really are. What is most interesting is how URLs provide not only an interface for the user, it creates a contract with the developer of a system at a very low level at the same time. This paradigm seems to be very important in that the user gets some insight into the system's design. As someone who has spent some time in user interfaces, this is extremely odd.

Most of the time a designer should strive to create a design that affords getting a specific and useful task done. Most applications hide abstractions and design from the user because it really is confusing. For example, if I am trying to create a new picture of a circle for my Christmas card, I do not want to essentially create a new object of type Drawing that implments a set RenderedCurve objects dynamically according to the BoundingBox object.

A URL is different though. A URL is more analagous to a phone number and (appropriately so) an address. It is something that doesn't make sense and it not easy to use, but it obviously useful and worthwhile to learn. A little known shortcut is hitting control enter after typing a word in the location bar of a browser. This automatically fills in the http://www.{yourwordhere}.com, so you can get where you want faster. Most people I know don't use this shortcut because it is easy to type the protocol prefix and .com.

Considering usabilty is relative to learnability (the more you want or have to learn something the easier it is to use), this makes URLs an exceptional place to keep an interface. Users are OK with learning it and in fact have been trained to see the value in knowing URLs. Developers already have a good deal of practice using the URL with things like GET values and URL schemes to get information from the user. Putting it all together the URL becomes a powerful, platform neutral, software independent, interface for all accessors of the system.

In Bright Content I started working on things by adding Routes but I realize now that it is not necessary because of Paste URL Map. The URL Map gives me just enough granularity to keep my URL design simple and succinct without forcing me to use a system for general use. Routes is really great for a framework but since Bright Content is not a framework, there is no need to create a generic URL parsing mechanism. In fact, I think it might be more important not to have something like Routes because it forces one to consider how URLs are used simply because there is more to type! I'm sure at some point there will be a generic URL parsing tool of some kind but only as far as it enables simpler creation of URLs that help the users and the developers.

Posted Tue Dec 26 17:33:48 2006 by Eric Larson
Created using Python, jQuery and Emacs