Hacker News new | ask | show | jobs
by delusional 328 days ago
Advocating that people use either Quarkus or Spring is like advocating they build their stuff in COBOL.

Java is an alright language by itself, but the "EE" frameworks and the ecosystem that surrounds them are corrosive to good software. You are actively harming your brain by learning JavaEE. If you do that to new developers you deserve to have your beans turn undiscoverable on Christmas Eve.

4 comments

These days you'd typically use Spring Boot, which is a layer over Spring that simplifies its use significantly. As others have pointed out, none of this is JavaEE.

Frameworks like Spring are absolutely essential for many kinds of business software. Sure, there are slightly more focused alternatives like Micronaut (and Quarkus for that matter), but they tend to have more specific use cases.

In practice, teams that try to write real-world business systems without such frameworks end up with a spaghettified mess that just illustrates a variation of Greenspun's 10th rule: Any sufficiently complicated Java program without a framework contains an ad hoc, informally-specified, bug-ridden, slow implementation of one-tenth of Spring.

What is corrosive is the enterprise attitude of arquitecture astronauts, and that you will get regardless of the language.

I have been dealing with "EE" frameworks since C was the main enterprise language, or even xBASE.

Because OOP hype frameworks, we had Yourdon Systems Method and nice overblown frameworks written in C, with OS IPC all over the place, aka microservices.

Spring and Quarkus are not Java EE.
Probably OP meant that they are ubiquitous in Enterprise settings, no that they're part of "EE Java".
Yeah, they are "jakarta EE" now. Or what do you mean?
Spring has some compatibility shims for EE but my understanding is it’s always been its own thing and was originally formed in reaction to EE
Spring is not „jackarta EE“, it’s compatible with some of EE specs (a good thing), but otherwise it’s just a different framework.
Spring is neither Java EE or Jakarta EE. It can integrate with those frameworks, but it's a completely independent system.
Spring is a good choice for new projects today.
Spring is so versatile that people use it in every way they can possibly imagine. Spring is fine IMHO if you keep it simple enough and refrain from fancy ideas. Maybe I'm just saying to keep it simple, regardless of what you use...

TLDR: don't use XML.