Archive for the ‘Software’ Category

SOA based on WS-* is fundamentally flawed

Thursday, May 17th, 2007

All this while, I used to think SOA based on WS-* (see W3C and OASIS) would likely not scale because of the complexity involved in understanding and using the WS-* specs. Now I’m firmly convinced that SOA based on WS-* will never scale because the entire philosophy and thinking that is driving it is fundamentally flawed. Let me explain.

The idea behind SOA as a concept is loose-coupling, i.e. about a large body of applications that co-operate with each other to produce more powerful super-applications. If you look at the thinking driving SOA based on WS-*, it is all about tight-coupling, i.e. about a large body of applications that are extremely well co-ordinated to produce more powerful super-applications. Co-ordination instead of co-operation – therein lies the flawed thinking.

Co-operation is a notion that can be made to work on a large scale with few guiding principles/standards (the web is a wonderful example; others are the movie industry using DVDs, printer industry using letter size paper, etc). It is not easy to achieve, but it is feasible. Co-operation allows for individuality while enabling a shared goal to be achieved.

On the other hand, co-ordination on a large scale is practically impossible to achieve (an army like the US army, the New York Philharmonic Orchestra are some examples of co-ordination). Co-ordination demands extreme discipline and control. Individuals do not matter, only the common goal does.

Everything about SOA based on WS-* tries to achieve co-ordination (the specs themselves and all the grand talk about ESBs, governance, lifecycle management, meta data repositories, etc).

Co-ordination is extremely appealing because it promises ultimate efficiency. This is probably why enterprises are taken in by the SOA based on WS-* sell. With enough time, when it becomes apparent that they’re chasing a fallacy, people will come to their senses and do something much simpler to achieve co-operation that may be messy and not so efficient, but it sure as hell will work.

Silverlight – Not Impressed

Wednesday, May 2nd, 2007

Spent some time today downloading and trying out Microsoft’s Silverlight.

While the download and install was very impressive (2 MB), it seems like this thing has a very long way to go.

I was expecting to see more developer focused demos – could not find anything. Just a lot of chartware and some videos. Maybe a sign that Microsoft is trying to be a Media company more than a software company … The videos were of pretty poor quality and I had major issues with getting anything to even play without lots of long pauses. Looking at the list of tools required – seems pretty daunting. Almost everything has a fee associated with it.

I think I like Adobe’s Apollo platform much better at this point. The experience is much slicker, the development story is very clean and the desktop integration is powerful.

Ok, I dug around a bit more and I think I just found the developer site for Silverlight – there was an obscure little link from the main site. What is interesting is that this site renders broken in Firefox – oops!

Open Source : Spotting the fakes

Tuesday, May 1st, 2007

Given all the companies riding the open source bandwagon lately, I’ve developed some criteria for myself to tell apart the true open source projects from the fakes. Thought I’d share my thinking.

Community is pretty much the sole determining factor in how I feel about an open source project.

True open source projects in my world have a very diverse community of developers involved. I am not bothered if for-profit corporations are involved, as long as there are more than one of them involved and working alongside individual developers. At the end of the day, we all need to make a living …

Fake open source projects in my world have all the developers working for a single corporation. These developers pretty much call the shots – they may take input from outsiders and even release their source code under liberal license, but at the end of the day, one is pretty much at their mercy. Open source is just a honey trap for these companies.

Developing expertise with a complex code base takes a long time and a lot of skills; furthermore, smart developers do not want to waste time learning someone else’s code base, they want to vent their own creativity by building a great code base with others. Companies promoting sham open source projects know this fully well and therefore feel safe knowing there will be no serious challenges to their control – buyer beware!