Where are we going ?

Today I would like to share some thoughts about the future of information technology.

If you look back in the history of information technology you will see one obvious trend.
What I mean is abstraction. The first important step was the object oriented paradigma which allows us to model the real world into code.
With this paradigma it was possible to implement persons instead of simple functions.

The next step was component technology which sits on top of oo. This model is more aligned to the real world, as it focuses on interfaces instead of internal implementations.
With that you just have to meet the person and know the language for communication. It’s not important whether the person has a pacemaker or not.

But we still had to develop on a very low technical level. This changed with the introduction of application platforms like J2EE and .NET. This brought abstract APIs for development.
With these application platforms we got rid of the error-prone system level coding. These new programming models are easier to handle than it predecessors like MFC, OWL, ect. (but they are very complex)
Because of this ease it’s possible to build more sophisticated distributed applications. But architecture and system design is much more important these days.
Nowadays you are no more limited to develop single persons, but worldwide distributed communities.

And the choice of the application platform is loosing importance (except for the vendor).
Most of the complex enterprise level applications have the same non functional requirements like availability, failover, security. Therefore providing powerful runtime environments, like EJB or Enterprise Services are a logical consequence.
And it finalises the good old separation of concerns paradigma.
That is the environment, e.g. air, accomodations, etc. where the community lives in.

That’s where we are today.

What comes next ?

If you open your eyes you can identify the upcoming levels of abstraction. One is the notion of shifting from coding to modeling. This trend has a popular three letter acronym.
It’s MDA or Model Driven Architecture which promises to generate most of the code from a model.
The other sign of abstraction is business orchestration. We see that in products like Microsofts Biztalk Server or BEAs Weblogic Integration.
The outcome could be that the applications which are generated from the model can interact with each other by connecting them with a drag and drop approach.
The foundation for this interoperability are the emerging Web Service standards.

How does that sound ? Do you like coding ? What will you do in the future ?

In my opinion coding will loose importance.
But without experienced people which are able to look behind the scenes and are able to cope with the complexity of these highly distributed systems it would be very hard to maintain them.
At the latest when a system does not work as expected. Moreover Enterprise Application Integration will raise to a new level.
That means there will be still much work to do for developers even if the way of application development will change. But that is business as usual, isn’t it ?

Welcome

The time has come. I’ve set up a weblog as many others did before. You may ask for the reason (i hope you will).
The reason is to keep in touch with the people.
During my life as a professional coach and trainer I met many people in projects or at trainings and conferences.
Wouldn’t it be nice to share something with these people even after leaving the location ? I think yes.

Why English ?

Almost everyone in the IT industry speaks English, but only a few speak German if you work in an international environment (what a pity).
Though my English is far from being perfect, I think it’s good enough to share my experiences with others. I hope you will excuse the mistakes (especially joking is very hard in a foreign language).
Some issues might be interesting only for German readers. In this case I’m going to write in German.

What can you expect ?

As my focus is on enterprise integration, J2EE and .NET technology, you will find information about these issues in the blog.
Because I’m standing with one leg in the .NET and with the other in the J2EE camp the content will sometimes be more related to one or the other side (which one is the dark one ?).
I’ll try my best only to write about things which might be interesting to other people as well.
If you are concerned with cross platform and interoperability issues this blog is for you (what are the most all-purpose words in the it industry ? platform, component and object I guess).
Sometimes the content will be prose and sometimes in depth technical information.

In real situations it’s boring if one speaks and the others just listen. The same is true for a weblog (the difference is that I can’t see you yawning).
So feel free to participate in this blog by posting comments. I look forward to hearing from you.