2009-10-28

REST fan types

While looking up some information about REST and RESTful services I've encountered a pretty amusing forum post that defines REST fan type hierarchy. Let me share the smile:

API Makers: I find them everywhere. They have a system, usually not built thinking on REST, and they want an API created. They usually think REST is an API making technique or recipe, for the web.
 - URI Jugglers. This are the ones that think REST is all about creating URIs, and nothing more. So their discussions are solely focused on URIs, and their presentations are about URIs definitions.
 - RPCers. Bad group that think REST is a way to map RPC in disguise using URIs in a web API. The most of them don't know they speak RPC at all.
 - Exposers: This type is repeated below. Those are the guys that think you need to expose things in REST using resources. So REST is an API for exposing things on the web.
 - CRUDers: Another repeated group. They think REST is a web api for CRUD. Simple.

Mappers: This other category may use the API idea, but they actually thing REST is a representation type and the work to be done is to map all that is know used to that new type. Interesting?
 - CRUDers. Again, the idea is that CRUD can be mapped naturally to HTTP operations, and that makes it RESTful. 
 - HTTPers. They believe REST is HTTP. Deep enough.
 - Exposers. Again too. They usually try to map all classes, data entities, elements into resources, and then call their systems RESTful.

FAD followers: This is a group of the reminders of the types. Usually, they tend to follow a lead.
 - Standard Haters: Here you have all those that think Standards are evil and that REST is an anarchy where you have the freedom to do whatever you like, so they follow REST doing whatever they want.
 - KISS lovers: This are the ones that like thinks to be simple. And someone told them REST is easy, so they follow doing easy things with URIs. There are lots of URI jugglers in this group.
 - Servicers: They think Services is good, and someone told them REST is a way to do services without SOAP. So they follow.
 - BuzzWorders: This is a vast majority. They like buzz words, so they follow REST just because it is cool and all people talk about it. There are some Buzz creators too, with thinks like ROA and REST in WOA. No pun intended on REST-*.

That post has a missing type - the ones that properly understand and use REST. Perhaps there is no such group of people? And I guess the main reason for that is because REST is a style, not a standard. Yes, I am the Standard Hater. :)