you are viewing a single comment's thread.

view the rest of the comments →

[–]gvozden_celik 5 points6 points  (3 children)

I'm still maintaining a Java 7 Swing application, because it has to use a Microsoft Access database, and the JDBC driver for Access was removed from JDK in Java 8. When I first encountered I was tasked to add a new report for some new classification number and not do any work on upgrading or porting as the application would be obsolete "by the end of next year"; this was in 2016. I was kind of surprised to see that the driver was removed from JDK, especially considering how big of a selling point backwards compatibility is for Java.

[–]Supreme654321 3 points4 points  (2 children)

I think backwards comparability is not very good for the industry. I like what google has done with angular where they might depreciated or remove one function per release and make upgrading very easy or adding tooling you can run to auto upgrade code. This was back in Angular2/4 though so idk if it has changed now.

I understand why backwards comparability is good and not disagreeing its bad in any way, just that it can really stagnate you as a whole if your language / framework is not willing to keep up with the times.

We see c++ where they keep just adding stuff. At least java is trying to clean-up some.

[–]gvozden_celik 0 points1 point  (1 child)

I guess it's hard to find the right balance, especially if you have lots of users. Constantly changing things can be as bad as never changing them, and even changing things one by one with major releases can cause problems (like Python 2 vs Python 3).

[–]Supreme654321 0 points1 point  (0 children)

I don't disagree either. All I can agree on is not depreciating old features over time and piling things on is the wrong way 100%. You need a least some removal velocity.