Saturday, May 29, 2010

Kolkata Traffic

My goodness... I've died and gone to traffic hell.
Or maybe not.

Traffic in Kolkata is something that I am at a loss to adequately describe.  So many cars.  So few lane markers, and those lane markers that there are seem to be completely optional.  Pure, utter, hot, humid chaos:


Every vehicle, except the one that I am in (as a passenger, I'm not crazy enough to even try to drive here) is packed to the gills with commuters:

Folks are hanging on for dear life, and everywhere that you look there are signs that cars and buses don't always play nice with each other:
But somehow, perhaps through the graces of India's 35,000 gods, it all seems to work.

Traffic actually flows.

There is no gridlock.

People actually get where they need to go, and my guess is that they actually get to and from their homes to their work just as fast or faster than commuters in any other large city.

What's going on here?  It certainly looks chaotic, and it certainly sounds chaotic. Many large trucks have "HONK!" painted on them to encourage those in their blind spots... but it seems that Kolkata drivers need no encouragement to use their horns.  It's a constant din of beeps and honks.

The answer is the Kolkata drivers themselves.  They weave and accelerate and honk as if they were born to do so.  Watching them maneuver in mass is reminiscent of watching a stream of ants make their way through the jungle.  No regimented spacing for these drivers.  No set lanes.  No regulated speeds.  Just the inherent instinct to go forward persistently, pausing only for those who would otherwise hit you.

It works.  Lord help me, but it works.

Friday, May 21, 2010

A Tale of Two Open BPM Approaches

BonitaSoft and Activiti are great examples of the two (at least) basic ways that you can "solve" the BPM problem.

I characterize "The BPM Problem" as the following:
A bunch of things have to be performed by a bunch of people in the right order and in the right amount of time... or all hell will break loose.
After the folks have finished - We need to know who did what and how long it took them to do it - in the hope that we can learn something useful that will help them do it better next time.
Perhaps not a very precise definition, but I think that it nicely sums up all of the things that a BPM suite has to accomplish.

BontiaSoft and Activiti both solve the BPM problem, but in diametrically opposite ways.  BonitaSoft is a "one stop BPM shop" approach - Activiti is an "embed BPM in your solution" approach.  Let's delve a little deeper and see which approach is "best"...

Of course the answer is - It depends on who you are.

If you are in a Professional Services Organization, like I am, then the BonitaSoft approach is probably better for you.  Every day you deal with clients whose primary need is to connect a bunch of things together in order to carry out a Business Critical Process.

If you are in a Custom Application Development Organization, like I used to be, then Activiti's approach is probably better for you.  Every day you work on a very complex application, and aspects of that application have to deal with the BPM problem.

Unfortunately things are never that simple...  It's very common for us Professional Services folks to find a need to incorporate a Custom Application with embedded BPM into our more widely scoped Business Critical Process...  And that's where Federated BPM really becomes necessary.

I hope that BonitaSoft and Activiti are listening...  You will both "hit the ball out of the park" if you implement common Process Manager APIs.

Let's say that I need to integrate Alfresco, with it's embedded Actviti BPM, into a wider scoped Business Critical Process that I am implementing with BonitaSoft...  My end users want to know what's going on...  they want to know exactly where everything is and exactly what's left to be done (like a UPS tracking screen).  To meet my users' needs, a single "Process Status Dashboard" and a single "Process Task List" needs to federate everything that the BonitaSoft Process Manager "knows" with everything that the Activiti Process Manager "knows".

Pull that off, and you'll make a whole lot of Professional Services and Custom Application Developers happy.

Open BPM is alive and well

I am delighted that Tom Baeyens has roared back in the Open BPM spotlight with the announcement of a new Open BPM effort called Activiti.

Tom did a great job engineering jBPM, but frankly those folks over at Red Hat didn't appreciate what they had.  Red Hat (and JBoss before them) didn't properly market jBPM, so it never gained the market adoption that the technical merits of the product warranted - and the end result was a respected but not truly game changing product.

With the recent (and not so recent) assimilation of the pure-play-for-profit BPM suites like Lombardi (where I work), Savvion and Fuego there was a general feeling that BPM's "Wild Wild West" days were behind it, and the likes of IBM (where I work) and Oracle were the only ones left standing.

Activiti's launch suggests otherwise.  Coupled with the strong new Open BPM offering from BonitaSoft, Tom and his Open BPM colleagues are reminding us that passionate people still matter more than deep pockets.  BPM may no longer be in its infancy, but the dream of BPM has not yet been realized, and dreamers like Tom still have a huge role to play.

Best wishes on your new endeavor Tom.

Wednesday, May 12, 2010

Lifting the 3rd world through distributed IT opportunities

I'm on assignment in Kolkata (Calcutta) India this month, and I was delighted to see Bill Gates' picture on the front page of India's Economic Times.


The article relates how Bill had spent the night in a hut in a remote Indian village to get a real feeling for how the masses of underclass Indians spend each day.  On emerging, Bill was quoted as saying that he will put his muscle behind transforming the village into another IT hub... That's fantastic.

I have to speculate that this isn't what Bill really meant.  India doesn't need more IT Hubs.  India needs more good jobs in every village.  Building more Hubs will build more Kolkota's, and from what little I have seen it appears to me that living as a poor person in Kolkata is much, much worse of a life than living as a poor person in a rural Indian village.

I think what Bill really intends is to help improve the communication and power infrastructure in India, so that an IT worker can work from any Indian village.  That would distribute the high-skill and high paying jobs across the sub-continent, which would generate much better service industry jobs everywhere.  No more mega-cities like Kolkata with the problems of mega-cities - Instead a distributed model of employment opportunities that will really transform India and inspire us all.

Of course I have no idea if this is what Bill is really planning, but I sure hope it is.