Hi Everyone!
It's been a while since I've posted, but after some news I heard last week I thought I'd inject a bit of geek into templatedata and share it with you.
In a nutshell, the news is this. Real mashups are now possible, and easy. And if we take advantage properly, and early, then we've got the potential to add some really useful functions to our websites.
Some might remember my post a while back, where I mentioned how one of the real promises of AJAX was a way to truly seperate presentation and data. The data would get to the client (via a REST service, RSS feed or similar), and the client would present it in whatever weird and wonderful ways the desinger saw fit. The data could come from anywhere, the presentation provided by anyone. This concept has been sucinctly coined and widley publicised by the term 'mashup'.
To me, I think mashups are an exciting concept to a diverse and distributed organisation like ours. We have huge amounts of data about more or less everything sitting around. Mashups promise a mechanism to combine it and share it. A university department, for example, might take a feed of relevant news items from our news and events portal rather than set up their own news service. A research cluster might take a feed of publications of it's members generated by the research office. Provided that departments are willing to expose their data, other groups can take and re-present it in all kinds of weird and wonderful ways.
Best of all, since everything is in javascript it should be possible to do this without any fancy server-side programming.
So why hasn't this happened yet? Well, there was (of course) a snag. A security feature of Ajax (or more specifically XMLHttpRequest) called the same origin policy prevents applications on one domain from fetching data from another. So http://www.depaertment.usyd.edu.au can't fetch feeds of data from http://news.usyd.edu.au or anywhere else.
Many ways and means have been found around this, cross site scripting and reverse proxying to name a couple. Or people went back to using server side code to handle the mashups (which avoids the security restriction). But getting these set up is technically cumbersome and often unsafe. In a University like ours, where website owners and data producers don't often have a lot of control of the hosting environment such solutions are particularly unsuitable. And so without an easy sharing mechanism lot of steam was taken of the whole mashup concept.
Last week though, those folks at Google changed all that. Google announced the AJAX feed API. In a nutshell, the API allows a way of getting around the ajax security feature by proxying it through google. So now any client side code can share data from any RSS or Atom feed.
Like the flickr photostream I've stuck in this blog post...
Loading...
So, start getting excited about this stuff. It could really work for you. If you're a developer, start thinking about dusting off tthose RSS generation libraries and start building feeds into your app if you've got knowledge to share. If it's suitable for a website then it's suitable for a feed. If you're building a website, next time you see an RSS feed, think how you could use it in your next web site.