Experts warn of steep increase in Java costs
theregister.com
theregister.com
Nathan Biggs, House of Bricks CEO, estimated that a company with 250 employees, 20 Java Desktop Users and eight Java Installed Processors would pay $3,000 a year on the old model, which grows to $45,000 a year under the new subscription, a 1,400 percent increase.
I know someone who works at a large place that got hit by a similar increase. I assume Oracle thought they were large enough to not care and would just pay the HUGE increase. Instead they had a team that spent a couple months ripping Java out of everything. Oracle went from making something, to making nothing. I don't understand how they could think these increases are a good idea.Of course you can also make money on Cobol, and IBM presumably makes decent money on System Z mainframes. So in the short term it might be great.
If BigCo was paying $30k/yr is now swallowing $450k/year, that allows them to lose 140 small customers only paying $3k/yr. Which has more knock-on effects, less support staff. All in all, it will probably turn out to be a net positive for Oracle.
We have moved most installs to Openjdk. The ones that use official Oracle have been cheap enpugh until now.
Personally, I thought everyone(including Google) was crazy for using Java or any JVM language in any form until the Supreme Court case was settled. Even if the internet commenters tell you it's safe, do you really trust them to make a legal case so iron-tight that Oracle's thousands of lawyers won't find some way to sue you and cost you $500/hour in defense fees for months if you come to their attention?
It’s almost like “you will pay a shitload of money if you don’t know what the hell are you doing”, and that is true of everything, but especially businesses.
A lot of it is also they like having the capability of picking up the phone and getting someone to prioritize / look at an issue they care about. Good luck trying to get an OSS dev to do that for you if you're in an industry that dev doesn't like (i.e. military development).
With a negotiated support contract you have assurances that developers are willing to deal with you, that they're probably not going to just up and vanish, and that they've at least agreed to at least consider issues that you run into.
Good luck trying to get any large software vendor to do that.
https://www.trustradius.com/products/oracle-java-se-subscrip...
Almost all of them say that their tickets are attended to within hours of filing, and Oracle offer support in over 20 languages so they must have a pretty big team to be able to do that.
And no, it won't solve some problem you detected. It will only help you if it was already solved by development.
Anyway, time to attend to a ticket is a useless metric. I bet Microsoft fares better on this than Oracle, but their support is absolutely counterproductive. (What I mean literally, you will get your problem solved faster if you don't try to deal with them.)
> I recall hearing recently something along the lines of- assuming you'd made the mistake of having signed up with Oracle in the first place- the contract you agreed to states that in the event of switching to another compatible variant, you're still required to pay Oracle their fees regardless. > I also vaguely recall that this clause was indefinite(?)
Can this be true?
They'll probably also argue that you continue to benefit from using the Oracle software to develop your software even if you stop, although that's not necessary for consideration. That's more of an argument against unconscionability.
I don't know if their contract actually has that provision, but if so, it's another reason to stay away from Oracle altogether. I really don't understand the companies that seem to say "You know what would be great? Working with Oracle!" It seems insane to me.
Most people would not only laugh at that but also terminate every business with Oracle just because of that.
But.. there's a percentage of clients who just say "Ohh dear.. ok then." and in many of these organizations the people who make these decisions aren't even close to the source of revenue ( mostly public sector )
Are there any applications that just won't run on non-oracle JREs or are forbidden from running on them? Some Oracle SQL shite?
Although when you look at the actual numbers: "[someone] estimated that a company with 250 employees, 20 Java Desktop Users and eight Java Installed Processors would pay $3,000 a year on the old model, which grows to $45,000 a year under the new subscription, a 1,400 percent increase."
45k per year is a lot compared to 3k, and obviously it's even more compared to other languages which are completely free to use. But at the same time 45k is not all that much for a 250 employee software company. Probably not enough to justify a complete rewrite.
Not enough to justify a rewrite, but enough to consider what to do with new projects.
Of course, I said 'additional evidence'.... if Oracles many other shenanigans haven't convinced the pointy-haired bosses by now, I'm not sure anything will.
I know there must be a reason for it - but I don't know what that is? Is it support? How is that useful for a programming language - do Oracle engineers come and tweak some Java code at your megacorp, or what is it?
I don't understand the model
(Haven't payed myself for Java as CTO so this is pure speculation).
I like to think if I ever ran a company i'd never hire someone to a position where they wouldn't know how to sniff this out, but I imagine I am being incredibly naive.
It's mind boggling to me that some bill going from $30k -> $450k as mentioned earlier in the comments on this page would just be swallowed. Seems so wasteful.
Otherwise it's the same as Red Hat. Why pay RH for RHEL when you could just install a free distro? Same considerations apply. If you've made it to Java 11 or 17 then yes there's no deep reason to pay Oracle unless you feel your business is sufficiently dependent on Java that you want the original developers to work on your specific bugs or problems, even long after that release is no longer supported by the upstream open source project. For example if you have a server that suddenly hits some weird performance bottleneck in Hotspot or the std libs then they will actually dig in and figure that out with you, and then spend time optimizing it to fix that. They've made reference to such efforts before.
Obviously that is expensive, so they charge for it.
Why this change - the focus in the article is price increase for a hypothetical example company but it doesn't take into account the cost of compliance under the old regime which is all about counting processors and/or end user machines. Basically trying to measure your usage. But that was super complex. Different types of processors counted differently, virtualized CPUs counted differently and so on. Audit and compliance was too hard. Number of employees is super easy to count and check so audit/compliance costs evaporate. That may on its own be enough to counterbalance the effect of increased prices in some cases.
https://en.wikipedia.org/wiki/Google_LLC_v._Oracle_America,_....
In other news, they charge money for commercial support, that you can buy, what a concept..
An example is Azul, they release a free build of Openjdk named Zulu, but also sell a custom JDK that includes a custom high performance GC.
Including Oracle, by the way. You don't have to buy a commercially supported version if you don't want to pay for Java.
> The OpenJDK is the open source reference implementation of the Java SE Specification, but it is only the source code. Binary distributions are provided by different vendors for a number of supported platforms. The OpenJDK project itself is managed on openjdk.java.net where you can find specifications, source code, and mailing lists, but there are no builds that you can download. You need to choose a distribution.
Oracle itself provides builds of OpenJDK[2], but they aren't maintained:
> Oracle provides OpenJDK builds for Linux, macOS and windows in a compressed archive format. These builds will only be updated for a 6-month period. Updates and security patches will not be available after this short period. This also applies for LTS versions! e.g., the latest OpenJDK 11 build was 11.0.2+9 while the current OpenJDK version is 11.0.12+7.
Then there is the Oracle Java SE SDK[3]. This is the one with the terrible license:
> Oracle provides a commercial version of the OpenJDK, which are based on the exactly same sources of the OpenJDK: The Oracle Java SE Development Kit (JDK). Oracle provides updates regular updates and security patches for these builds. The main issue with these builds is Oracle’s licensing policy.
[1]: https://whichjdk.com/ [2]: https://whichjdk.com/#openjdk-builds-by-oracle-jdkjavanet [3]: https://whichjdk.com/#oracle-java-se-development-kit-jdk
OpenJDK = Fedora Linux
Oracle JDK = Red Hat Enterprise Linux
Not sure if that changed or if it was limited in scope to some of their products.
Oracle promises to allow legacy users to renew under their current Ts&Cs
So no price increases for any existing Oracle Java deployments. Yet then they quote the CEO of a compliance firm who says: We have one customer who has a Java subscription, a Universal License Agreement for Oracle Java, the whole company, but now with the new pricing, their cost for Java goes up 10-fold.
Uh no, their price doesn't go up at all, you just said that. Also the new thing is the "universal license agreement" that applies to the whole company, so they can't have that already. the average we're seeing is 2x to 4x price increase that this will incur because customers were very good about minimizing Oracle Java usage and getting a lower price
If you are minimizing usage then you don't need to buy any new licenses, and so prices do not increase. This whole article seems to revolve around the view of this one guy that although Oracle has already said existing licenses will continue as is, actually that doesn't count for anything and should be ignored.I mean, too much of a PITA to do when there are reasonable alternatives, but interesting to think about.
I remember when oracle bought sun and it really felt like java was likely to die because of its new owner. It is amazing how successful it has continued to be in spite of that.
It won’t be a popular opinion, but it is likely thanks to that. Oracle managed to hold onto almost the whole core team since the Sun times, which is very very rare in case of take overs.
I'm way more worried about the AWS bill from all those Java "micro" services.
If you can't pay 45K a year, why on earth are you still using Oracle's JDK? There are literally dozens of $0 JDK's and companies that offer support for a much lower fee.
I think this is one of those non-news stories that should live and die on the company's internal chat. This stuff happens all the time and with companies that have nothing to do with software, surprise, rage, heated phone calls, exquisitely written emails with proposals back and forth and finally some closure. There are thousands of people who only do that every day.
There's an alternate universe where Google bought out either Sun or just Java, and then probably abandoned the commercial part of it entirely within a few years, leaving nothing but OpenSDK and a steering committee.
Also, with respect to Google’s inability to continuously support any project for more than like 4 years, no, Oracle is a much better steward of the platform.
There’s so many better and free alternatives.
If your software will be used, you are "building the legacy systems of tomorrow".
enterprises
Also, many younger developers I chatted with don't understand long living applications and what "use boring tech" means.
Of course we do. It means you use Node 16 instead of 18 because it’s LTS. 2 whole years of support!
At least Java is open, alternative implementations are present, and can be run on anywhere and everywhere.
Miguel was conned into believing that it'll be completely independent like OpenJDK, but it didn't turn out like that.
IOW, C# is as open as VSCode.
The Microsoft ecosystem can become more confining if you continue to operate as if its 2008 and follow all their old patterns (e.g. IIS, Azure, et. al.)
For the more clever developer in 2023, you take .NET 7 and skip over all of the Azure-integrated bullshit. You can throw away 100% of their complex AspNetCore libraries in favor of minimal API integrations. You can do everything your way and run it wherever you want.
The entrapment in the Microsoft ecosystem is of a substantially different nature than entrapment in the Java ecosystem. Becoming mired in Microsoft licensing concerns is a matter of technical competence. Becoming mired in Oracle licensing concerns is a matter of business competence.
The other thing I do is being able to use multiple languages and using the right one for the job, and ensure that all are supported by GCC suite.
Well, I'm on a very different niche than many software developers here, but at least it gives me more freedom to do what I want to do, and how I accomplish these.
I really wouldn't say so. All the new features are convenient and easy to understand, especially if you have Visual Studio to teach them to you (type if (x == null) x = new .. and you get a popup to transform it into the new operator). It's not a zoo like C++.
Whether you like Java (the language) or not, Java (the ecosystem) will not go away. In fact, it is alive and well, and I would guess it is at least an order of magnitude bigger and more mature than the .net ecosystem.
If you don't like Java (the language), you can choose Kotlin (Java++), Scala (Haskell--), or other languages (eg. Groovy?)...
A lot of this is the inertia I alluded to. There's no reason this couldn't all be written in C#. Kind of like the C++/Rust debate.
There's no reason it couldn't be written Brainfuck.
doesn't mean it's a good idea
At least for the time being, Java has exhaustive pattern matching and proper enums, whereas C# doesn't.
the worlds largest mobile phone platform is java. this is all the billions of people who live in Asia.
its not gonna go away in our lifetimes.