Fine, SOA may not be a City. What about a religion?

Rob Eamon has offered some compelling, well cited arguments (corrections?) in regards to a previous post of mine describing the image of SOA as a city/society that I selected from among various alternatives to use as a mental model. See the comments of that post for a full record of his take on things.

I can’t help but wonder, though, assuming his understanding is the original understanding, that the original “scope independent” definition he has laid out for the term SOA is mutating or fracturing into a different meaning, or more probably collection of meanings, as the concept is becoming more and more mainstream. Perhaps the mutation, if is real, is fueled by relative “laymen” from such out of the way places as the SMB (such as myself) as we attempt to understand SOA and become practitioners, which perhaps wasn’t common until more recently.

Or perhaps I say that entirely defensively, not wanting to believe I could have missed the mark by such a large margin.

In any case, I certainly have no other option than to concede that I was incorrect in my naive belief that I had found for myself a way of thinking about SOA that, at least in a purely conceptual fashion, could exist at an abstract level above all the tumultuous debate.

Perhaps believing in an image of SOA that encompasses all possible schools is as foolish as believing in an image of god that includes all other religions. I never get used to how much technology feels like religion to me at times.

Maybe things would be more straightforward for everyone if there were named schools of thought one could subscribe to, and then it wouldn’t be so tempting to say “This, well THIS is SOA, and that, well that is something that may resemble SOA(maybe), but in fact it is nothing of the sort.” Rather I could just say “I am a Soascopist” and you could say “I am a Soastylist” and, like religion, an argument about which is right would inevitably continue to rage. But, when the uninitiated like myself walk into a room of people shouting different definitions over each others heads, we would clearly know we needed to pick a school, learn the dogma and start shouting back, or we could state ourselves as agnostics, but we would be less inclined to try and synthesize the “truth” from all of the various contradictory opinions, which turns out to be a rather futile effort.

Then, when the holy war breaks out (and perhaps it already has), the SoaScopists, the SoaStylists and all other various sects of Soaists will take up arms together beneath a common standard and ally themselves against the RPCists. Gifted with superior agility, close strategic and financial alignment with the emperor, and extraordinarily loose coupling, the Soasists will relegate RPC to the level of an outcast technology, kept on life support on the outskirts of the kingdom via a flimsy service adapter, until some data center technician coldly pulls the plug, changes a value in a routing table, and the lights go out for good.

Of course, however it shakes out, we’ll still always prostate ourselves before the dollar, one way or another.

Amen.

(BTW, the holy war is just a joke, not my new personal metaphor for the relationship between SOA and RPC)

The .NET Framework Client Profile

is a trimmed down version of the .NET framework aimed at providing a leaner deployment package for systems that are just intended to run .NET client software. It ends up being around 23mb and should make it easier to deploy on the web to computers that might not have the latest version of .NET installed. Below is a link to a blog that has a link to a list of assemblies included in the profile :) 

POKE 53280,0: Pete Brown’s Blog : What’s in the .NET Framework Client Profile?

An Agile Approach to Software Specification

 

This came from the home page of some startup Jeff Atwood is launching, and I had to share it. I’ve had this feeling before.

Why Google Search deserves to rule the world

Here is the search text: Can a yahoo group be private

image  image

Framework Design Studio

This looks like a really interesting tool. Even though it has a fairly overambitious name, it looks like it provides some collaboration around a Reflector style interface that allows designers to collaborate on the design of an API, and monitor API changes over time.

Framework Design Studio Home Page

Extension Method internals - for Alex

Alex and I were pondering the nature of Extension Methods just the other day, so this is was well timed

How Extension Methods Work

When is someone going to set up our Extension Method library?

The first method that should go in there is this one: very clever idea, and needed it only moments ago. Nothing revolutionary, but he’s right - almost every time you need to use String.Format, it’s after you’re halfway through writing a string…

You get to do things like this:

“Some long string la la la ooh {0} really should be a template”.FormatWith(this);

 

Click Here for the implementation: Format As Extension method

Welcome to the HSI Developer Weblog

e_learning_write_64Please use this space to link to articles related to areas you are researching or currently working on, write up any particularly interesting aspects of the code you are using (a blog can be a place for documentation, too), or anything else that would be useful to share with the team or save for later. I recommend Windows Live Writer for interacting with this blog. It supports plugins and has a rich ecosystem, with plug ins for things like adding syntax highlighted code snippets, which will be important for a blog like this. I also recommend adding the RSS feed of this blog to your feed reader, if you have one, and get one if you don’t. I’m sure your favorite portal has a feed aggregation “Widget” which you can use in a pinch if you don’t use a dedicated feed reader (Such as the free Omea Pro, from JetBrains, highly recommended) or Outlook 2007 RSS Support. Please take the time to properly categorize/tag any posts you create for indexing. Also, let’s utilize the comment system to facilitate discussions on any posts that are place in this blog.

 

Let me know if you have any questions, comments or suggestions.

 

-Nathan