Friday, October 13, 2006

Dave Stewart RIP

Sad news today. Dave Stewart, IT journo and blogger has passed away. Bernie has some words to say.
The photo on Bernie's site looks familiar. I think I was sitting just out of frame to the right.
Dave blogged the ups and downs of his treatment on his blog http://sciencefriction.typepad.com/science_friction.

Few things in cyberspace are more poignant than a personal blog that...ends.

Tuesday, October 10, 2006

If we can not assign a URI to an idea, we must pass over it in silence

Ideas DO Have URIs [via Mark Baker].
With apologies to LVW.

All joking aside, there is an important point here. Analytic philosophy has long had a fascination with the nouns of human languages. Given a noun, it is a very short hop to a URI. But what about all the other things that make up language? Are they not ideas too? Verbs are the obvious next component to look at. In RESTian design, a fixed set of verbs is used. In order to achieve the required outcomes, an infinite universe of nouns in the application is manipulated so that the fixed set of verbs available can achieve the required outcomes.

One thinks of J. J. Austin's "Doing Things with Words".

If I want to "pronounce you man and wife" I can have a URI of the form [person/married_to] and use PUT or I can have an object of the form [person] and invoke the marry() or the set_married() method.

One approach manipulates noun-space to meet a linguistic need, the other manipulates verb-space to meet a linguistic need. As language-wielding entities, the latter feels intuitive when the idea we want to express maps easily onto the verbs we have in our host language. The trouble starts when you step beyond performative ideas that have atomic, verbal representations in your host language.

As a RESTian, I would argue that natural language has a big lesson to teach us. You can do a heck of a lot - without inventing anything new in the language - given a small let of verbs and an open-ended space in which to craft your nouns.

It is how natural languages work after all. If we don't have a verb for something, we can make one up. If we don't have a noun for something, we can make one up.

In computing, the verbs (loosely) map onto algorithms and the nouns map (loosely) on to persistent storage. If you make up new verbs you have to change algorithms - software. If you make up nouns, you just change the persistent storage space.

The latter is a whole lot most cost effective than the former.

So REST wins. QED.

:-)

To print or not to print, that is the question

    In my ideal world, every web page would be a true web page optimized for online reading. In the top right hand corner of each of these web pages would be a PDF button that would generate, on the fly, a serif font PDF for the current page or the current group of pages. -- To print or not to print, that is the question