"incoherent things"

2008-08-08 @ 20:06#

during a thread on the REST-discuss forum today, Bill de hÓra said (in part):

You can have a design that allows you say incoherent things and result in bugs, like having a overly finegrained programming API where users can call methods out of order. Without the constraints in place, you need lots of discipline win, or heaven forbid, governance. What's most interesting to me is that I think many programmers in the field prefer RPC or REST-RPC hybrids.

and that's a big deal, really.

in my experience, most developers have a bias for RPC. that's mostly 'cuz we've had that pattern drummed into us form almost 'day one.' but this preference for "RPC or REST-RPC hybrids" that Bill talks about is more than habit, imho. it's also a bias of perspective. devs love to 'program' stuff. and that happens when we start thinking about the Internet, too.

what i see often is the attempt to expose the same method->class->library->application pattern on the whole Internet and that leads to big trouble. instead, i try to think about exposing resources for folks to interact with. and that's it.

don't write programs.

don't write workflows or wizards or processes.

expose resouces.

Expose them and they will come.