Hacker News new | past | comments | ask | show | jobs | submit login

Why do applications want different versions of libraries instead of being portable?



It's very common to have breaking changes that you need to carefully manage in a company's internal code, and where managing that as a full-on deprecation isn't worth the effort. Moving faster is often the better choice compared to never refactoring and improving the codebase.


I think I would prefer to base on proven libraries with stable interfaces. Do you have any examples of these breakages?


I'm talking about internal libraries of a company, where there is no proven library with a stable interface as it's continuously evolving - similar to a young library in the OSS world that has no reasonable substitute. It might be something like a new parameter to a function, or an additional method call you need to make in a given version.


Oh. Obviously for internal libraries you should do whatever you like, including bundling. I thought you were talking about open source libraries.


Applications that are written specifically in order to be run on the servers of a given company instead of being written to be general purpose have vastly different tradeoffs involved when it comes to choosing dependencies.


I think this is a big problem in the Java world, possibly more so than many other languages/communities.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: