Hacker News new | ask | show | jobs
by felipemnoa 5478 days ago
With all due respect, I don't know what you are talking about. Programs in 1.4 run fine in 1.5. Every time there is a new version of Java I install it in my machine and just continue working as usual. I would be really upset if I had to spend time trying to make everything work again with every new version. They deprecate methods and functionality but they do not remove it. Java is not that much older than Ruby/Rails and it is pretty stable. Ruby/Rails may be great but I really don't want to go through the pain of having to port my code to the next version. I rather spend my time on adding new features.

Even Android, which is many times younger, never does this. Everything is always backwards compatible. Android developers would be up in arms if they just decided to break all apps in a new version of Android. Granted, it could still happen because nobody is perfect. Although it has never happened in any of my apps and I don't know if it has ever happened at all except for the early Beta period. When something is no longer supported they deprecate the functionality but do not remove it.

2 comments

1.5 did introduce at least one major backwards incompatible change. A new keyword which meant any variables named enum now broke the app.

Installing a new Java version on your desktop to run some app is different than rolling out a new major version of JVM/language for an enterprise application. There is a lot that went into ensuring everything still worked, including all dependencies, and that performance was acceptable. Maybe heap options needed to be changed because of how GC changed.

OK, I stand corrected. Still, that is almost insignificant. But yes, nobody is perfect.
> Java is not that much older than Ruby/Rails

According to wikipedia: Java = 1995, Ruby on Rails = 2004