I will be giving the Friday night keynote at the RESTfest unconference in Greenville SC on September 14. The topic should come as no surprise to those who have read my (admittedly stale) entries over the past few years. There are still a couple of spots open if you'd like a weekend of REST-related discussion in a relaxed environment...
Linking Data and Actions on the Web
Everywhere we look, there's a REST API popping up. For better or worse, we have massive proliferation of Web APIs, and a reasonable bench of developers who know how to design a "good" RESTful API (whatever that means).
The next progression for REST practitioners, in my opinion, is to find ways to ease integration headaches. There's a hole that exists between a site exposing a new API for their startup, and a fully approved media type RFC. This is where a good idea, exposed by an API, transcends its origins but isn't quite at the scale that it can survive 38 draft rounds within the IETF. This is also the area where enterprise integration lies - systems of limited scale and scope that might be able to take advantage of the constraints and emergent properties that the REST style offers.
Two areas of development would be helpful: firstly, a general purpose data model and associated media types for the web. Given the evolution of the semantic web and linked data, this is a hot area of interest, but one fraught with difficulty bringing to the mainstream. Secondly, and less explored, are media types that encourage programming models to shift developer's habits away from remote procedure calls (RPCs). There are Web programming models to explore: today's predominant model being dynamic RPC, but also event-driven, data access (CRUD), and state machine processors. Ideally a Web programming model should avoid the pitfalls of orienting all "write-side" communication in terms of flat actions or generic CRUD actions, but rather should encourage exposing side-effect inducing actions as something that can be extended & shared across the web via hyperlinks and URIs. This talk will explore approaches to linked data and actions on the web, their tradeoffs, and their possible future.