I'm really thinking to give the modern Java a try 🤔
It's been a while since I've last written Java code (being a full-time Clojure developer) but looks like things have improved in the Java land as well, so why not give it a try?
Before I switched to Clojure I was working with Java for many years - and I didn’t enjoy it at all! My main complaint was always complexity and overcomplicating things where it’s not required.
Thank god I’ve not spent too much time on the bloody Java Enterprise with all those beans, WebSphere, etc. But even Spring was overcomplicated. Although I was enjoying it at the beginning of my software career the main reason was that I always liked to deep dive into the technology and figure out how it works.
But all those annotations and implicit behaviour motivated me to find alternatives. At that point, I discovered Clojure and functional programming and was amazed by strong fundamental ideas, like immutability by default, code as data and data modelling in general.
I’ve never regretted that I’ve switched to Clojure but on the other hand, those years in software development taught me to be open-minded. It feels like Java evolved quite a lot and I think it’s a good time to refresh my knowledge and don’t fall behind.
I’m going to experiment with new features like Virtual threads and other cool stuff.
Also, I’ve discovered Javalin, it looks like the server creation could be as simple as this:
import io.javalin.Javalin;
public class HelloWorld {
public static void main(String[] args) {
var app = Javalin.create(/*config*/)
.get("/", ctx -> ctx.result("Hello World"))
.start(8080);
}
}
Which straightaway gives a more similar feel (as you would do in Clojure, Node/Bun, Go, etc).
There are rumours that people are still searching for the entry point of their Spring application 😄
Have a nice day!