InfoQ

Interview

   Good News: We have re-worked our video infrastructure to provide more reliable service. Please email bugs at infoq.com with any problems.

CORBA Guru Steve Vinoski on REST, Web Services, and Erlang

Interview with Steve Vinoski by Stefan Tilkov on Feb 26, 2008 11:03 AM

Community
SOA
Topics
WS Standards,
Programming
Tags
CORBA,
Erlang,
WSDL,
REST,
Languages
Summary
In this interview, recorded at QCon San Francisco 2007, CORBA Guru Steve Vinoski talks to Stefan Tilkov about his appreciation for REST, occasions when he would still use CORBA and the role of description languages for distributed systems. Other topics covered include the benefits of knowing many programming languages, and the usefulness of of Erlang to build distributed systems.

Bio
Steve Vinoski is a member of technical staff at Verivue, a startup in Westford, MA, USA. Recognized as one of the world's leading experts on CORBA, he was previously chief architect and Fellow at IONA Technologies for a decade, and prior to that held various software and hardware engineering positions at Hewlett-Packard, Apollo Computer, and Texas Instruments.
I'm here with Steve Vinoski, one of my childhood heroes. What are you up to these days?
Can you tell us if it's in any way related to middleware or some new kind of Distributed Objects?
One could say that maybe this is reflected in the statements on your blog, which is fortunately available again. You said some not too nice things about vendors, middleware, WS-* and ESBs. Can you elaborate a bit?
If you were now an architect in a large company faced with designing an architecture for a set of systems or a large distributed system, what would you chose?
So what would be the use cases where you'd use CORBA?
If we are to talk about one difference, one topic that comes up often in the discussions about REST is that there is no description, no contract apart from the one defined in the REST dissertation, which is the generic one. Don't you perceive this as a problem because CORBA is so strong in this regard with IDL? Is this something that's missing?
One of the main arguments I hear is that if you use a typical statically typed language like Java or C++ then from the code generation step what you get is type safety when you build up those objects that you exchange when you call those implementations. If you don't have a description language that can generate the code, you don't have your code completion in your IDE and all the stuff that we've gotten used to.
You spent quite some time discussing dynamic languages. Can you elaborate a little bit on that? I wouldn't have expected it from an old C++ programmer to suddenly switch to Ruby.
When you mentioned that instead of using CORBA you would now use REST, is the same true for the language thing as well? Would you now rather use Ruby or another dynamic language instead of C++ or Java?
You spent a lot of time playing with Erlang recently. I don't know whether playing is the right word, but I saw you implementing Tim Bray's Wide Finder. Can you give us a little background both on the Wide Finder idea in general and on your experience with Erlang?
Do you see this as something that will continue to happen, that languages become more powerful instead of a general purpose language with a huge set of libraries, tools or middle-ware that sits below it or adds to it? Is this a trend that languages include features that we expect to be in libraries?
Of all those languages that you mentioned which one would you recommend?
show all  show all

No comments

Reply

Exclusive Content

Business Natural Languages Development in Ruby

Jay Fields presents his concept of Business Natural Languages - a type of Domain Specific Languages geared towards being readable by domain experts.

Distributed Version Control Systems: A Not-So-Quick Guide Through

Adoption and interest for Distributed Version Control Systems is constantly rising. We will introduce the concept of DVCS and have a look at 3 actors in the area: git, Mercurial and Bazaar.

Segundo Velasquez and Agile as Seen Through the Customer's Eyes

Deborah Hartmann interviewed Segundo Velasquez about his experience as customer with an Agile team during the initial phase of software design of a product.

Fine Grained Versioning with ClickOnce

David Cooksey shows how to fine grained versioning to a ClickOnce deployment using an HttpHandler written with ASP.NET, making partial rollouts to a test audience much easier.

Implementing Manual Activities in Windows Workflow

Windows workflow (WF) is an excellent framework for implementing business processes, but lacks support for human activities. This article describes a completely generic approach for changing this.

Markus Voelter about Software Architecture Documentation

In this interview taken during OOPSLA 2007, Markus Voelter talks about the importance of documenting the software architecture, and gives some good and also bad examples on how it could be done.

Voca, UK's largest payment processing engine running Spring

William Soo and Meeraj Kunnumpurath discuss the Voca transaction processing system, architectural challenges and requirements, Voca's Spring/J2EE architecture, and the future SEPA architecture.

Patterns for securing architectures

Security is about trade-offs. Only a few have the expertise to design good security. This talk focuses on Security Patterns, such as Role-based Access Control, Single Access Point, and Front Door.