InfoQ

InfoQ

News

My Bookmarks

Login or Register to enable bookmarks for unlimited time.

The content has been bookmarked!

There was an error bookmarking this content! Please retry.

Interview: IBM CTO Jerry Cuomo on REST & Project Zero

Posted by Floyd Marinescu on Jan 21, 2008

Sections
Architecture & Design,
Development,
Enterprise Architecture
Topics
Web 2.0 ,
SOA ,
Scripting ,
Java ,
REST
Tags
IBM ,
Groovy ,
PHP ,
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.
  • This article is part of a featured topic series on SOA

No comments

Watch Thread Reply

Educational Content

Attila Szegedi on JVM and GC Performance Tuning at Twitter

Attila Szegedi talks about performance tuning Java and Scala programs at Twitter: how to approach GC problems, the importance of asynchronous I/O, when to use MySQL/Cassandra/Redis, and much more.

10 tips on how to prevent business value risk

One category of risk that project teams need to ensure they address is business value failure – delivering a product that fails to provide value for the business investor.

Interview: Software Systems Architecture: Working With Stakeholders Using Viewpoints and Perspectives

InfoQ spoke to the authors of Software Systems Architecture on a couple of new topics, the System Context viewpoint and Agile, which have been added to the second edition.

Beauty Is in the Eye of the Beholder

Alex Papadimoulis discusses ugly code, where it comes from, how to avoid it, and how to get rid of it.

Architecting Visa for Massive Scale and Continuous Innovation

John Davies examines Visa’s architecture and shows how enterprises have architected complex integrations incorporating Hadoop, memcached, Ruby on Rails, and others to deliver innovative solutions.

Max Protect: Scalability and Caching at ESPN.com

Sean Comerford unveils ESPN.com’s architecture, what components are used and why, and the current changes the website goes through.

The Seven Deadly Sins of Enterprise Agile Adoption

Are there repeated patterns of failure on Enterprise Agile Enablement efforts? Sanjiv and Arlen discuss Seven Deadly Sins to avoid when adopting Agile in an enterprise.

Questions for an Enterprise Architect

Erik Dörnenburg answers: What is Enterprise and Evolutionary Architecture?, discussing 4 issues: Turning strategy into execution, Ensuring conformance, Where do the architects sit? Buying or building?