Thursday, February 17, 2011

java the future and improvements

In the last year I often read that developers are considering to switch away from java and that java does not really evolve. For other reasons many devs also discuss if java has any future at all for them.
For many java provides a stable base for developing solid software solutions - with the backing of big companies and countless proven libraries.
Actually many of these libraries now seem dated and the language did not really change the way many devs would have expected.
For many years I thought that there are some very specific issues in java which would have to be solved for java to really evolve:
  • classpath/classloader "hell" (e.g. outdated libraries shipped with the jdk, permgenspace issues)
  • debugging of proxies (aspectj/spring)
  • integration of osgi to allow clean lib management and better memory management
I wouldn't mind if the next java release is completely incompatible to the old java versions. In reality new java versions take years to be actually used and ready to be used.
If the next version of java has completely new basic packages (api/impl) it would break compatibility but it would allow new projects to use a cleaner and evolved environment.
Although I guess in the end devs having these requirements will switch to different languages before something like that can be achieved.

    1 comment:

    1. My opinion is that java has no more big use cases anymore, except in the "big enterprise" market where it slowly replaces cobol.

      I am under the impression that the most cool new things are no longer created with java, it seems that ruby, python, node.js, erlang, ... are rapidly eroding java use cases.

      Also, i have seen that java developers tends to overcomplicate things, maybe because of the slow evolution of the java language?

      ReplyDelete