Saturday, April 17, 2004

Jeff Schneider on the failure of UDDI

Jeff is looking for alternatives to UDDI.

I am a fully paid up UDDI heretic.

I'm not a great fan of the triangular relationship of producer, consumer and directory either. Here, I differ with Jeff.

In my RESTian conceptualisation of SOA I see no need to have run-time lookup capabilities of service information. Services have URIs and a uniform application interface. Everything else about the data slinging to and fro takes the form of good old natural language narrative backed up by document schemas and business rules.

In some perfect universe there is a declarative expression of all this but that same universe has HAL-compliant wristwatches. Its not this universe. While this universe catches up, I'm happy to go with what the technology can do and that is largely the XML parts and the HTTP parts that are well established.

I think we should build Web Services and SOA's now, without waiting until we can make them sentient :-)

My alternative to UDDI? Here is one sdec.reach.ie.

A SOAP Opera

Section 3 - home or office? - of A SOAP Opera has been posted.

In a Swiss army knife, sometimes all you see is the knife

Ted Neward makes an important point about IDLs and object-think. Even if an IDL does not *force* you to see the world in terms of objects, most programmers naturally gravitate that way because of (a) the object-soak they had in college/training and (b) the object-soak in their day to day programming tools.
The latter one is the most profound in my experience. This is linguistic determinism in the world of artifical languages.

My guess is that the only way to beat the linguistic determinism effect is to bake the distributed computing abstractions you want into the heart of the programming languages, programmers will use. In SOA, this will require key concepts like Service, Message, Contract, ReliableWrite, ReliableRead to become first class members of the native language's type/class system.

Yes, I realise that given the pervasiveness of object orientation in programming languages, this leads to "objects" for Service, Message, Contract etc. Thats okay I think - *as long* as (a) the exposed interface to a service is always RESTian and (b) Message exchange is always choreographed asynchronously and (c) typing is performed *late* e.g. Duck Typing.

In the first instance, we could add these concepts into a standard programming language via a pre-procesor (Zimmerframe moment : this is how C++ got started).
Eventually though, to fully realise RESTian SOA we need to get linguistic determinism working for us, not against us. To do that, we need to bake key SOA distributed computing concepts right into the language. In the case of the all important concept of dynamic typing, this means we need to take dynamic languages like Python, Ruby, Smalltalk as our starting point. We need to relegate the wilful act of compilation to a deployment-time optimization - not (as it currently is) a central tentet of the programming model.

Dilbert on the innovators dilemma

Dilbert captures the essence of the problem.

Thursday, April 15, 2004

Emacs in Mozilla

Thanks to the munificence of mozex my Mozilla Firefox browser can now fire up good old emacs when I "view source" and even more usefully, when I edit text areas. Fantastic.

What is google?

What does google actually do? What does the indespensibility of technologies like google tell us about how language works? How knowledge works? I have taken the liberty of putting some words into Bertrand Russell's mouth about that. Conversation with a Bertrand Russell chatterbot.

Wednesday, April 14, 2004

Tuesday, April 13, 2004

The PSB (Public Services Broker) and Service Oriented Architectures for eGovernment

I will be co-presenting a paper on Ireland's Public Services Broker (PSB) - a Service Oriented Architecture for eGovernment - at the Spring 2004 Government CIO Summit in Florida on May 17th.

Death by UML fever and data model denial

Death by UML fever is a very funny and poignant look at the worst excesses of UML. In an object world, I've seen every one of the maladies described in the article at some stage or another.
In a Web Services world in which Objects are not the primarly abstraction, I see a new UML fever. Lets call it "data model denial". A refusal to believe that the data model and operations on data models + data contracts (schemas) are the key abstraction in Web Services. I've seen guys run up and down the menu of UML diagram types trying to find ones that fits that world view. Its funny and sad to watch.
My favourite UML malady described is Gravitational Fever:

    "This fever causes delusions in those afflicted to believe that gravitational acceleration enables their UML artifact mass to have value. For those unfamiliar with Newton's second law of motion, those suffering with gravitational fever believe that the progress of software-engineering effort is directly proportional to the weight of the project's UML artifacts."

Be sure to read Grady Booch in the same issue.

Monday, April 12, 2004

Juliet Turner

I don't often stray from tech on this blog but discovering a new Joni Mitchellesque talent is a worthwhile exception to the rule. Juliet Turner is a diamond. Great lyrics sitting atop excellent music. I'm a sucker for poetic stories and Juliet's work is full of them. Think Joni Mitchell with sprinklings of Sinead O'Conner, Alanis Morisette and Delores O'Riordan.
Three hundred years ago, we would have called her An Ollamh or perhaps a Seanchai and we would have been in awe of her power to laud and to satirize in equal measure.
She sings with her Tir Chonaill accent fully intact which adds greatly to the effect of her voice. Its quintessentially Gaelic:

    We could buy a little vineyard, both get fat and brown.
    Open up a jazz cafe the seedy side of town.
    I'd have a belly full of children, you'd have a belly full of drink.
    We wouldn't have to give a damn what other people think.
Take the money and run. From the album Burn the black suit.


Identity of the mystery man revealed

I have received an e-mail from a perplexed peruser of these slides wishing to know who is the gent juxtaposed to Bertrand Russell on slide 10.
It is Saul Kripke, author of Naming and necessity.