Sunday, December 03, 2006

Is Information Technology maturing?

Dec 1, 2 – 2006. I was at a Java Conference No; it was neither in the US nor at Europe. Guess what, it was in India at amacha pune. did a fantastic job of hosting a Java Conference for the population which today writes real java code for a lot of fortune 500 companies.

I was also impressed by the objective Harshad had out of the conference. He talked about the fact that although Indian IT industry is a strong force of lacks of IT professionals, we lag in developing world class products or very strong open source contribution. Its time the Indian IT industry and the developers to start taking this seriously and start innovating.

The two day sessions were fun. It included a lot of information, technology, frameworks and discussions. It was interesting to see people bashing and appraising every other technology very hour. If EJB 3.0 was a hit now, you might see someone really hitting it hard the next hour and pitching in for spring. The hour after that you find EJB 3.0 is back in the game… wow!

The session on the first day started with Raghu talking about “Integrating BPEL workflow and business rules”. This also showed Oracle’s SOA capabilities to some extent. Atul kahate explained Enterprise Java Security thereafter. Atul was really clear and simple in explaining basics of security. There was a surprise show by Janaki Ram from Microsoft following that. I must admit that Janaki did a good job of throwing enough light on the .NET 3.0 architecture and salient features in the 45 mins. allocated to him. The next session was from Ramesh. I admired ramesh’s frank thoughts about SOA and web 2.0. The stage was then taken over by Debu. Debu is a real fun to listen to and explained EJB 3.0’s power to the community. Peter demystified spring for us the next. He also showed the JTrac open source project he worked on which was among the top 100 downloads on sourgeforge. Following that there was again an interesting talk about “Apache Geronimo” server by Kishore. Finally the first day session was closed by Harshad showing the fancy power of Groovy and Grails.

The second day started with Hibernate Guru, Gavin talking about JBoss Seam framework and its advantages. Janak following the session explained about the Rich Internet Technologies and the methodologies to choose them. Gavin and Debu replied to queries regarding Java Persistent API. The session following that was by Sanjeeb who talked about the difference between J2EE and Java EE 5. He also showed a demonstration of Glassfish application server and developing and deploying applications over the same. Jitender Singh from persistent made a surprise entry replacing Jitendra to talk about ruby and rails. All in all the conference covered a whole gamut of technology, frameworks and servers.

There were many things that a lot of them talked about in the entire conference. However the one common thing that I could extract out other than all the good technical stuff was that the IT industry is now showing signs of maturity.

If we look at any traditional engineering stream they have a very strong engineering background. A 2-stroke engine for example is based on all the mechanical engineering fundamentals and the pipelines built do take care of the correct fluid mechanics fundamentals before design. IT applications, although uses some engineering principles were not strongly coupled with the engineering basics. Traditional engineering applications have a lot more process focus. Each and every application has well defined processes and clear flows defined to track the processes. The software applications developed do not guarantee such process focus. Traditional engineering applications are optimized for simplicity in implementation and undergo constant improvements.

With business process managers, coming in a big way (BPM’s are not new, what’s new is the fact that they are getting popular and expanding horizons) there seems to be an alignment with the traditional process focus. The applications being built with processes are much more in sync with the actual business processes. This also gives the domain users understand the flow of the software application much easier then showing them some HTML prototypes of how the system will look like. The heterogeneous systems are getting more standards based which are again what the traditional engineering systems are. Components are becoming more loosely coupled and have clear interfaces. This allows real and easy plug and play support over various heterogeneous environments. This can further allow some components of a big system to be developed by company x whereas company y can develop other component and a company z integrates x and y. Automobile industry for example functions the same way in case of a traditional industry. There is a lot more focus on simplification of development. This gives the implementers an easy way to produce quicker outputs and better productivity.

All this makes me believe that Information technology is maturing. It’s getting more aligned to the traditional engineering stream which is a welcome sign.