this post was submitted on 11 Jun 2024
343 points (99.1% liked)
Programming
17450 readers
78 users here now
Welcome to the main community in programming.dev! Feel free to post anything relating to programming here!
Cross posting is strongly encouraged in the instance. If you feel your post or another person's post makes sense in another community cross post into it.
Hope you enjoy the instance!
Rules
Rules
- Follow the programming.dev instance rules
- Keep content related to programming in some way
- If you're posting long videos try to add in some form of tldr for those who don't want to watch videos
Wormhole
Follow the wormhole through a path of communities !webdev@programming.dev
founded 1 year ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
This is only very indirectly related to Java as a whole. the reference implementation of the jvm is open source and managed by a coalition of companies under a GPL license, the OpenJDK.
Oracle has its own set of enhancements to the reference jvm that handle things like just-in-time compilation and garbage collection differently and have some additional flags that allow for more fine-grained tweaking of certain features.
There are many other companies that do the same.
Oracle only started doing this in 2019 so many companies who were running Java before this used the Oracle JVM out of convenience, even if they weren't going to use the tweaked parts. So everyone switched to another implementation, OpenJDK, Amazon Coretto, Eclipse J9 or some other available JRE/JDK.
In 2023 Oracle cracked down harder trying to get people to pay for licenses and changed their terms such that any company with even 1 employee using an Oracle JVM had to pay for every employee in the company. ridiculous I know.
This is just more news about Oracle's licensing crackdown and not about Java as a whole at all. Think of it more like the Unity licensing change and you're telling people to stop coding in C#.
Before that one, they were using a "if one core can run it, all cores must have a license" model.
If you want to see how well that model did, remember
It makes the SuSE AND SCO seat-license deal look tame.
Azul here
The open source implementation replicates the same bugs as the oracle JVM for compatibility. So you're still beholden to oracle for fixes and that's why none should ever use a proprietary language
I'm aware of the jdk alternatives and I will never use any of them because Oracle might some day decide that they're an IP violation like they did with Google's Android. I'm sure you'll tell me something about the licensing being different but that still will not matter because there is always the possibility that Oracle will change their mind and start messing with me for sport. The Java ecosystem is rotten from the top down because Oracle cannot be trusted.
They lost that case. It went all the way to the US Supreme Court and set a binding precedent that an API re-implementation falls under the Fair Use doctrine. Maybe Oracle could try some excuse to say that OpenJDK is different enough from what Android did for that precedent to apply, but it would be a major uphill battle, and they know it.
It was expensive for Google and fighting them would destroy most companies. It's cheaper to avoid the ecosystem entirely.
It was expensive for Google, but they've done the hard work of establishing the precedent. It's much easier to fight when you have a strong binding precedent on your side.
I don't have to fight if I just use something else. There is very little advantage to using Java when everything from .NET to Node to Ruby to Python are all super mature and have a similar amount of open source packages available. There might still be a question of performance and for that we have Go, Rust and elixir- not quite as mature but all still can do everything I need and then some.
As an added bonus, none of those frameworks have Larry Ellison lurking around the corner waiting to sue me if he decides to change the terms of license. Java is dead to me.
.NET... You trust Microsoft over Oracle. Ridiculous.
When have they ever sued someone for using .NET?
They could though! Microsoft has a long history of "embrace, extend, extinguish"!
You may be willing to put your company at risk because you trust Microsoft but I'm not going to.
Feel free to do you, I have told you this already. Seeing you're unable to drop the conversation, when did Microsoft ever sue someone for using C#? I trust Microsoft far more than Oracle (reasons detailed in another comment). However, I do not run Microsoft software at my company at this time, other things work better for what I need.
When has Oracle sued somebody for using OpenJDK?
Give them a few years to change the rules. If their prior love of lawsuits is any indication they will do so soon.
Same with Microsoft. The company harvesting personal information to feed to an AI.
Do you see?? Do you see yet that you're just now blindly defending a company that has been so anti-open source in its past? A company that has been found guilty of abusing a monopoly? Yet you're defending them over another company that has also done terrible things??
You're approach is so laughably black & white with no nuance that you can't even see that I'm mocking it by attacking Microsoft with your same terrible logic.
No, these are different situations. One openly sued the user's of their language, the other did not.
You don't even understand what they sued over. 🤣
C# is a better language anyway.
I expect the future is in Rust and C#.
Oh I agree. I love C#. My uni taught most of its classes in Java, but my work has been mostly C#, and it's a huge step up. It would be my choice 100% of the time if starting a new project where the decision is between those two. But if I were using Java via OpenJDK, I wouldn't be afraid of a lawsuit; that's the only point I wanted to make.
OpenJDK is released under the GPL. That requires making any patents available for free to users.
They could theoretically change their mind and try some shit, but the GPL is hard to go "backsies" on.
Feel free to use it, as long as you're willing to pay lawyers to fight them when they decide otherwise.
You're just spreading FUD now.
It's just my reasoning as to why I won't use Oracle products. Feel free to put your own company at risk.
I f'ing love how you're blaming me personally. Don't be a dick.
BTW - don't mistake "cynicism" for "reasoning".
Sorry, I have my own company, my choices matter, you should blame whomever made that choice for you.
It's not necessarily cynicism if it's based on previous patterns of behavior. Oracle reveals themselves to be run by bullies again and again and I choose to not put myself at risk. You do you.
It's exactly what it is because you're ignoring facts that contradict your position because "I've been hurt before". The OpenJDK license is currently the MOST permissive it's ever been. And that was done by Oracle which is shocking to me.
The GPL is an old and well accepted license and there are lots of groups who will jump to defend it. And there are lots of companies backing the OpenJDK that aren't Oracle. Oracle would need to fight Amazon, Microsoft, IBM (RedHat), the Eclipse Foundations, etc. if they wanted to change that.
Sorry, no, I will not go back to my abuser because they say it's different this time.
Like I said - cynicism.
Reality.
Buddy I'd love to introduce you to reality some day.
Is that a threat?
Only if you fear reality?
Depends on how you "introduce me to reality"
Do you always make vague threats when someone disagrees with you on the internet?
Do you always take sarcastic insults as threats?
Not usually. Are you always this poor of a communicator?
Maybe you're just a bit thick.
You're having the same conversation with me on multiple threads and it's me who is thick? It seems like you're personally insulted when someone does not choose the tech stack that you identify with. It's a language, not a religion, you're going to be ok. I have my reasons not to like it and you do not have to approve. Get over yourself.
FUD
I'm curious. Microsoft is in a similar position with its open-source-like work. It's been great for PR but MS has a bad history with Open-Source and with its customers (1999-doj-vs-ms). It's one of the very few companies so bad they were actually sued by the doj.
If you feel this way about Oracle, what's your feeling toward Microsoft? Does it colour your use of c# or dot-net knowing that a company with a track record of rug-pulling and secretly thumbing the scale is still in control of the tools you choose to use?
C# is not my first choice but I did tolerate it the last time I worked a corporate job. MS seems committed to .NET core being open source and have never tried to rug pull C# or the .NET framework itself.
Also, I believe Microsoft's incentives are different, and in a way that benefits me. For instance, they sell more Windows Server licenses because it's easier for legacy shops to administrate (even though it can be done with nginx now). They also get more native software released for Windows, sell more Visual Studio Pro licenses and are able to steer people toward Azure DevOps and other Azure based cloud services.
Oracle has some similar products but their revenue streams are miniscule in comparison. They also have historically been a very lawsuit-based company, as an aggressor not a defendant.