[Image by RIA Novosti]
Brenda Michelson triggered me into a small conversation on pubsub - of course I did a quick search and analysis via my Twitter search tools and learned that it's been mentioned 91 times in the past week, the vast majority of which seem to be treating the word sub as in sandwich (colloquial American) - I guess that answers Brenda's question
Yet, I went to check out the state of (Information Technology) pubsub, an extremely well-proven mechanism in our daily world, aka IRL, where we all subscribe to ye olde snail mail (the post office) to retrieve anything that gets published towards us
Oh, is that not it? Maybe, maybe not - but let me explain why pubsub undeservedly is dead on Twitter
The wikipedia entry is telling:
In software architecture, Publish–subscribe is a messaging pattern where senders of messages, called publishers, do not program the messages to be sent directly to specific receivers, called subscribers. Instead, published messages are characterized into classes, without knowledge of what, if any, subscribers there may be. Similarly, subscribers express interest in one or more classes, and only receive messages that are of interest, without knowledge of what, if any, publishers there are
"characterized into classes" - I got lost there, did you? Maybe Oxford people will get that, but I don't.
"without knowledge of what, if any, subscribers there may be" - that doesn't sound right to me, and very much not business-like. Would you offer a service without even guessing how that would Return On Investment for you? If you do, the label "amateur" would suit you
The fact is, that the sensible publish-subscribe mechanism has been hijacked by script kiddies. Publish and subscribe has always been a human process, with which you're confronted every day. When you sign up for a service, you've learned now to read carefully the tick boxes. Of course you don't read the Terms of Agreement and just click them away, but you pay attention to the check boxes before and after that - I hope for the latter at least
The fake promises of the Semantic Web - oh hasn't that dropped yet these days? - spring to mind. And that is only natural. We live in an interconnected world. We are both individuals living our own lives, as well as employees within some company. We are consumers (unknown eaters) of some services, mostly offered through the web, as well as customers (known digesters, on record) of other services, mostly provided by old-fashioned companies (or new-fashioned, albeit a small part)
This is how pubsub works: I have a service that is hot, and there is a demand for it. I expose that service, which is a direct replication of my backend functionality, via different channels and in different syntactical forms, to those that want to absorb it.
Those who want it, get it, and create the conversion program needed to liase between that and their own backend services - technically, as well as functionally
So we have my backend, my service, and their backend. Ideally I expose my backend functionality into some industry standard like X12, EDIFACT, SWIFT/SEPA or HL7, or any other industry standard, but that only eases the pain of closing the gap between their back-end information systems and mine
This is how it works for enterprises - and pretty much everything else really. You adapt to something, offer service(s), and hope others adopt. Is that a technical issue? Hell no - it's a business issue
Pubsub is about business, not about tech - never has been, nor ever will. It only becomes a tech issue if you(r IT) implemented it badly