REST, REST, everywhere

The last couple days I've seen a lot of stuff being published about REST style web services. Brent Simmons has another interesting post reflecting on the strengths of XML-RPC driven from his exploring the ATOM API. He's not sure about the real value of REST based approaches (more on this later).

XML.com has really jumped into the REST waters with several articles including a new column by Joe Gregorio dedicated to building REST based web services.

How to create a REST Protocol
How RESTful are popular web notification services
Using XSL-T as a consumer of RESTful XML web services

Of the three articles, the last one is by far the most interesting and goes straight to the heart of where the value of REST comes in. For people like Brent, who are working with traditional Object Oriented programming languages, XML-RPC style remote method calls just make sense. Unfortunately, to really get REST you need to step away from traditional code and look at the possibilities for more declarative systems. This is where the value of REST lies, your languages have to step up to a higher level of abstraction and this is exactly what's going to be necessary to build the next generation of internet applications. It's data oriented programming and the role of traditional languages will be pushed increasingly into the background. Obviously a tough sell to most programmers and that may be where the approach ultimately fails, but it's an idea whose time has come. The foundation is already there, we just need to not be afraid to step outside the comfortable environment of procedural and object oriented languages. LISP advocates have known this for, well ... we won't go there, but looking at LISP can definitely give you a better idea of what XML, XSL-T and REST web services are enabling in a distributed environment.

One more REST link, 0xDECAFBAD is looking at another perspective on how to use the same set of tools, but this time adding XmlHTTPRequest to bring the content onto the client.

Posted by Kimbro Staken

Thursday Dec 2, 2004 at 6:54 AM
Recommended Sites