Tag Archives: restful

everything with a webui should publish rss

RSS is far from dead – it’s ubiquitous.

What astonishes me, though, is that not all applications that have a WebUI don’t publish feeds via RSS (or Atom – same difference).

OpenNMS and Nagios (via a plugin) will push alerts via RSS – which is fantastic: there’s no reason everyone shouldn’t be able to filter what alerts they look at. I’m sure some other tools will do this, too.

But why don’t all WebUI-based applications support updates and content via RSS? Several of the applications I routinely work with have no possibility of getting data out with an industry-standard format – they use custom APIs (APIs are excellent – and RESTful ones are better, but they’re no RSS).

What benefits could come from every webapp being RSS-enabled? I can think of a few right-off:

  • quick user-by-user customization of content viewing
  • user-preferred interface for content viewing
  • lighter-weight interface for app access
  • quick flexibility

Is you’re developing a webapp, or you’re giving an app a WebUI – make sure you give the ability to get information out via RSS.

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.