antipaucity

fighting the lack of good ideas

restful webservices

My friend Steven recently wrote about linguistics in webservices.

In it he postulates that since all “good code” should resemble speech, webservices should use linguistically-tied approaches to their APIs. In short, it’s an article on RESTful websites being used in a linguistically-understandable way.

For example:

http://searchengine.com/search/keyword1/keyword2/not:keyword3

should run your query against the search engine, so you can always tell what it is doing, and how it works.

Personally, I think this is a great idea – it goes with the concept that all URIs should be truly “permanent”, and that the web should be understandable by mere mortals.

I am perennially surprised that companies use horrid URL formats when simple ones can be done. For example, WordPress uses a .htaccess file and Apache’s mod_rewrite to make URLs look nice.

Why can’t Newegg do the same? Surely “http://www.newegg.com/Product/ProductList.aspx?Submit=ENE&N=100019151%2050001707&IsNodeId=1&name=Activision&SpeTabStoreType=8” is not friendly to remember, or to query outside of the site itself. And that’s only a small example – the more filters added, the worse the URL becomes.

Then consider the URLs that get created when a site uses something like FeedBurner to handle its RSS feeds – heaven help you those URLs can look ugly!

Creating a RESTful approach is not all that difficult, and every web developer should be required to do it.