Starting next week, I will be joining the Runscope team. Runscope provides tools that help developers debug, test and monitor Web APIs. This is a company that lives and breathes HTTP. If you know me, I’m sure you understand why that appeals to me. Although I have been building distributed business applications for more than 20 years, […]
Consider your application has feature A and feature B, and in order to implement each of these features you need to invoke functions X, Y, Z: The gods of DRY would proclaim that you should create a new function to encapsulate the behaviour of X,Y,Z. However, I would argue that unless that group of functions […]
There have been a number of attempts to define a maturity model for building RESTful services. The idea of the maturity model is that is gives an indication how closely the service complies with the constraints of REST and hopefully demonstrates the trade offs to be expected when choosing to not follow a particular constraint. One area […]
Rob Conery asked for some feedback on an API he has been building for Tekpub. I know that Rob asked for URLs, and URLs he shall get, but I like to get a better understanding of the relationships between my resources before I start minting URLs for my service. On a number of occasions I […]
It appears I need to go on vacation more often. I seem to get more chance to experiment. One of my first discussions about RACK was with Mike Kelly where he suggested a simple solution to implementing HEAD across an API. Simply use a RACK application to convert a HEAD request to a GET and then when […]
If you were at my talk at devlabmtl I would like to thank you for coming. I hope you found it useful. In the talk I made reference to a bunch of resources and I just wanted to provide you with some links. Hypermedia Application Language (hal) http://restafari.blogspot.com/2010/10/evolving-hal.html Mike Amundsen’s site that contains a whole lot of insight […]
Back from RESTfest, tired but happy. Three days of intense conversations, debate, opinions and presentations. It was an amazing opportunity to learn from everyone. We all got a chance to present as you can see by the 26 videos we broadcast. Unfortunately, due to my videoing inexperience and our low tech approach, many of the […]
This is a continuation of a series on a Rest Agent library I am building for accessing REST apis. The first post is here and and the second is here. So far the only significant operation that we enabled our RestAgent to perform is NavigateTo(). However, for a RestAgent on a mission, going places is only half the […]
As I alluded to in my first post, REST clients really should be driven by hypermedia. So how can our RestAgent class access this hypermedia and its links. Ideally, given a single root URI, I would like to be able to do: Before I talk about the magic that is going on under the covers here, […]