Tuesday, June 15, 2010

Is flexibility enemy of standardization ?

I was thinking about evolution of java & open source world. What comes to my mind is the flexibility it offers to build your own stack of tools & technology when you start a project, cool!!! isn't it. You could explore, develop, cutting edge, unknown, unnamed open source project in your project....

But software is not about using cool technology all the time, isn't it ?
  1. What about skill set to manage and maintain it ?
  2. What about support for the technology and open source used ?
  3. What about wear and tear of changes happens over the life cycle ?
I tend to feel too much of flexibility leads to problems, which are unnoticed during the architecture and development of the project and get's uncovered during maintenance phase. Same application developed in .net takes lesser effort than java, what do you think is the reason ? Why every java projects are different by technology rather than business ? Is this the price to pay, to use an open platform independent languages & specifications ?

Architects come up with cool stuff, believe me it's the least used feature in the actual project. To sum it up, flexibility to choose the specification, implementation, technology, open source, commercial blah blah!!! leads to problems in later stages of the project, which very few people have stayed long enough to see them.
It's also important to consider other aspects like skill set, proven architecture, standardization, support and etc in a software architecture than just being cool......

After all this is my blog, and i am bored of being cool :) ...

4 comments:

Mani Doraisamy said...

Senthil,
I think there 2 perspectives to this:
1) When a new technology introduced there will be lot of innovation. As it starting maturing, standardization evolves. Patrick gave a very good metaphor of sea surfing at Google DevFest:
http://pcquest.ciol.com/content/techtrends/2010/210040101.asp
What you might be seeing could be the foam layer - i.e. technology innovation phase.
2) Invariably, democracy has more opinions and distractions than dictatorship. Varied opinions might reduce consensus and ability to move faster. That is the cost of avoiding unilateral decision mistakes. You will see the same between Open (i.e. Standardization) Vs Closed softwares.

thanks,
mani

Senthil Balakrishnan said...

Good you understood my direction in the post, which wasn't very explicit. Nice pcquest article, thanks for sharing it.

I liked the way you put it "Democracy has more opinions and distractions than dictatorship" & "That's the cost of avoiding unilateral decision mistakes".

Newton said...

Is it flexibility or technology growth? Even before an technology comes to an mature level the IT industry moves forward to evolve new technology and new set of jargons. May be they are trying to keep Software market thriving ;)

Apparently business wont be able to catch up IT or is it the other way around? (its the same, which came first is it the chicken or egg?)

That keeps me wondering are you talking about technology in IT or in Business?

Senthil Balakrishnan said...

I don't see a reason for Technology existence, if it's not for enabling a business.

But you are right, business cannot change so fast to catchup technology. But if that's what the business needed it would eventually do.