Do you still need reactive programming for high throughput? @chwoerz shows how #VirtualThreads + #StructuredConcurrency handle fan-out calls cleanly and synchronously.

See the #Java25 approach & learn more: https://javapro.io/2025/12/23/java-25-getting-the-most-out-of-virtual-threads-with-structured-task-scopes-and-scoped-values/

#JVM #Java #Performance #CoreJava #JAVAPRO

Thread leakage is the silent killer of “quick parallelization.” #StructuredConcurrency makes sure child tasks end with the parent scope—by design.

Learn the shutdown patterns + how they behave in failure scenarios: https://javapro.io/2026/01/28/how-to-do-structured-concurrency-in-java-25/
via @hannotify & Bram Janssens

#Java25

Can #AI decisions in finance ever be “explainable”? Yes—if you separate orchestration (#Java25) from reasoning (CrewAI) & add context via vector search.

Walk through the full stack with @sibaspadhi: https://javapro.io/2026/01/22/java-25-genai-a-new-era-for-microservices-in-finance/

#GenAI #Compliance #Microservices @springboot @openjdk

Tired of “create project → configure build → wait” just to test an idea in #Java? #Java25 + #JEP512 + #JBang make Java feel closer to scripting—and notebooks + #RaspberryPi turn it into a real learning lab.

Read the roadmap by @igfasouza: https://javapro.io/2026/01/15/java-25-jep-512-jbang-notebooks-graallpy-and-raspberry-pi-for-interactive-learning/

#JAVAPRO

Release v9.0.0 · jenetics/jenetics

Improvements Update Java 25 and optimize code for new Java version. #917: ScopedValue for RandomRegistry class. #940: Remove deprecated API. #955: Make IntStream counting more robust.

GitHub

Java still feels “too heavy” for quick learning? @igfasouza shows how #Java25 + #JEP512, #JBang & notebooks make experimentation fast—then connects it to real hardware via #RaspberryPi + #GraalPy.

Try the stack: https://javapro.io/2026/01/15/java-25-jep-512-jbang-notebooks-graallpy-and-raspberry-pi-for-interactive-learning/

Still treating security as something you bolt on later? #Java25 brings security into the language itself. Mihaela Gheorghe-Roman breaks down how sealed classes, records & pattern matching close entire classes of vulnerabilities. → https://javapro.io/2025/12/30/security-in-the-age-of-java-25-new-language-tools-for-safer-code/

@openjdk #JavaSecurity

Last November, I used spec-driven development for a frontend project. This past weekend, I went the other way: a complete backend-only resurrection.

After a 4-year dormant repo, I’ve rebooted jcli. Here is how I used Antigravity and Gemini 3 Pro (High) to do it.

What is jcli?

☕️ JCLI is a utility designed to bridge the gap between the Java ecosystem and the terminal.

The goal: execute Java methods from the terminal instantly, without the friction of a local JRE/JDK setup.

Think `jcli Math random` or `jcli String length 'Hello, World!'`.

I used Google Antigravity & Gemini 3 Pro (High) to drive the evolution:

- Foundation: Moved to #Java25 LTS & Picocli.
- Performance: GraalVM Native Image for standalone binary.
- Logic: Use Reflection to scan packages driven by a YAML-driven config and gradle to build necessary artifact

Working in Antigravity felt less like "coding" and more like "conducting."

The AI handled the all the code, including automated GraalVM configs, with instant refactoring while I focused on the "What if?"

The "sunk cost" of experimentation has effectively vanished.

Try jcli today via Homebrew:

brew tap psumiya/jcli
brew install jcli

Full breakdown of the "vibe-based" reboot and the repo below:

- https://sumiya.page/2026/January/jcli-jan-2026-reboot.html
- https://sumiya.page/2026/January/using-google-antigravity-to-reboot-jcli.html
- https://github.com/psumiya/jcli
- https://psumiya.github.io/jcli/

#Java #Java25 #GraalVM #GenerativeAI #jcli

jcli - Java Command Line Tool - 2026 Reboot

#Security bugs don’t always come from crypto failures — they often come from bad code modeling. Mihaela Gheorghe-Roman shows how #Java25 features like sealed classes, records & pattern matching help prevent logic flaws before they reach production.

Read: https://javapro.io/2025/12/30/security-in-the-age-of-java-25-new-language-tools-for-safer-code/

Are you using parallelStream() without profiling? Or still writing Collectors.toList() manually? #JavaStreams have evolved—Mihaela Gheorghe-Roman breaks down what modern #Java offers you from 8 to 24: https://javapro.io/2025/11/13/java-streams-evolution-from-java-8-to-today/

@openjdk #ProjectAmber #Java25 #JavaStreams #JDK24