There was another post recently asking who was on .NET. I thought to ask a similar question about Java.
Anyone here building with it?
I've been doing Java for most of my dev career and I can tell that now with the new release model, it seems to be finally transforming to something exciting.
Hey,
I am building with Java for most of my dev career. Currently, I mainly work with Spring Boot.
Hey,
I'm currently building something with Java Spring Boot but it's not my first choice (picked it because I'll use it in my next job and I need to train - I know Java but not Spring).
The Spring IoC feels bad to me at the moment. Plenty of annotations to know about and stack overflow answers are mostly outdated. I probably just lack experience and that's precisely why I'm doing this :).
I don't need SPA so I'm using thymeleaf and I don't like it so far.
I need to use twitter and facebook API and it's not straightforward at all. Will need to use ES too but I'm not here yet.
Code reload and templates hot reloads are also a pain (I'm using Intellij), restarting application takes ages (like 10 seconds for my minimal project?!).
What is this new release model you're taking about? I was planning to build a spring executable jar and ship it in a PaaS...or run it on a dedicated server of mine.
What's the best release/platform combo in your opinion?
With the new release model, I meant that the major Java updates happen way more often than they used to be (e.g. it took ages between Java 7 and Java 8). So this gives room for the language evolving at a much higher pace.
As for Spring, it's quite clunky and if you need to use it at work, then it is what it is.
For a side project, I think I'd use other tools like the ones I mentioned below.
I was thinking about using java for my backend, because I know java very well. But I am not that confident anymore because other languages would allow me to iterate faster like javascript or golang.
What makes you think this way? 😃
It is just my experience: with java I tend to write hundreds of lines of code before I can start up something: classes, interfaces etc. Then you compile, you create a jar, then you somehow run it, while with javascript you just spin up a node with a few libraries and it works. i know there are plenty of tools and libs for java, but somehow it is still not as convenient as js or golang.
I can totally relate to what you said, however, things are actively changing now.
First, the Java release cycle has dramatically improved and they're rolling out new versions every half a year or so.
Second, Java 14 has partly addressed verboseness with Records (https://openjdk.java.net/jeps/359). The rest you can cover with https://immutables.github.io/ or https://projectlombok.org/.
Third, with GraalVM the problem of high memory consumption also practically disappears. Check out https://quarkus.io/ or https://micronaut.io/ that leverage that.
And last but not least. If you're already proficient with Java, imagine how many hours you're going to save down the road (even if you've been doing coding for a while, there's always productivity loss when switching to a new stack).
Is it really that no-one is indie-hacking with Java or I completely screwed up this post?... 😅