Rainy days and Java always get me down

I've Moved My Blog

It's currently located at http://www.urlinone.com/blog

I should say "I'm moving my blog." It's a pretty painful process.

Pebble has blown up on me, and it's been many months since I've been able to blog reliably. I've lost posts. And now I've got to figure out how to migrate my past blog posts from Pebble to my new destination without all the URLs changing, lest external links become 404 Not Founds.

Why does everything in the 21st century have to be a three-day project???

Having dubbed this blog "JCranky," I can certainly sympathize with Andrew's rant. However, as a drinker and provider of SOA-flavored Kool-Aid™ for one of the top ESB vendors, I feel compelled to defend my wares and the substantial technology behind them. Here are a few things to keep in mind that may be less than obvious to the casual observer.

  1. Don't confuse SOA with Web Services. They are absolutely not the same thing. You can write horrible, tightly-coupled spaghetti code using Web Services. Conversely, you can create a beautiful, loosely-coupled SOA implementation without ever calling or exposing a single web service. The key to SOA is the architecture, not the use of web services. Service Oriented Architecture and Web Services are related in the same way that Java and JavaScript are. Just because you can do a substring() and find a word in common, that doesn't make the two equivalent.
  2. SOA doesn't have to be expensive or painful. The big challenge is that it requires a change in thinking on the part of your architects and engineers. The principles of SOA seem obvious and intuitive, but once you start working in that mode, you find yourself trying to map the new ways to the old ways and getting a little lost in between. (I'm old enough to have made the transition from procedural coding to OOP. I remember feeling lost for about a year, as I struggled to rewire my brain to think in the new paradigm. For me, SOA demanded a comparable transition. Interestingly, OOP and SOA require a similar initial investment and offer a similar downstream ROI. You might even say that SOA is the next quantum level of OOP... Then again, you might not.)
  3. SOA is about loose coupling and abstraction of coarse-grained services, so RPC is quite far from a panacea. In fact, it's more like the same old thing. To create truly reusable services, you need to think more along the lines of document-oriented messaging. In the SOAP world, you'll find more agility and tolerance for change when web services are doc/literal rather than rpc/literal. RPC is not much more than running the same old functions on another machine. This does not constitute SOA. Do not confuse calling a publicly-exposed function with creating a service-oriented architecture.
  4. I have no issue with Andrew's comments about IBM Global Services. ;-)

I'm not picking on Andrew. In this sea of TLAs and daily "Next Big Things," I certainly feel his pain. But there are legitimate advantages here, and, like it or not, we're all going to be forced to deal with SOA in the near future. We might as well have a better understanding of what it is -- and maybe even a little appreciation. It's a pretty elegant, robust architecture with tangible benefits. So says the guy high on the Kool-Aid™.

My opinions do not necessarily reflect those of my employer, my colleagues, or my superiors (of which there are many). Nothing in this blog is sanctioned, approved, or reviewed by anyone. Not even me.

Add a comment

HTML : b, i, blockquote, br, p, pre, a href="", ul, ol, li
E-mail address
Remember me Yes  No 

E-mail addresses are not publicly displayed, so please only leave your e-mail address if you would like to be notified when new comments are added to this blog entry (you can opt-out later).

TrackBack to http://www.leegrey.com/hmm/addTrackBack.action?entry=1136932087829