Sunday, March 26, 2006

Bobby Woolf is on a roll...

Loads of interesting articles have popped up over at Bobby Woolf's blog of late. Particularly like his coverage of various messaging patterns.

I haven't had a chance to read his comments yet so don't know if this has come up but, just in case, this is a good time to remind everyone that a messaging system doesn't always guarantee to deliver messages in order. If your application makes the assumption that the messages will be delivered in order, it is probably broken.

Graphene

Last week's Economist had a fascinating piece about "Graphene".

I thought it was a fairly run-of-the-mill article until it mentioned that the material allows both quantum and relativistic effects to be demonstrated. All on a desktop....

Friday, March 17, 2006

I happen to like elephants

Well, I like baby elephants. I think they're sweet. See:



Anyway, Phil Gilbert (discovered via Tom Baeyens at JBoss) makes a ferocious attack on BPEL. It's a well-written article that makes some good points.

His argument is clever so it's easy to miss the gaping hole in the floor (perhaps the elephant crashed through the floorboards under the weight of its own metaphor). However, there is a hole in his argument and it's important to discuss it.

Firstly, few could argue that he is making some good points: the "version 1" versus "version n" problem is a real one, for example. I also like his implied analogy between Java bytecode for a JVM and BPEL for a BPM-execution-engine.

However, "Business Process Management" does not equal "Modeling for Execution" and it is very important to separate these two concepts.

When you develop UML diagrams in the fashion Phil describes, you are explicitly modeling a future computer program. By contrast, the outcome of a business process modeling exercise does not have to be a running, automated, version of the process. A good Business Process Modeling tool provides value independently of other components in your stack. A classic example is the kind of project that models an existing process, performs analyses and simulations, recommends improvements to the process, analyses the proposals and which leads to a successful change in the way the organisation operates. There is no need for a runtime to be involved at all. There is no parallel I can think of between this kind of BPM project and a project in the application development space that UML dominates so successfully.

Of course, at the other end of the spectrum, a BPM solution could be implemented entirely inside a single runtime environment (an example would perhaps be a bank loan application process). In such a case, a 1-1 correspondence between the model and the runtime is, of course, highly desirable. Indeed, there is a case to be made that a suitably augmented BPEL development tool would be the right place to perform the work.

In the middle lies the most common case: a "to-be" model includes portions that will live inside a BPM execution engine, parts that are purely manual, parts that are performed by third-parties and parts that are implemented in other systems.

It goes without saying that this case is the hard one. Some parts of the model need to be made executable. Some parts need to be turned into staff manuals. Some parts need to be used as input to an application development exercise. And the whole thing needs to stay in sync. Nobody said this would be easy.

Given this bigger picture, I think he may be clouding the landscape somewhat by focussing his fire on BPEL.

Where are our elder statesmen?

I ventured to the Institute of Economic Affairs yesterday evening to attend a panel discussion titled "Were 364 Economists All Wrong?". I must confess that the level of the debate was far deeper than I anticipated and I found it hard to follow one or two of the arguments. However, the topic itself was easy enough: the British government, in 1981, implemented a number of economic policies that a large number of academic economists strongly disagreed with. They wrote a letter to The Times saying as much and predicted disaster.

Implicit to the title of the discussion was the claim that disaster did not occur - and the question was: does this mean those economists were wrong?

There was a lot of talk of monetarism, measures of money supply, the technical definition of a depression and more. All good stuff. The reasoned, polite debate was enjoyable and it was refreshing, as it always is, to hear those at the top of their profession confess to doubts in their understanding of their specialism. Honesty is good.

One aspect of the debate stood out, however. Here, in one room, were more old men than I had seen since High Table at college. These were people who had been (or were) senior economic advisers to the treasury, the heads of various banks. Several of them were easily in their eighties. They had vast experience and accumulated knowledge and they were treated as experts to be listened to and to learn from.

As I looked around, I tried to imagine what the equivalent would be in the IT industry. We have a most unpleasant habit of regarding anybody over the age of 35 as past it. If you're still working on new technology (rather than supporting the old stuff) at the age of fifty then you must be doing something pretty remarkable.

Perhaps my sample was biased by the large number of academics present (there certainly seems to be a free flow between academia and policymaking/advising) but I'm not so sure it was significant.

I think there really is a difference in the demographics of the two professions. The question is: how much of this is due to the much younger age of our industry and how much is intrinsic to our work? If the latter dominates then I'd better have a plan for my middle-age if I don't want to starve when I'm 60.

Thursday, March 16, 2006

ESB: The Oracle has spoken

Thanks to Andy for pointing me at this article on ESB topologies by Chris Nott and Marcia Stockton.

I first worked with Chris a few years ago on a Proof of Concept for a healthcare provider in the South of England and knew immediately that we'd be hearing a lot from him in the future. I am privileged to count him as one of my mentors and I never cease to be impressed by the depth of his thinking. If that wasn't reason enough to read this article, the fact that it namechecks Marc-Thomas Schmidt, Paul Verschueren and Rick Robinson - some of our top architects in this space - should be all the convincing you need.

I give in. Andy: teach me about tagging

I just about get the concept of tagging content on sites such as Flickr. It amazes me that the system doesn't get abused in the same way that website meta tags did in the dark days before Google made our lives worth living. However, it does seem to work so I'm prepared to agree there is value. I guess the incentive structure may be different (i.e. there's no value in driving inappropriate traffic to your images whereas there is a lot of value in driving traffic to an otherwise worthless website that is full of ads, etc).

Taking this a step further, I can see some merit in adding tags to a blog post to let search engines know what it's about. I suppose the likes of del.icio.us may go further in helping *other people* add tags to my content. Fine. Seems like a reasonable idea (although I still don't see how it's protected from abuse).

So the question is: how do I tag my content? Can I tag links that I put into my blog? Or do I need to use some other tool?

Andy... help!

Wednesday, March 15, 2006

The risks of medical testing

I was listening to The Today Programme this morning (I know... it's a bad habit I need to get out of... how can I claim to be economically literate and still listen to that drivel?) and heard a story about some patients who had suffered a nasty reaction to a first stage drug trial. It seems they're more seriously ill than I first realised.

Of course, the whole purpose of these early trials is to screen for serious side effects before rolling out tests to more people but I suspect even the chemists were taken aback by this reaction.

The terrible situation happens just as a movement known as "Pro-Test" is gaining traction. I have been following their progress with interest (having always been too cowardly to confront the activists on Oxford Street myself).

From my perspective, today's event shows just how important animal testing is (think of all the drugs that are rejected before the human stage) but it does also show that the debate is not as clear-cut as those of us who favour science would like to admit: just as adverse animal reactions can lead to promising human drugs being derailed, promising animal results can lead to tragic results when tested on humans.

I wish the patients a full and speedy recovery.

Tuesday, March 14, 2006

Alphablox... wow!

I've been learning about Alphablox today.

It has been a fascinating day on two counts.

Firstly, it's been my first chance in ages to study some database concepts. The whole world of OLAP was a mystery to me until today... star schema, cubes, snowflakes.... it all sounded very pretty in a geometric sort of way but I had no real understanding of what it was all about until now. In preparing this posting, I found this discussion (courtesy of Wikipedia); wish I'd read it this morning :-)

Secondly, I had no idea we had bought such a cool product. I (and the rest of the room) sat in open-jawed amazement as one of the instructors took some relational data and created - in less than a minute - a web application that graphically sliced, diced, aggregated and analysed the data in real time

IBM makes a lot of acquisitions. Sometimes it's not immediately obvious to me why we've done it. Alphablox is not one of those cases.

Even better, it is a core part of WebSphere Business Monitor. A part, I'm sorry to say, I had previously tried to hide from. No longer; I can see why they put it in and now know what questions I need to ask to make it useful.

If you know what's good for yourself, don't get ill

I knew things were bad in the NHS right now (for my non-British readers, the NHS is the publicly funded and publicly provided health care system we have in the UK). However, I didn't realise we were treating our old people quite this badly :-(

[UPDATE: 20060314] I should have added a warning: I suggest you read the full article when you're not eating.

Monday, March 13, 2006

Be afraid

It's bad enough that they bred. Now they're trying to evolve. Before even my song and podcast collection is dry on my replacement iPod, they release THIS. I'm happy with them breeding and a bit of evolution is OK. But let's hope this is the end of it. Opposable thumbs really would be too much.

Now, the problem is this: I'm in Hursley tomorrow (to learn all about AlphaBlox) so I'll be commuting for almost four hours, there and back. Unfortunately, I haven't even started this week's Economist, I have a pile of email to reply to, more unread RSS items than I care to admit to and I'm only halfway through this strangely fascinating PodCast about the Economics of Virtual Worlds. I say "strangely" because I have zero interest in gaming.

I thought I had this "information backlog" problem solved earlier today when I tried reading last week's Economist obituary and listening to the "virtual worlds" PodCast at the same time. Sadly, I failed after a minute or two. Intriguingly, I was managing quite well until then but then the difficulty of concentrating on two verbal stimulants at once proved too much. Shame.

Sunday, March 12, 2006

Design Patterns for Modern Life

For reasons that are not totally clear to me, my postings on the optimal way to walk around corners and where to stand to board a train for quick disembarkation have attracted more interest than my musings on Service Oriented Architectures. It's most perplexing. Nevertheless, there's clearly a market for it. So (with a hat tip to Lee for the name), I present: Design Patterns for Modern Life!

Thursday, March 09, 2006

Blodget is dangerously compelling

I wish I had even 10% of Henry Blodget's talent. He's been posting about Google repeatedly of late and every single post he makes is a lesson in financial writing. He has a style that not only makes you believe you understand everything he's talking about but makes you believe that any other interpretation must obviously be wrong.

An extraordinarily talented gentleman.

Wednesday, March 08, 2006

Sound Advice

Bill Higgins offers some good career advice.

I particularly like his "work with smart people" rule. It's sometimes difficult to follow that mantra in my role as I work on a lot of different projects over a year and rarely get time to spend a lot of quality time with the people I'd like to. However, Scoble offers a neat workaround in this post: reading smart people's blogs makes you smarter :-)

Oh. So *that's* what it's all about!

I was recently involved in a somewhat lengthy discussion in the comments of my colleague Bobby Woolf's blog. I was trying to understand the ideas behind "REST". I'm not sure why I didn't just turn to wikipedia. Anyhow, their definition is actually quite good. I think I understand this a bit better now.

Good blogging platforms

I have no reasons to complain about Blogger. I'm, mercifully, free of comment spam and I have no complaints about their reliability, etc.

However, they get a lot of bad press. I'm assuming this means that those who have tried other platforms have found them superior.

I am about to start up a couple of other blogs - one to capture my deep insights into efficient commuting and one to allow me to speak more freely about politics - and so this is a good time to consider my choice of platform.

Thoughts?

Friday, March 03, 2006

The Impatient Commuter's Guide to Tube Optimisation (part two of an occasional series)

There are so many great opimisation techniques if your journey begins or ends at Tottenham Court Road tube station that it's hard to know where to begin.

For the sake of brevity, I will restrict myself to techniques that work on the Central Line and will offer only two techniques.

Technique One

Observe that the best platform exit when alighting from westbound trains is at the very end of the station - near the back of the train. Accordingly, one should travel in the last carriage.

Technique Two

When beginning a Central Line journey at Tottenham Court Road, regular passengers will have noticed the excessive distance one must walk. Moreover, you must sidestep a busker at the end of a particularly long corridor. There is a better way, Ladies and Gentlemen.

Specifically, when on the last long walk to the Central Line platforms, observe that your journey takes you through a circular chamber. Upon leaving this chamber, the path ahead is split into two: you will be encouraged to walk on the left, to leave space for those leaving a train to walk on the right.

Don't be fooled!

Observe the diagram below: if you follow the signs you will be forced to walk along a long corridor before passing the busker, and finally getting onto the platform halfway along.

You should, instead, ignore the signs, and follow the rightmost path. Provided you choose your timing correctly (fighting against the disembarking passengers would not be an enjoyable experience), you can get onto the platform at least twenty seconds quicker than everyone else. You win again!

Image hosting by Photobucket

Other blogs I read (part 1 of many)

My RSS reader is broken down into various categories ("friends", "enemiescompetitors", "economics and politics", "IT industry", "London" and so on).

Here are some of my favourite "London" feeds....

Going Underground's Blog. This, and the somewhat more hyperactive Londonist blog are just full of interesting news articles, rumours and ideas for things to do about town. If you were wondering why all the chocolate machines on the tube were out of order or why there's an erratic red line of paint running from the river to near Euston, these are the places to find out.

The SE1 blog does what it says on the tin. My London office is in SE1 and it's an area I pass through regularly.

The Criminal Solicitor, Policeman, Magistrate, Tube station manager and Paramedic are well known but still worth reading.... it's great to get an insight into other people's lives.



However, I do have some sympathy with Stephen O'Grady's plea here. So, in the spirit of posting links to good content and not just entire blogs, I offer this solitary link. It answers the question of why the choccy machines are turned off. Who'd have thought it?


What other blogs do I read?

I received an email from Fabrice Yans earlier this week asking about an article I had written on IBM developerWorks. He has an interesting blog that covers SCA and WebSphere Process Server.

I don't maintain a table of links on my blog (I never look at anybody else's blogrolls so just assumed nobody would look at mine). However, as I spot interesting new blogs I guess I really should be letting all my other wonderful readers (all seven of them....) know about them. Watch this space.

Thursday, March 02, 2006

Welcome to 1999

I am taking a break from client engagements this week and investing in some education: I am learning about IBM's WebSphere Business Modeler (sic) product.

I must admit to having been somewhat cynical at the start of the week. I approached this class from the perspective of a middleware consultant rather than as a business analyst and that was my mistake. This was a course that showed how we could use the tool to help clients understand the problems in their business and understand how to solve them. The simulation and analytic capabilities in Modeler are astonishing.

However, that is not the purpose of this post. Rather, the purpose of this post was to point out that I have been staying in the "Holiday Inn Eastleigh" for a couple of days - since commuting to and from IBM Hursley from London every day for a week was too much. The hotel is nice - indeed, I've just had a most agreeable meal with two good friends - but... wait for it..... there is no wireless or broadband internet access anywhere in the hotel.

No. That was not a typing mistake; I'll repeat it in case you missed it. In 2006, the owners of Holiday Inn somehow believe it is acceptable to sell hotel rooms where the only access to the internet is via an analogue telephone (at 28 kbps!!!).

I will, of course, never stay here again until they get their act together but it did teach me a valuable lesson: one should not assume that such facilities will be available when booking a hotel.

Investment Update

I've been somewhat erratic in my investment updates of late.

In brief, Premium Bonds have been disappointing: my return after six months is 1%.

However, my investments in equities have been somewhat more successful: I am about 18% up on August 2005. Hurrah!

Friday, February 24, 2006

The Impatient Commuter's Guide to DLR Optimisation (part one of an occasional series)

My esteemed colleague Ben Thompson remarked in the comments to this posting that my blog lacks a visual aspect.

I think he makes a fair point.

Therefore, this article is brought to you through the magic of PowerPoint.

I am sure many of my readers often ask themselves: "Where should I stand on platform 9 of Bank station to ensure I will leave the train as close as possible to the exit at Westferry station"? Those readers should fret no longer for the answer is this:

Assuming you are entering platform 9 from the Bank side (rather than the end nearest Monument station), you should walk along the platform as far as the overhead matrix display. At this point you will have gone too far. Turn around. You will see a shiny line on the ground running from near the information desk to the platform edge. This is the Marker of Magnificence. Stand on it and use the door that appears immediately in front of you when the train arrives.

Walk to the opposite set of doors and occupy the corner space (so that you don't block passengers getting on and off at Limehouse).

Thus:

Image hosting by Photobucket

Upon arrival at Westferry, use the door opener to your side, exit the train and scurry straight on to beat the other passengers who are heading to the exit that you have just arrived at. You should arrive there before everyone else. Ha! You win again.

Image hosting by Photobucket

Being the first passenger off the train, you have no slow-coaches ahead of you and so can descend the staircase at a pace that suits you. Truly you are a premier passenger.

Ben: Happy now?

Going to the movies on a Monday afternoon

For reasons I don't fullly understand, RSS Bandit insists on dumping "Fast Company" feeds in my "tecosystems" subscription. Most odd.

Either way, it has the beneficial effect of forcing me to read the occasional Fast Company article.

This is a fantastic first line for an article: "People who have learned to answer email on Sunday evenings also need to learn how to go to the movies on Monday afternoons"

Anybody flying between London and Manchester soon?

If so, take a look at this..... nice free train journey offer: http://forums.moneysavingexpert.com/showthread.html?p=1607521#post1607521

DB2 sucks

Not really, of course.... But I figured every time this blog posting appears in a google search, someone else's doesn't.

Stephen O'Grady at RedMonk linked to this post about one user's attempts to install a trial version of IBM's DB2.

It's worth reading in its entirety. He begins by describing in excruciating - and depressing - detail the problems he hit when he tried to get a trial download of the product to install on his UNIX box.

The thing that struck me was that it was yet another example of how a user's first experience of a product or service is of paramount importance. In my time at IBM I've been impressed at how far the development teams have come in this area. In my area of specialism, the installers for products like WebSphere MQ are fabulous. You immediately feel confident that the install will be easy and that you will do it right.

Posts like this one, however, remind me that one should never get complacent... there will always be an issue you didn't forsee. So it's gratifying that there was such a great support structure in place for him to turn to. I've worked with DB2 product support in the past on various client problems and have also been impressed by their abilities.... nice to see them get some recognition.

It's a pity that a couple of (actually very minor) gotchas made the experience harder than it should have been but I'm glad he took the time to get resolution and, importantly, to share that for others to benefit from.


[UPDATE 2006-05-24 11:20] A colleague (thanks Axel!) has pointed me to this detailed article on some of the cool stuff in DB2 8.2.

Thursday, February 23, 2006

For your messaging people out there...

.... my colleagues Andy Piper and Ben Thompson (update your blog so I can credibly link to it!!) have also been published on developerWorks today. Ben and Andy are probably two of the deepest WebSphere Message Broker experts in the world. I always sit next to them when I go to Hursley so that I can stay current on that product by osmosis.

Hello to my readers from developerWorks

If you're reading this post thanks to my recent article on developerWorks, welcome to Gendal World!

I've been involved with IBM's WebSphere Process Server product for well over a year now - having worked closely with the development labs prior to release, consulted on some of our first engagements, contributed to our education materials and written various articles. One of the areas I focussed on was how to build applications that are robust against change. I recorded a PodCast on this last year.

If you're looking for more posts I've made about Process Server and related technologies, you might want to start with this Google Search which pulls up a lot of the articles.

Wednesday, February 22, 2006

It's OK to admit two words are synonyms

I hope I'm not about to expose my ignorance of the space in which I specialise.... but I'll take the risk. I'm going to admit that I don't know the difference between "orchestration", "workflow" and "choreography". There. I said it.

Actually, I'm not being entirely honest. It's not that I don't know the difference; I just don't think there is any difference.

I freely interchange these words when I talk to clients and I make no apology for it. I've seen no attempt to differentiate the terms that resonates with me and, until I do, I'll carry on doing what I'm doing. As far as I'm concerned, the concepts of orchestration, process choreography and workflow are the same thing.

You can try to tell me that it's all to do with granularity or that it's all to do with the life-time of a process or it's all to do with whether humans are involved or not. I don't care. I'm going to stick my fingers in my ears and yell "La La La! I can't hear you!"

Sure... different runtimes may be optimised for different kinds of scenarios (a BPEL execution environment may not be the place you transform 1000 messages per second as they flow between two systems across MQ) but that's orthogonal.

So, it was with highly sceptical eyes I read this post by Polar Lake's Warren Buckley. Warren appears to be their new blogger-in-chief after the departure of the impressive Ronan Bradley. He tries to differentiate "choreography" and "orchestration". I think he's guilty of verbal gymnastics that would shame a politician but don't let that distract you from his point. His discussion of Control Theory is most interesting. I *think* he's describing the same kind of thing we talk about with our WebSphere Process Integration story but I need to think some more about it. Either way, it was an interesting post.

So, hello, Warren. I look forward to reading more of what you write :-)

Tuesday, February 21, 2006

All Change!

Everybody's getting new jobs!

So... Rich Turner at Microsoft... good luck in the new InfoCard role.

And... Ronan Bradley of PolarLake... good luck in your new role too.

What with RedMonk hiring a new guy (hello!) and my favourite editor moving on to new pastures, you could be forgiven for believing the world wasn't static, after all. Who'd have thought it?

Monday, February 20, 2006

Pragmatism is a beautiful thing

I've been having an interesting (but ultimately unresolved) debate on the comments of my colleague Bobby Woolf's blog. I was trying better to understand the differences between REST and SOAP. I now realise that, although I thought I wasn't, I was actually conflating several themes. Thanks to this post by Don Box for helping me to cut through a lot of the debate.

Saturday, February 18, 2006

Verdana is taking over the world

I've long had a vague feeling that all the "Web 2.0" websites I've viewed have looked the same.

I thought it might be due to the current fashion of making use of lots of white space and bold graphics.

But no.... they just all use Verdana. Every single one of them.

Examples:

Skype
Haloscan
Technorati

It was therefore heartening to discover the Service Component Architecture Portal (thanks for Jeff Schneider for pointing me to it in the comments of this post)

This website also uses Verdana gratuitously. Since I have established that Verdana = Web 2.0 = cool, I think we have conclusive proof that SCA is cool. Excellent.

As for the content... well, I have better things to do on a Saturday night than read it... that will be a task for the week. But it does have some interestingly titled articles. ServiceComponent.com could turn into a very valuable resource.

Monday, February 13, 2006

We need some better FLAs!

Having exhausted the world of Three Letter Acronyms some time in the last millennium, the IT industry is currently working its way through the four-letter type.

The TLA crusades are over. TCP beat SNA.... The HDD outlived the FDD.... The discerning traveller will even agree that LCY is better than LHR.... But the four letter wars have barely begun....

I've been debating the nature of SOAP and REST with some commenters on Bobby Woolf's excellent blog. I'm still trying to get my head around the subtleties; I'd certainly appreciate other contributions to the debate (from either "side"). However, something tells me that, in the end, REST just sounds cooler.

Naming matters :-p

XMS

Microsoft's Omri Gazitt mentioned IBM's XMS technology recently on his blog. He argues, correctly, that interoperability between messaging systems is A Good Thing. However, as I posted in his comments, I think XMS is trying to solve a subtly different problem.

Either way, it's good to see that XMS is getting noticed; it deserves wide adoption.








Saturday, February 11, 2006

How to avoid crashing into strangers without slowing down

When not visiting clients, I tend to work in IBM's office in Central London. The office is very near to one of London's busiest commuter stations so I find myself travelling in the opposite direction to most other commuters: I am using the London underground network to reach Waterloo station when most other workers are trying to leave Waterloo and vice versa.

This makes for a more relaxing journey (fewer people to compete with for space on the trains I use, etc, etc). But it does cause one problem when walking: there is almost always a wall of people hurtling towards me.

This problem is particularly acute near my home in Canary Wharf. There are lots of very modern office blocks in a regimented pattern, with blind corners.

This means that when I approach a blind corner I have to slow down to avoid the risk of bumping into the crowd coming the other way. This makes my life somewhat difficult as I don't "do" slow walking.

n the diagrams below, the blue blocks are buildings, I am the green path and the oncoming crowd is in black.

The first diagram below shows the problem: blind corner and oncoming crowd.

The second diagram shows my solution. As I approach a blind corner, I change direction and walk across the potentially oncoming crowd. If no crowd materialises, I am not really worse off. But if there is a crowd, I am walking perpendicularly to it and so have several precious milliseconds to find a gap between people to dart into.

This increases the distance I walk but means I have no need to slow down. Excellent!



Image hosting by Photobucket

Wednesday, February 08, 2006

Is polling always evil?

Microsoft's wonderful Raymond Chen discussed the evils of polling a few weeks back. He is, of course, correct that it's usually a bad idea. My rule of thumb when considering such scenarios is that if something intuitively feels wrong then it usually is. And polling feels wrong.

However, I think it's possible to be too disdainful of polling. In particular, I am increasingly of the opinion that it can be used in judiciously-chosen scenarios to help build significantly more robust systems than would otherwise be possible.

The example I have is from the Enterprise Application Integration world. Assume we have a monolithic application which is supporting some business function.

For whatever reason, we need to know when various tasks have been performed ("new customer record created", "purchase order modified", etc). When such an event occurs, we need to send the information to some other system. This is the bread-and-butter of integration. Call it EAI, BI, ESB, whatever.

Now, how do we detect such events? There are two broad approaches. We can configure the source application to notify the integration layer when something of interest has happened (e.g. by sending an event into the bus, by calling a web service, by placing a message on a queue... whatever). Or we can configure the integration layer to somehow detect the event.

The latter is most often achieved by configuring the source application to record than an event has occurred (e.g. in one of its database tables) and for the integration layer to periodically check this event store. i.e. we configure the integration layer to poll.

Who, in their right mind, would ever regard the latter as a reasonable approach?

Well..... me, quite often. And here's why.

The former approach has plenty of advantages: real-time notification of an event, no polling, the event flow is clear, etc, etc. But... it also has two potential drawbacks. The first is that the source application has to be configured to talk to the integration layer. In most cases this is no trouble at all but in some situations (especially with older, bespoke software) it is quite difficult. Worse, this approach has added a dependency to the source application. It now requires the correct functioning of (part of) the integration layer - or must have sophisticated error handling added to deal with the times when the integration layer is unavailable. So, high availability scenarios have been complicated. Considerations such as these can make achieving buy-in from application owners to an integration project much harder.

The polling scenario has plenty of obvious disadvantages (polling can be costly, polling can introduce latency, etc, etc). But it has a very nice advantage: we have added no dependency to the source system; it can generate events that the wider scenario requires without complicating its own operations. This is since the integration infrastructure (perhaps in the form of an adapter) is making a call to the application, rather than listening for a call from the application.

My view is that polling can often be considered a transitionary state: get a project working and demonstrate value to the business sponsors and the application owners. Once the integration infrastructure has been proved (and has been shown to have higher reliability than the applications with which it integrates!), resistance to modifying the applications to call the integration layer often evaporates. Polling performs a valuable role in allowing us to get to that point and in solving problems where direct notification is unachievable.

So, no. Polling is not always evil. It is merely usually evil...

"The fear of getting it wrong was surpassed only by the fear of not delivering anything at all"

I overheard this comment on a train back into London a couple of evenings ago. Two young trainee lawyers were discussing their careers to date and comparing their workloads - and the high expectations that had been heaped upon their shoulders.

I tried to imagine the circumstances under which somebody in IT would find it credible to articulate a comparable fear. I'm not talking about the natural desire to do things right and to ensure one's deliverables are good quality. Rather, how often do we find ourselves in situations where our professional credibility, the wellbeing of our client (and our own chances of advancement) rest entirely on a single piece of work?

It's easy to think of examples in the "traditional" professions: if you put your name to a company's audited accounts, you'd better be sure they're correct. If you're playing with billions of dollars of your bank's own capital, you'd better be sure your trading strategy is sound. It's easy enough to think of examples from the worlds of medicine and law.

I'm interested in hearing my readers' thoughts on what the equivalents in IT are. I have a few ideas of my own but I was surprised at how few good ones I could think of. I'm hoping you can help me out. So, comments are open as always. I'm looking for examples from your IT career where the outcome of a single piece of work could have had truly serious effects had you got it wrong. "The patient either died or lived". "The defendent either went to prison for life or walked free". "The bank either went bust or made a fortune".... what do you think is the equivalent for a professional in IT?

Tuesday, February 07, 2006

Describing SOA with a famous brand of plastic building blocks

Jeff Schneider has a funny piece that puts SOA in an historical context.

Although the "famous brand of plastic building blocks" analogy is not new, it is very important. I get asked a lot why we need specifications such as the Service Component Architecture. "Why do we need another invocation mechanism?" The answer is that SCA isn't just an invocation mechanism. Rather, one of its key features is the ability to regard logical chunks in our infrastructure and applications as reusable building blocks. Blocks that both provide and consume other services. Jeff's piece illustrates that quite nicely.

Saturday, February 04, 2006

Scandinavian Airlines

Does anybody understand Scandinavian SAS airlines' business model? They introduced a two-tier economy cabin for short-haul flights a year or so ago and I remember thinking it odd at the time (mainly because I had been booked into the lower tier and so was forced to pay for my dinner). If I have understood the offering correctly, they have an economy fare which offers inflexible tickets and requires payment for onboard refreshments. Economy Flex provides flexible tickets and an onboard catering service. This is in addition to their business class.

When I first noticed this behaviour, I thought it was just SAS being quirky. However, I read a remark in their in-flight magazine yesterday that suggested it actually has a history going back to the late 70s and was part of a strategy to innovate in a regime of heavily regulated fares.

It's still all a bit odd, though.....

Business-integration, Business-partners and Bandy

I have just spent an exhausting week in Stockholm discussing how WebSphere Process Server can solve some pressing concerns at one of our business partners. My time was split between teaching our standard introductory class and discussing specific problems they were trying to solve. It was a tremendously rewarding week: the pressing problems they had made them attentive students and they were extraordinarily talented.

Not only did they have to listen to my descriptions of a new technology and relate it to their existing technologies in real time, they had to do it in English (my Swedish skills being somewhat weak...).

However, an attentive, question-filled class is a demanding class and I was thoroughly exhausted every evening.

I did manage to take time out on Thursday evening. My colleague (who organised the class) took me to see a game of "Bandy". Those who know me well will know quite how low my interest in sport is but I'm always willng to try something once. Unless that "thing" is a roller-coaster that goes upside down but that's just good sense: if we were intended to travel upside down, our pockets would not be open at the top.

Bandy seems to be a cross between ice hockey and football. The game we saw was Sweden vs Norway and it attracted a good crowd. I'd recommend any visitors to a Bandy-playing nation take the opportunity to see a game.... just make sure you wrap up warm. Spectating is not an endeavour for the inadequately clothed.