Gartner has recently identified 'Seven Grand Challenges for IT' during next 25 years. Interestingly one of the challenge that is mentioned is - 'Increase Programmer productivity by 100 fold'. Though I find the number - 100 fold - to be too greedy :-), I have to admit that I see this challenge as the fundamental to the IT industry for the years to come.
IBM endorses this view saying IT industrialization is still in early stages. While recent developments like SOA, SaaS and Utility computing have industrialized the buying and selling side of IT, we have not seen anything that is concrete that will truly industrialize the way we 'build' our software.
There are so many enablers such as Open source frameworks, SOA, sophisticated IDEs, but none of them have seems to have solved the problem to a greater extent. I practically experience in my company where developers are still burdened with mundane activities such as UI issues/Table-to-Object mappings. And we have not achieved significant reduction in the development time as well. Am not talking about rapid application languages such as Ruby, etc. They can help to certain extent, but they have not made inroads to enterprise apps yet.
So, the need of the hour is a magic bullet that would slash the development time spent in mechanics of the actual application.
If MDAs, Software Factories are answers to this problem,we would not have seen this in Gartner Report as a challenge for next 25 years.
I believe one way of improving the developer productivity is to enhace the capabilities of application server platforms. Its the right time to elevate the application server platforms to provide application related capabilities from pure infrastructure capabilities.