JavaOne 2009

Last Thursday I received this notification from Sun regarding a JavaOne technical session proposal:

Congratulations! Your submission entitled ‘RESTful Protocol Buffers’ has been accepted by the JavaOne[sm] Conference Program Committee as an ALTERNATE session for the 2009 JavaOne conference in San Francisco, California, June 2-5, 2009.

As an alternate speaker, your badge will allow you full access to the Conference sessions, BOFs, Hands-On Labs, and the Pavilion.

It is really exciting that I might be called upon to present again. Last year I learned a lot about how to prepare a technical session, and Complex Event Processing at Orbitz was very well received.

Here is the abstract for our proposed presentation:

At Orbitz, Jini has served us well, but at the cost of tight coupling due in part to shared code and Java serialization rules. In order to improve agility, we are migrating to a RESTful web services architecture using Protocol Buffers to define message formats. The result is loosely coupled services with autonomous life cycles supporting evolvability and innovative mashup-style development.

This session is intended for experienced architects and tech leads that are familiar with distributed systems and data encoding methods.

What you will get from this session:

– using document schemas to constitute language neutral contracts

– using standard HTTP plumbing and intermediaries

– implementing a reverse proxy for request routing based on RESTful URLs

Thanks, Mike! I talked to my manager at Orbitz about this before I left, and he was very gracious in dealing with the situation (Alex and I submitted the proposal before I resigned). We’re still working out the details on both sides, but in principle the idea is that Orbitz Worldwide and Sears Holdings would co-present if we are called up as alternates.

As you might recall, my former manager still uses sed and awk to process plain text files containing notes on his employees, so you aren’t far off. 🙂

This is further evidence that Orbitz is a great company… it certainly wasn’t an easy decision to change jobs. I simply felt that after 8 years I was ready for something different.

@Brian, Orbitz created a reverse proxy that sits behind the load balancer and handles service registration and routing based on the URL’s first path element. It could easily be enhanced to manage OLAs as well. I’ll probably post another entry to explain all of that in detail sometime later… or maybe I could just point you to the source if Orbitz open sources the Erlang/OTP app that I mention in my latest post? (nudge, nudge)