InfoQ

News

Interview: IBM CTO Jerry Cuomo on REST & Project Zero

Posted by Floyd Marinescu on Jan 21, 2008 02:53 PM

Community
Java,
SOA
Topics
REST ,
Scripting ,
Web 2.0
Tags
Groovy ,
PHP ,
IBM ,
Mashups
As covered on InfoQ before, Project Zero introduces a scripting (Groovy or PHP) based development environment for quickly creating, assembling and running RESTful applications, typically by mashing up existing data sources on the internet.  Project Zero is being developed under an open development (but not open source) model, a first for IBM, as is the emphasis on the RESTful side of SOA & dynamic languages a first class development tool. InfoQ interviewed IBM CTO Jerry Cuomo about IBM's view of REST and also more about the vision for Project Zero.

Watch Jerry Cuomo on REST & Project Zero (32:48)

In the interview Jerry comments that while Java likely has "perhaps another good ten years" of life in her, in Zero they have given Java a promotion: "Java is the system programming language now. Java is how you would implement some of the subtleties of ProjectZero, but your first experience and we hope the source of a lot of your agility is dynamic scripting", in Groovy or PHP (some tutorials have been published showing how to use Ruby as well).

On developing with Zero, Jerry commented:
Project Zero is built around SOA architecture where that architecture is a RESTful architecture. We've constrained and simplified around this notion of REST. In Project Zero you basically have HTTP. When you express a service in Zero you typically express it in a RESTful form or in some derivation of REST. We can express it as an RSS feed, or an ATOM feed; but the web is the primary platform that we build with Zero and REST is the style of service interaction that we built around Project Zero...either programmatically through scripts, PHP or Groovy, or through a set of visual editors that we have, allow you to create new applications around the web-based web-oriented services that you've just created or exposed. Or maybe reusing from other sources like from web at large or your enterprise...it's most useful when you try and get something done quickly and the data is out there."
On REST itself, Jerry spoke at length, including this quote:
The nice part about REST is that it's like the air that we breathe. It's all built around the web and the web is all around us. That translates into all sorts of interesting things: skills, infrastructure- these things are just there. To be able to talk about a SOA model against the things you already have is very compelling. We can get you doing SOA very quickly and as you graduate you will start to need some of the things around WS* for sure, but this gives you a starting point. Now how we interpret the 80-20 rule, is this 20% of the things that 80% of the people are doing?   A wide variety of mission critical things can be expressed through REST. That's what excites us and that's the connection between SOA. REST too is an architectural style built around the notion of loose-coupling. If you look at how an Ajax application through JavaScript invokes services through HTTP over the internet; that's a great example of a loosely-coupled built system so I'm very excited when I talk about Ajax based architectures as an example of SOA. These things whether you're an enterprise person or not, you can get your head around that and you can start to understand the subtleties of SOA through REST.
Asked about cloud computing Jerry discussed it from the perspective of increasing amounts of data on the web.  "We are encouraging enterprises to expose their content whether it's behind the firewall or in front of their firewall in that fashion too, because now that is liberating the data."  Jerry saw this as a wonderful disruptive change that will allow the building of new interesting applications around this data, making connections between data that may not have been obvious before.

Jerry confirmed that IBM is not backing away from the WS-* stack, but that REST will be making its way into IBM's product strategy going forward, giving the example of integrating with a message queue via REST: We have capabilities in the latest release of MQ to expose MQ capabilities through REST. For the first time now you don't need the MQ client to drive work into MQ. If you want to post a message on a queue all you need is a web environment whether it is a Javascript app that can POST up through REST, a message or a PHP, a Zero app. You can now interact with MQ through REST. If you want to inspect the contents of your queue the same thing; there's a REST interface for that. "   REST will be part of all of IBM's product set in future in a similar manner.  This definitely brings us closer to the view of having a programmable web.

Related Sponsor

SOAsocial is a social networking site where you can track socially relevant activities in the SOA community and also participate in polls and other applications.

No comments

Reply

Exclusive Content

Ruby.rewrite(Ruby)

In this RubyFringe talk, Reginald Braithwaite writes Ruby code to read, write, and rewrite Ruby. Demos include extending Ruby with conditional expressions, call-by-name and more.

Book Except and Interview : Aptana RadRails, An IDE for Rails Development

Aptana RadRails: An IDE for Rails Development by Javier Ramírez discusses the latest Aptana RadRails IDE, a development environment for creating Ruby on Rails applications.

Fast Bytecodes for Funny Languages

Cliff Click discusses how to optimize generated bytecode for running on the JVM. Click analyzes and reports on several JVM languages and shows several places where they could increase performance.

Scott Ambler On Agile’s Present and Future

Scott Ambler, Practice Lead for Agile Development at IBM, speaks on the current status of the Agile community and practices having a look at the perspective of the Agile’s future.

Manager's Introduction to Test-Driven Development

Dave Nicolette and Karl Scotland try to introduce non-technical managers to one of the most popular Agile development techniques: Test-Driven Development (TDD).

Structured Event Streaming with Smooks

Smooks is best known for its transformation capabilities, but in this article Tom Fennelly describes how you can also use it for structured event streaming.

How to Work With Business Leaders to Manage Architectural Change

Successful architectures evolve over time to meet changing business requirements. Luke Hohmann presents how to collaborate with key members of your business to manage architectural changes.

Colors and the UI

In this article, Dr. Tobias Komischke explains how colors used in a GUI can influence our interaction with a computer and offers advice on using the appropriate colors for the interface.