In Germany or maybe Europe(?) many enterprises use Java for completely new services.<p>Some reasons I found:
- it's a matured stack with a matured framework (Spring)<p>- there's already a lot of Java knowledge in the company<p>- there are already existing services written in Java. Why should the company start to maintain another stack?<p>- there's a lot of Java knowledge walking outside the company. So hiring is easier.<p>- it's still taught as one of the first languages at universities.<p>I've only seen few alternatives for language usage:<p>- C#, but then you lock-in to Microsoft.<p>- Typescript, but there are still skeptics<p>Anyway, the number of companies who are adapting other languages like Go or Python is rising.
That's my biased perspective as a Cloud developer working in finance, IIoT. I don't know how it looks like for other areas.
For new applications? No. But there aren't all that many brand-new applications, are there? Most of the time you're making incremental enhancements, bug fixes, and minor modifications to existing applications. That's the bulk of work. So, 20+ years of Java persists, just like COBOL. I'm sure Java will be around for another 20 years.<p>Are we actively trying to remove Java from our application portfolio? No. If an application is due for an overhaul, then it won't be re-created in Java. But application overhauls aren't nearly as frequent as people would like. In my experience, applications can have a 20-30 year lifespan.
Yes, but it is the #2 priority item on my list of goals to get rid of the last of it so I could answer "No" to this question in the future. But we have a 20 year history of using it, so it takes time to wind it all down.<p>Java does have its place - but it is one of those stacks where you need to be all in, or not. Sprinkling Java in a few places around your ecosystem is not a good place to be.
Heck yeah. Still pays the bills for me after 20 years and with Micronaut, Quarkus and even Spring boot the story around startup time and memory consumption is great. Tons of devs to hire, insanely good tooling/monitoring/debugging tools - why not use it?