#ModernJava

JAVAPROjavapro
2025-10-02

now lets you match inside records, compare primitives, & run full apps without touching . @ronveen takes you inside a version where syntax, tooling & mindset finally align.

Start here: javapro.io/2025/06/17/modern-j

2025-09-11

Don’t start from scratch.
Quarkus supports your Spring annotations — @Controller, @Service, @Repository.
Migrate your app module-by-module and go cloud-native without breaking everything.
#SpringBoot #Quarkus #DeveloperExperience #JavaMigration #ModernJava

quarkus.io/spring/

Don’t start from scratch... Quarkus supports your Spring annotations.
2025-08-28

Spring muscle memory? Keep it.
Quarkus supports your existing annotations like @RestController, @Autowired, @Repository — just faster. Migrate incrementally and ship apps with a native edge.
#SpringBoot #Java #Quarkus #DeveloperExperience #ModernJava #CloudNative

quarkus.io/spring/

Migrate incrementally and ship apps with a native edge.
2025-08-07

Quarkus speaks fluent Spring—reuse your @RestController, @Autowired, and JpaRepository code with Spring compatibility extensions. 👩💻
Same familiar APIs. Blazing-fast, cloud-native runtime.

#Java #SpringBoot #Quarkus #CloudNative #ModernJava #SpringCompatibility

quarkus.io/spring/

Quarkus speaks fluent Spring
JAVAPROjavapro
2025-07-21

now streams with memory, discards threads instead of pooling & runs without public static void main. , Gatherers & no-boilerplate coding—@ronveen breaks down the quiet revolution

Read: javapro.io/2025/06/17/modern-j

Why @Annotations Will Eventually Burn You.

Preach annotation voodoo or embrace explicit method calls? Too many still cling to @PreAuthorize, entrusting their fate to framework black magic. But such blind faith is brittle. One innocent Spring Boot update, and suddenly your security vanishes unless you summon an obscure @Enable... incantation.

Prefer the custom preauthorize() method: it’s concrete, predictable, and the compiler screams when something breaks as it should. Just like how constructor injection finally defeated the field-injection cult, it’s time to retire annotation worship elsewhere too.

Consider @JsonProperty("fieldName"): sure, the object mapper might infer names correctly without it, until one day it doesn’t, because the naming strategy changes behind your back. It’s happened. It will happen again. That’s the price of depending on invisible magic. Unreadable, unpredictable, unmaintainable. Same applies to reflection.

Frameworks and their “best practices” are relics of the monolith age. Java has evolved: threads, HTTP services, logging,… all can now be built functionally, fluently, and natively. It’s not Java vs Kotlin or some trendy syntax candy. Languages, especially those that compile, already give you more than enough. The bottleneck isn’t the tool, it’s the one holding it.

#Java #SpringBoot #CleanCode #SoftwareEngineering #CodeQuality #Programming #ModernJava #DeveloperExperience #DevMindset #NoMoreMagic #ReadableCode #ExplicitOverImplicit #SayNoToAnnotations #SeparationOfConcerns #FunctionalProgramming

A medieval wizard casting spells over a confused developer — Caption: “@PreAuthorize… trust me, it just works.” In the background someone continues “until it doesn’t”
2025-05-12

#java luminaries meeting before the start of @jcon
Currently the group is sharing many opinions on how to get "young" developers interested in #modernJava.

Meeting room with around 30 people discussing Java community and other topics
JAVAPROjavapro
2025-05-12

1995: is slow.
2025: Java is almost too fast to comprehend.
Join @javacoding on a journey through 30 years of evolution.

How did Java get this fast? Find out here:
javapro.io/2025/04/07/hitchhik

Java Is Becoming a Monster (And I Love It)
I used to think Java was done. Stale. Verbose. A relic.
But now? It mutated. It spawns 5000 virtual threads like it’s nothing.

I just built a REST service:
✅ Runs on virtual threads
✅ Functional pipelines
✅ Only a few MB RAM
✅ No thread-pools
✅ No leaks
✅ Pure JVM

This isn't Java 8 anymore.

✨ No Groovy. No Kotlin. No detours.
Java is now useful and gets Beautiful.

And then there’s GraalVM:
If you skip reflection and runtime init, you get:
⚡ Native executables
⚡ Instant startup
⚡ Tiny memory
⚡ No runtime surprises

Game. Changed.

But OSS frameworks?
Still look frozen in 2015.
Heavy, reflective, runtime-hacked monsters.

So I built my own tools:

🔥 TypeMap
→ Zero-reflection json/xlm reader & type converter
→ GraalVM native
→ Fast. Simple. Functional.
github.com/YunaBraska/type-map

⚔️ Nano
→ Anti-framework
→ Static main, no DI magic
→ Pure, clean design
github.com/NanoNative/nano

🧪 Nano example app
➡️ One single static main file
github.com/YunaBraska/nano-gra

🛠 API-Doc-Crafter
➡️ Native CLI doc tool
github.com/YunaBraska/api-doc-

🧭 My Java Functional Guidelines
devabyss.hashnode.dev/java-fun

Java isn't just catching up.
It’s setting the pace now.

The only question is:
Can frameworks and libraries keep up?

#Java #GraalVM #VirtualThreads #FunctionalProgramming #JVM #ModernJava #coding #Programming

Java code in funktional design

🚀 Java 24 is here! 🦾

Modern Java has outpaced frameworks, waiting for them to catch up. With GraalVM, Virtual Threads, Native Compilation, and Functional Programming, do we even need frameworks anymore? 🤔

🔹 Java 24 optimizations I love:
✅ JEP 450 - Compact Object Headers for memory efficiency
✅ JEP 488 - Primitive types acting like objects

⚠️ No more 32-bit x86 support!

Java releases features only when they are ready. No half-baked experiments. Can’t wait for future operators like ?, ??, !., and ?..

Java is evolving fast. Are you keeping up? 🚀

#Java24 #GraalVM #VirtualThreads #ModernJava #FunctionalProgramming #programming

Java cup

🚨 When your code is a few KB, but your dependencies rival AAA game installations. Still believe in fairy tales of secure code?

Gigabytes of code you didn't write. Licences you didn't read. Security flaws you didn't anticipate. Yet, you trust them. Adorable.

Not just Node.js. Gradle caches, AWS libs with 400 sub-dependencies + reflection parties. In control? How cute.

I use plain Java with jlink + jpackage. Minimal. Secure. No bloat.

Fewer deps = fewer surprises. Because I care.

But hey, keep stacking that Jenga tower. Watching it fall will be fun.

#MinimalismMatters #CleanCode #DependencyHell #JavaPurist #DoYouEvenCare #LessIsMore #CodeSmart #TechDebt #DependencyManagement #JavaDeveloper #SecureCoding #LightweightCode #ModernJava #RefactorYourLife #NoBloat #CodeQuality #developer #code

Jenga tower
Shai Almogdebugagent
2024-03-28

🚀 Rediscover Java with my Modern Java series! Gone are the days of verbose syntax; welcome a leaner, meaner Java for the cloud era. Perfect for those who remember JDK 1.4 ..1.6. youtube.com/playlist?list=PL8G

Shai Almogdebugagent
2024-03-27

🚀 Rediscover Java with my Modern Java series!

Gone are the days of verbose syntax; welcome a leaner, meaner Java for the cloud era. Perfect for those who remember JDK 1.4 ..1.6. youtube.com/playlist?list=PL8G

Client Info

Server: https://mastodon.social
Version: 2025.07
Repository: https://github.com/cyevgeniy/lmst