Markus Eisele
banner
myfear.com
Markus Eisele
@myfear.com
Developer, turned to consulting, developer relations, sales, and landed in marketing.

Writing books for #Oreilly.
Into Java, Kubernetes and such.

Legal called to tell you that I'm not officially speaking for IBM.
Pinned
My new book with Alex Soto Bueno and Natale Vinto just dropped:
Applied AI for Enterprise Java

The practical field guide for Java developers bringing AI to production.

Full story (and how it came to life between family, travel, and too much coffee):
buff.ly/2iDl9ba

#Java #AI #Quarkus #LangChain4j
Most APIs document happy paths.
Production lives on the unhappy ones.

This deep dive shows how to make RFC 9457 errors first-class citizens in Quarkus — standardized, documented, and visible in Swagger UI.

No boilerplate. No guesswork.

buff.ly/16DHxQG

#Java #Quarkus #APIDesign #OpenAPI
February 17, 2026 at 7:15 AM
Like with every other tool. It amplifies both directions. Slope and mastery.
Generative AI is a slop generation machine by default. You have to put in a lot of work to get something of quality from it.
February 16, 2026 at 7:07 PM
Database migrations don’t “just run”.
They decide whether your app ever starts.

I wrote a hands-on guide on using Flyway callbacks in Quarkus to turn migrations into a controlled lifecycle:
validation, policy checks, metrics, and fail-fast startup.

🔗 buff.ly/fXiubXj

#Java #Quarkus #Flyway #DB
February 16, 2026 at 7:15 AM
Image generation quality has exploded, but running it locally is still messy — especially for Java developers and ARM hardware.

A hands-on guide on embedding a native image model directly into the JVM using #Quarkus and the #Java #FFM API.

buff.ly/9t29far

#LocalInference #AIEngineering
February 15, 2026 at 8:25 AM
Stop duplicating validation across services.

This deep dive shows how Java teams can move validation into Protobuf schemas with Protovalidate and enforce it consistently in Quarkus and beyond.

One schema. One set of rules. Everywhere.

buff.ly/JDwM9F2

#Java #Quarkus #Protobuf #APIs
February 14, 2026 at 7:15 AM
I’ve been collecting workout data for years.
Then I asked a simple question: what if this were just another backend system?

#Java + Quarkus + PostGIS
#GPX ingestion, spatial queries, heart rate extraction, server-side rendering.

Built it. Wrote it up.

🔗 buff.ly/mYVoyUh

#Quarkus #FitnessData
February 13, 2026 at 7:15 AM
Quarkus 3.31.3 is out! Second maintenance release for the 3.31 stream, packed with fixes.

Run `quarkus update` to upgrade from any version.

Full changelog 👉 github.com/quarkusio/quarkus/releases/tag/3.31.3

#Quarkus #Java #CloudNative
Release 3.31.3 · quarkusio/quarkus
Major changes #52395 - Update images in catalog and use runtime images Complete changelog #51972 - StatelessSession batched operations not visible within same transaction when using @TestTransac...
github.com
February 12, 2026 at 4:15 PM
Most “prompt injection defenses” fail because they inspect content instead of enforcing authority.

This article shows a boundary-first approach:
StruQ + Spotlighting in Quarkus with LangChain4j.

buff.ly/B11XA3m

#Java #LLMs #Quarkus #PromptInjection #AIArchitecture
February 12, 2026 at 7:15 AM
I wanted a better intuition for what people actually talk about when Java comes up on the Fediverse.
Here is a small Quarkus service that listens to the public stream, filters hashtags, buffers events, and stores them cleanly with SSE and Dev Services.

buff.ly/efFD7Wo

#Java #Quarkus #Fediverse
February 11, 2026 at 7:15 AM
30 Jahre Java – Interview mit Community-Vertretern (Teil 4) www.heise.de/blog/30-Jahr...
30 Jahre Java – Interview mit Community-Vertretern (Teil 4)
Java wurde 2025 schon 30 Jahre alt. Das ist ein guter Zeitpunkt, zurück, aber auch nach vorn zu blicken.
www.heise.de
February 11, 2026 at 6:08 AM
Healthy Geeks, Better Code: Lessons from Fitness and AI @jfokus buff.ly/b91Uz6a

#java #health #ai
February 10, 2026 at 11:01 AM
Why AI Makes Software Engineering Harder, Not Easier open.substack.com/pub/myfear/p...
Why AI Makes Software Engineering Harder, Not Easier
AI speeds up coding but increases risk. Learn how Java developers can use AI safely by applying proven software engineering principles.
open.substack.com
February 10, 2026 at 8:04 AM
Most RAG issues aren’t model problems.
They’re query problems.

This article shows how to make query rewriting explicit using LangChain4j Query Transformers and Quarkus Easy RAG.
Small step. Big impact on retrieval behavior.

buff.ly/dCKrXDd

#Java #RAG #Quarkus #LangChain4j #AIEngineering
February 9, 2026 at 7:15 AM
Finding Comfort in the Uncertainty
“There is more uncertainty than certainty. About how to use AI well, what it’s really doing to productivity, how roles are shifting, […], how things will evolve. Everyone is working it out as they go.”
Annie Vella
Finding Comfort in the Uncertainty - Annie Vella
I’m writing this having just landed back in New Zealand after a very long journey home from Utah. On the final leg from Houston to Auckland, I found myself wedged between a retired industrial chemist...
buff.ly
February 9, 2026 at 6:08 AM
LLMs in Java: Die Fragen, die man sich erst stellt, wenn es ernst wird!

#JUG Hamburg!
Do., 26. Feb. 2026, 19:00
www.meetup.com/de-DE/de-DE/...

Ich freu mich!! #java
LLMs in Java: Die Fragen, die man sich erst stellt, wenn es ernst wird, Do., 26. Feb. 2026, 19:00 | Meetup
Wie integriere ich LLMs sauber in meine Anwendung? Wo gehört KI hin – und wo ganz sicher nicht? Mit Quarkus als Fundament und LangChain4j als Brücke zur KI zeige ich konkre
www.meetup.com
February 8, 2026 at 4:29 PM
Reposted by Markus Eisele
🤯 TIL in JDK 25 you can write `import module java.base` and get access to all its exported packages in one line. No more importing 15 separate java.util.* classes at the top of every file. Small quality of life win.
February 8, 2026 at 3:15 PM
No-as-a-Service (NaaS) is a simple API that returns a random rejection reason. Use it when you need a realistic excuse, a fun “no,” or want to simulate being turned down in style. buff.ly/o5yUjlV
GitHub - hotheadhacker/no-as-a-service: No-as-a-Service (NaaS) is a simple API that returns a random rejection reason. Use it when you need a realistic excuse, a fun “no,” or want to simulate being turned down in style.
No-as-a-Service (NaaS) is a simple API that returns a random rejection reason. Use it when you need a realistic excuse, a fun “no,” or want to simulate being turned down in style. - hotheadhacker/n...
buff.ly
February 8, 2026 at 2:39 PM
Most Java input validation assumes ASCII-era rules.
Unicode breaks that assumption.

A deep dive into Unicode security:
• invisible characters
• homograph attacks
• BiDi overrides
• production-grade defenses in Quarkus

buff.ly/4sTgaBx

#Java #Quarkus #Unicode #SecurityEngineering #BackendDev
February 8, 2026 at 7:15 AM
Reposted by Markus Eisele
“Java is the new Python” sounds wrong until you remove the ceremony.

JBang + Java 21 finally give Java a scripting workflow without giving up types, concurrency, or performance.

This isn’t a language war. It’s a tooling wake-up call.

buff.ly/w8NTDTI

#Java #JBang #DeveloperExperience #Programming
February 7, 2026 at 7:15 AM
Learn Git Branching
Learn Git Branching
An interactive Git visualization tool to educate and challenge!
buff.ly
February 7, 2026 at 11:00 AM
“Java is the new Python” sounds wrong until you remove the ceremony.

JBang + Java 21 finally give Java a scripting workflow without giving up types, concurrency, or performance.

This isn’t a language war. It’s a tooling wake-up call.

buff.ly/w8NTDTI

#Java #JBang #DeveloperExperience #Programming
February 7, 2026 at 7:15 AM
This article shows how to measure RAG behavior, not just generate answers:
faithfulness, relevance, grounding, hallucination detection.

Built with #Quarkus, #LangChain4j, and local LLMs.
Written for #Java devs who ship to production.

buff.ly/cLZpGIG

#RAG #AIEngineering #LLM
February 6, 2026 at 7:15 AM