This is a single archived entry from Stefan Tilkov’s blog. For more up-to-date content, check out my author page at INNOQ, which has more information about me and also contains a list of published talks, podcasts, and articles. Or you can check out the full archive.

Steve Vinoski's RPC Talk

Stefan Tilkov,

I actually think Steve Vinovski's slide deck from his QCon talk is way too wordy to be used in an actual presentation (in other words, Steve, the talk would probably be even more effective if you just used the titles and used the rest as notes). It's excellent for you, dear reader, if you weren't there :-)

I do actually have a real disagreement, though. Steve's research is sound (as always), but I stil think there are two aspects that merit distinct treatment: One is the idea of making a remote invocation look like a local one (bad, bad idea); the other one is to have a different interface for every specific occasion (another bad idea). I think even the most die-hard RPC fans now concede the first one is a failure; it's the second one that is still not widely accepted.

On March 18, 2009 11:30 PM, Steve Vinoski said:

Hi Stefan, thanks for the feedback. A couple things to note:

  1. I specifically wrote the slides to be read, not only to be presented, because I figure far more people see them after the conference than attend the talk. When I gave the talk, I didn’t read from the slides, but rather just talked about what was on them.
  2. I specifically chose to focus on the history of RPC rather than on all the problems with RPC, including the one you mention, because I think the issues are already more than adequately covered elsewhere. The text in the slides that mentions RPC problems is due to the coverage of those problems in the sources I cite, and from the fact that programming languages played such a key role in the evolution of RPC.

That said, I fully agree with you that the second issue you mention, while certainly not a new issue, is still not widely accepted as being a problem. The answer seems quite obvious to me, and became so when I first read Roy’s thesis, but I fear too many argue the issue without ever having read Roy’s thesis, or anything else on the topic for that matter. I’ve never met Roy in person but I feel like I owe him big time for helping put me on the right track.

All in all, getting the industry over the effects of the long history of language-first distributed systems development just isn’t going to be easy.

On March 19, 2009 9:43 AM, Matthias Bohlen said:

Stefan, what do you mean by “to have a different interface for every specific occasion”?

On March 19, 2009 9:44 PM, Stefan Tilkov said:

Matthias, I’m referring to the difference between a SOAP/WSDL style interface with specific methods for every service vs. the generic (uniform) REST interface.