Close integrations of the third kind

By Sean McGrath, ITworld |  Opinion Add a new comment

Have you noticed that technology is getting quieter as the years go by?
As fax machines and analog modems head to the technology scrap heap, it
seems that technology-induced sound effects are disappearing too.
Silence is rife on the modern desktop. Do you remember the telltale
chirping of analog modems and fax machines[1] or the ominous
Solresolesque[2] plainsong of a Winchester hard disk[3]? I feel a bout
of aural nostalgia coming on.

Call me weird (you would not be the first), but I find the noises
created by an analog modem whilst negotiating a protocol with another
analog modem, both useful and comforting. It is useful noise in the
sense that the sounds provide better feedback as to what is really going
on than any amount of multicolored dialog boxes ever can. You can tell
instantly, for example, if your modem is struggling to get a dialog
going with the other modem. You can even tell (with a bit of experience)
what speed you have made the connection at, based on when the
negotiation stops and the true conversation flow starts.

I find the noises comforting in the sense that they seem so, well, so
very *human*. Whether we are conscious of it or not, a communication
algorithm is built into each and every one of us and it dictates how we
talk to each other. It goes like this:

(a) negotiate a communication language,
(b) if successful
(b1) start a conversation using that language,
otherwise
(b2) retry (a) until exasperated.

For example, you meet someone you do not know in some foreign place. You
need to find the nearest train station. How do you proceed? You first
ask (assuming English speaker) "Excuse me. Do you speak English?". If
you get back "Yes." then the negotiation phase is over and you can
safely proceed to the conversation. If you get back "?", you need to try
another route and so negotiation continues.

Another example, but this time at a higher level of language
negotiation. You are setting up a new relationship with a parts
supplier. You get on the phone. You explain "We like to place orders
every six weeks and take delivery within three working days of the
order.". Your supplier says "We can work with that but would prefer
monthly orders. We can promise two working day turnaround time on
those.". You say "Okay. Let's go with that.".

In this example, the lower level language - English in this case - is
already established. The negotiation is happening at a higher level but
takes the same basic form. You and your supplier are engaged in the
negotiation of a business language in order to proceed real
"conversation" in the form of value exchange between the two
enterprises.

The language negotiation process is so natural to us that business
people in my experience, simply assume that computers must talk[4] to
each other the same way we do (i.e. by first negotiating a language and
then starting a conversation in that language). Unfortunately, this is
not generally the case.

As a thought experiment, imagine if Web Services were like analog modems
and made noises when starting conversations. What sort of noise would
you hear? In my mind's-ear, I hear silence, followed by a loud banging
noise, followed by silence, followed by a loud banging noise.

The bouts of silence in the Web Service conversations occur when,
through sheer effort and dollar expenditure, the conversation language
is perfect from the get-go and requires no negotiation. Invokers of my
web service know *exactly* how I talk and I in turn, know exactly how
they talk. In geek-speak, we share a common service API. The banging
noises in my mind's-ear are the result of mismatches between service
APIs and the failure to communicate that this creates. There are no
noises between the extremes of silence and loud bang because, with few
exceptions, negotiating complex service APIs is simply beyond state of
the art[5].

Today, it is science fiction and it is to science fiction that we now
turn for a glimpse of how future "science fact" might follow current
"science fiction". Do you remember the scene in the film "Close
Encounters of the Third Kind"[6] when man negotiates a language with the
aliens in order to communicate using sound? When I first saw this scene
I immediately thought "modem protocol negotiation"! In my mind's ear, I
hear Web Services of the future doing something similar, not exchanging
musical notes, but exchanging XML schema fragments and machine-readable
SLAs to and fro to negotiate a language in which to communicate.

Although this is quite far away I suspect, we are seeing some trends
towards a language-centric view of enterprise application integration
that augur well.

To pick just two examples. The Duck Typing approach[7] to data
understanding is closer to the way we humans understand language.

    Add a comment

    Post a comment using one of these accounts
    Or join now
    At least 6 characters

    Note: Comment will appear soon after you have activated your account.
    Obscene/spam comments will be removed and accounts suspended.
    The information you submit is subject to our Privacy Policy and Terms of Service.

    ITworld LIVE

    Answers - Powered by ITworld

    Ask a question

    Ask a Question