Last week I was getting ready to write up a memorial entry on December 7th, commemorating the Americans who died at Pearl Harbor, when a flashback carried me back to visiting Hawaii earlier this year, and looking around at Pearl Harbor itself at all of the Japanese tourists there and how the memorial must mean something entirely different to them. What, I can’t say, but I was struck by how many there were, almost all of them Japanese and American–very few Europeans, it seemed.
Which led me to an interesting spot; what would the reaction be, I wonder, if I were to have posted this:
I post this blog entry (on December 7th) in commemoration of the most successful surprise attack in the history of modern warfare. Never before and never since has one nation so utterly struck out of nowhere as did the brave Japanese warriors who decimated the American Pacific Fleet as it lay sleeping in its berth at Pearl Harbor. Banzai, brave warriors!
It’s just as valid a perspective on the date as any other, more "American" commemoration might be, yet clearly, because history is written by the victors, it will be in the significant minority.
The flashback carried me into an interesting line of thinking: to truly understand something, you must see from a different perspective. For example, for a Spring advocate to truly understand the foibles of EJB, I believe you must use it enough to argue its strengths, and for the EJB advocate to do the same to Spring, must do the same. For the Java developer to be able to criticize .NET, or vice versa, you have to argue for it (and implicitly against your favored position) in order to see how they see the world, and understand how the world looks to people from that perspective. What triggered the rant in the first place was the recent "Architecture of the World Wide Web" document–the Web services crowd, with its WSDL-first and (generally) RPC-oriented way of viewing the world (with all apologies to the brave few who are advocating the messaging-oriented religion), is going to essentially pooh-pooh the document as something that "may have worked then but won’t work now". And yet, I wonder, how many of those people out there building Web services ever gave REST a try?
Am I arguing that REST is "the way to go"? Perhaps, for some systems. Is the WS-* stack then the "right choice"? Again, perhaps, for some systems. But there’s clearly architectural principles in each that deserve recognition, and you’re never going to recognize them unless you try each approach and see what works and what doesn’t. Go on, give it a shot: use the other thing (be it REST, WS-*, .NET, Spring, EJB, Java, whatever) for a while. You might find you actually like it. 😉