A cute and surprisingly well-behaved discussion about my recent post on the plumbing wars.
(link) [del.icio.us/distobj]

As he promised yesterday, Clemens describes his RESTful extensions to WCF/Indigo in a most enjoyable article on his weblog.

I really liked his detailed comparison of the HTTP and SOAP (as-practiced) dispatching models, as well as that of RPC vs. uniform operations. While there were a few little things I disagreed with, they weren’t significant enough to warrant mention, so I won’t.

Unfortunately, I’m not a big fan of his extensions.

I think the mapping he lays out there is reasonable in cases where you’ve already got legacy code with legacy interfaces which need binding to the Web, because you can just annotate those existing interfaces with these extensions. But when you’re developing new code, what purpose do service-specific interfaces serve? Nobody’s invoking them, since they’re just invoking the HTTP methods. So why are they there? I think that can only serve to hide the resource-centric REST model away from developers, and make other tasks more difficult; for example, dealing with resource collections.

I think the general approach to Web based models should resemble HTTP Servlets. Not to suggest that Java, nor inheritance, nor any language-specific feature of Servlets themselves need be used. But instead, just to say that the logical model of a RESTful programming framework should be one which requires “objects” (or “services”, or whatever you want to call them) expose the uniform interface.

FWIW, the best (for my definition of “best” 8-) one I’ve seen so far – though I haven’t vetted it yet – is this nameless Ruby one which is, AIUI, proposed for use as a Rails extension.

“The traditional distributed computing guys, like myself, have difficulty adjusting to the difference that XML makes”. Amen to that.
(link) [del.icio.us/distobj]
“That smells like REST. I am sure Mark Baker will dig Indigo once he sees my set of ServiceModel extensions ;-)” Sounds sweet. It would be great to see Indigo fully embrace RESTful development. It might even make up for WebMethod 8-)
(link) [del.icio.us/distobj]

An interesting story about a guy who lost a lot of money because his DSL went down during an online poker game (due to a gunfight?!), and his “All in” message, sent while sitting on pocket aces, ended up not taking effect until a later game;

In discussing who to blame though, Mike Masnick of Techdirt suggested;

The guy, needless to say, is a bit pissed off. He wants to blame someone, but Qwest, the DSL provider isn’t taking responsibility (can you believe them?). The online poker site also said too bad. Obviously, he’s going after the wrong people. The person to blame is the “random” shooter who took out DSL in New Mexico.

It seems to me that this is a design flaw with the poker room software; that the messages sent from the client aren’t sufficiently self-descriptive. If the messages included an embedded “hand id”, identifying the particular hand of poker being played, then there’d be no problem as delayed messages would be ignored. Sue ’em, I say!

SOA = STD. Aha, just as I suspected!
(link) [del.icio.us/distobj]
“From my perspective, it is early binding that makes changing business rules a difficult and costly matter, and it is late binding that makes those changes nearly cost-free”. Amen to that. A nice find by Roy.
(link) [del.icio.us/distobj]
+1 !!
(link) [del.icio.us/distobj]
(Via Phil Windley) Sweet. The security implications are significant, and the use of Flash unfortunate, but this is very very cool … and, proving once again, that the Web is the place to be for innovations in large scale distributed computing.
(link) [del.icio.us/distobj]

Approaching 10 years ago (gasp!), a group of us on the distributed objects mailing list used to think ahead to what the world would look like once the “plumbing wars” were over; that is, once the planet agreed on an infrastructure which could facilitate ad-hoc, loosely coupled, machine-to-machine integration between untrusted parties over the Internet.

Thinking back on that just now, with nearly 10 years of additional experience under my belt, a couple of interesting observations can be made.

The first is that we all seemingly made this implicit assumption that the planet would just agree in unison; that something would be developed and everybody would instantly know that this was it, then immediately get to work on building the fun stuff on top.

The second observation is that back in 1996, this infrastructure of our dreams had already been deployed! It was, of course, the Web, right under our noses the whole time, and moreover, built atop a distributed object model. Oh, the irony!

Of course, it’s abundantly clear now that not only will everybody not agree in unison, but that a large chunk of the industry never even gave the Web serious consideration as such a platform.

Who knew?