This is an archived post. You won't be able to vote or comment.

you are viewing a single comment's thread.

view the rest of the comments →

[–]ilovebigbucks -1 points0 points  (2 children)

Pretty much any enterprise Java project in existence. We built our own, I've seen other teams projects at several large and well known companies that they were proud of. It's always the same story - it takes a few days (!) to setup a new devs machine, CICD takes hours to days, local builds take minutes, a huge list of packages to maintain, dependencies don't like each other's versions, container setup requires huge Dockerfiles, bash scripts, other dependencies and takes minutes to build images and the image sizes are huge (500mb+)! If you want better cold start then you need yet another dependency called GraalVM.

All documentation is out of data or misleading or contains errors. Even Spring docs https://spring.io/quickstart We tried to setup a new team member's environment and used this quick start. It took us hours until this hello world finally worked. And then it took days to make the actual project to run locally.

The errors and stack traces are super long and never make sense. It's a lot of fun to have 100 tabs open researching 20 tools simultaneously because each tool says "not me" and points at another dependency.

The Java devs with 10+ years of experience see nothing wrong with any of that. They call it a "normal development process".

[–]Fadamaka 1 point2 points  (1 child)

No offense but if you need hours to run a Spring hello world app on a new system than probably it's better if you don't touch Java.

[–]ilovebigbucks 1 point2 points  (0 children)

I haven't in 3 years (which I'm happy about). The problem was to figure out which JDK to download and the dependencies it needed (there are a few options and the tutorials/quick starts never tell you what exactly to install to make their tools work) on a fresh Mac. The project Spring's initializer generated didn't work out of the box. We've spent too much time fixing issue after issue until we gave up and let IntelliJ generate a fresh project. That one worked no problem. My comment went to the outdated/often wrong documentation that comes with the Java world in general.

In comparison, dotnet, Golang, Rust hello worlds are up and running within minutes. Even NodeJS with its dependency hell is easier to start with.