Sign in

Markus Eisele

@myfear.com
2.7K followers 547 following 2.1K posts

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.

PostsRepliesMedia
Markus Eisele @myfear.com · 30/09/2026
An operator needs four app commands, not a server shell. I built the narrow path with Quarkus Aesh: one command model over SSH and a protected browser terminal. It includes safety checks, tests, and preview caveats. buff.ly/uzhCrdf #Quarkus
210
Markus Eisele @myfear.com · 28/09/2026
I wanted to see everything around a tiny Bob repair, not the repair itself. A Quarkus ACP client made that concrete: pending permission futures, SSE updates, and a gate `--auto-approve` would skip. buff.ly/9gDqsxv
000
Markus Eisele @myfear.com · 27/09/2026
I still keep example tests. Fifty greens did not prove the rounding rule. jqwik found a combination my CSV never listed, then shrank it to six cents. buff.ly/MDW4XQT #jqwik #Quarkus
010
Markus Eisele @myfear.com · 26/09/2026
I benchmarked IBM Bob with code-review-graph on Open Liberty. The graph path was 18.8% faster, but found 1/10 required call sites; solo Bob found 10/10. Smaller context only helps when it keeps the evidence. buff.ly/5ate4XY #MCP #CodeReview
010
Markus Eisele @myfear.com · 25/09/2026
Bob TV: Episode 2: with yours truly and Max! Tokenmaxxing: How Much Context Does AI Coding Really Need? Tue, Oct 6, 2026 11:00 AM EDT (5:00 PM Europe/Berlin) buff.ly/WCfu7i7 #Register #Free
010
Markus Eisele @myfear.com · 24/09/2026
I wanted the Goblin warning in the console before I trusted a resilience annotation. This walkthrough injects latency and 503s on one Quarkus REST boundary, then proves the caller timeout, retry, and fallback. buff.ly/x1z3vH9 #Quarkus #Java
000
Markus Eisele @myfear.com · 22/09/2026
I wrapped a Quarkus Agroal datasource with J API Proxy and left statements unproxied. Native Image still needed two exact lists: DataSource+ProxyHandle and Connection+ProxyHandle. JVM tests cannot prove that. buff.ly/PPFp0Fo
001
Markus Eisele @myfear.com · 20/09/2026
I wanted two IBM Bob tasks at once without sharing a checkout. Git worktrees isolate files. One constrained Podman container limits the host. Tests decide what merges. buff.ly/twZMs8I #IBMBob #Podman
010
Markus Eisele @myfear.com · 18/09/2026
I keep reaching for Checkstyle ImportControl when I want a cheap pre-compilation gate on package dependencies. This walkthrough wires it into a Quarkus catalog API and proves it catches the exact import before javac runs. buff.ly/OI13jgD
000
Markus Eisele @myfear.com · 16/09/2026
I wired IBM Bob Shell v2 into GitHub Actions to turn Markdown into a validated GitHub Pages site: pinned TasteSkill, artifact deploy, no generated HTML in Git. buff.ly/EaHB91Z #GitHubPages #IBMBob #CodingAgents
020
Markus Eisele @myfear.com · 14/09/2026
Carrier webhooks are a mapper problem until you ask where agents should touch production code. Quarkus keeps auth and idempotency. QuickJS4j runs an approved normalizer behind a string boundary. buff.ly/HVypaIj #Quarkus #Java
001
Markus Eisele @myfear.com · 12/09/2026
I use JSON when I need to inspect a response. A Java-to-Java call has a different contract. This Quarkus Fory walkthrough keeps both paths clear and tests `application/fory` with real bytes. buff.ly/gnEdcyg #Quarkus #Java #ApacheFory
010
Markus Eisele @myfear.com · 10/09/2026
I expected a Quarkus startup banner to be decoration. It became a build-time lesson: FIGlet renders during augmentation; runtime picks colored or plain output. I tested the boundary with NO_COLOR and a bad font. buff.ly/1MprIu4 #Quarkus #Java
000
Markus Eisele @myfear.com · 08/09/2026
I moved my Quarkus errors to `quarkus-http-problem` instead of three custom mappers. Framework failures go to the extension, business conflicts stay explicit, and Dev UI shows mapper order. buff.ly/OmKvfRj
002
Markus Eisele @myfear.com · 06/09/2026
I spent real time with FlexGanttFX and wired it to Quarkus for a dock-door planner. The useful rule: the desktop renders proposals, Quarkus owns the schedule, and rejected drags roll back. buff.ly/IJNGIcT
010
Markus Eisele @myfear.com · 04/09/2026
Bob Shell ships a hidden `bob acp` server. I connected it to Zed and used one failing Java check to exercise permissions, plans, diffs, session restore, and MCP handoff. The editor/agent boundary is clearer than I expected. buff.ly/l941ESU
230
Markus Eisele @myfear.com · 27/06/2026
Published post number 500 today. Might be time to celebrate a little and finally turn the cadence down a little more 🤣 it’s been 500 days of straight publishing. 🥳🎉
140
Markus Eisele @myfear.com · 20/06/2026
Built an invoice reconciliation MCP server this week and the interesting part isn't the matching logic — it's where you draw the line between "tool call that proposes work" and "step that actually moves money." Full tutorial with 18 tests that lock in the separation: buff.ly/ghdPMST
240
Markus Eisele @myfear.com · 18/06/2026
Same Quarkus provider running twice with distinct Consul IDs. One consumer uses Stork to find them by name. Stop one instance, watch the other keep going. Three clear jobs: registration, health, selection. buff.ly/ccxC9NL
000
Markus Eisele @myfear.com · 14/06/2026
Built a small Quarkus service where HAL links reflect workflow state. A CREATED shipment shows pay and cancel. After payment, pay disappears and pack appears. The server says what is valid next. The client follows links. buff.ly/dwzN90W
110
Markus Eisele @myfear.com · 11/06/2026
Bob scaffolded a Quarkus service and gave me one green test: fixed IDs, (0,0), nothing else. Walkthrough: Datafaker + Instancio, a Bob skill, seeded boundary tests. buff.ly/88CQCPw
010
Markus Eisele @myfear.com · 10/06/2026
What Is Agentic Coding? How AI Agents Modernize Code buff.ly/aNEJUBw
000
Markus Eisele @myfear.com · 10/06/2026
I like JFR when the problem is simple: this endpoint is slow, but CPU looks normal. This Quarkus walkthrough shows blocking work, allocation spikes, startup noise, and the fix in one recording. buff.ly/TDKh1DW #Quarkus #JFR
001
Markus Eisele @myfear.com · 06/06/2026
I measured two ways to waste context in Bob: a broad GitHub MCP surface and a broad git diff. The useful frame for me is catalog tax versus payload tax. If you use Bob for review or local change analysis, that trade-off matters. buff.ly/RkpH4QY
020
Markus Eisele @myfear.com · 05/06/2026
I wanted a zero-trust Quarkus tutorial that could prove its own boundaries. This one uses app-managed mTLS, OIDC service tokens, and edge-only policy, then walks the failure cases. buff.ly/ikIJrrB #Quarkus
000
Markus Eisele @myfear.com · 04/06/2026
Empower your AI migrations to Quarkus with Skills buff.ly/ccNiICJ #Java #AI #Quarkus #Spring
031
Markus Eisele @myfear.com · 04/06/2026
I wrote about the boring failure mode in shared MCP: every action collapses into one service account unless user identity survives the whole path. IBM Bob, delegated access, short-lived tokens, and audit-ready attribution: buff.ly/l4JAszz
000
Markus Eisele @myfear.com · 03/06/2026
Local AI demos are better when they admit not every prompt deserves the same model. This tutorial builds a two-lane Quarkus + LangChain4j router on Ollama, with prompt classification, named models, and routing tests. buff.ly/Ri3AmKZ
010
Markus Eisele @myfear.com · 02/06/2026
What a delight having the opportunity to hear @hollycummins.com talk about Quarkus, Speed, Resourcefulness, Sustainability and Developer Fun today 🤩 #ibm #quarkus #java
061
Markus Eisele @myfear.com · 02/06/2026
The useful idea behind CLAUDE.md screenshots is bigger than Claude. Coding agents get better when you give them rules for scope, uncertainty, memory, and escalation. I wrote up the AGENTS.md template I would use. buff.ly/c2ZnuKH
000
Markus Eisele @myfear.com · 01/06/2026
I keep seeing AI cost charts that compare tokens to salaries and quietly skip the rest of the SDLC. This piece argues the real break-even point is review, repair, and delivery overhead. That is where the human bill comes back. buff.ly/eiJ7drT
001
Markus Eisele @myfear.com · 31/05/2026
I keep seeing Quarkus image advice flatten Jib and Buildpacks into "two ways to skip a Dockerfile." I think the real split is simpler: Jib for a boring app-team build, Buildpacks for builder policy and rebase. buff.ly/XECY4tL
000
Markus Eisele @myfear.com · 30/05/2026
I finally wrote the Quarkus/LangSmith walkthrough I wanted: LangChain4j traces over OTLP, plain chat vs tool vs failure runs, and the config mistakes that leave LangSmith empty. buff.ly/j7U6utw #Quarkus #LangChain4j
000
Markus Eisele @myfear.com · 29/05/2026
I wrote a Quarkus tutorial on making an API easier for agents to discover. It covers Cloudflare-style readiness: llms.txt, Link headers, Markdown, OAuth metadata, API Catalog, MCP, and Agent Skills. buff.ly/uj4Zbrd
020
Markus Eisele @myfear.com · 28/05/2026
I like Java records for DTOs. I like them less when a 12-argument constructor becomes a landmine. This Quarkus OrderDesk sample shows where records are enough, where a builder still helps, and where validation fits. buff.ly/iJEtZol #Java
042
Markus Eisele @myfear.com · 27/05/2026
I do not think "supports 100+ languages" tells developers much. I wrote about the gap between tokenizable, benchmark-good, framework-aware, and actually useful in a real repo. That gap explains a lot of weird coding-agent behavior. buff.ly/GafnHvt
110
Markus Eisele @myfear.com · 26/05/2026
I still like being able to view source and understand the page. This piece pulls together a Quarkus path for Qute, HTMX, SSE, and server-rendered UI for teams that want simpler interfaces instead of defaulting to a SPA. buff.ly/4BZmamD
032
Markus Eisele @myfear.com · 25/05/2026
I do not trust graceful shutdown claims that never survive a real SIGTERM. This piece uses a small Quarkus service to show what breaks in naive shutdown and how readiness, delay, and timeout fix it. buff.ly/8cRrrgw #Quarkus #Kubernetes
030
Markus Eisele @myfear.com · 24/05/2026
The unhappy path is still part of the API contract. I pulled together a Quarkus reading path for RFC 9457, HTTP response design, OpenAPI, versioning, and deprecation, because vague error payloads create folklore much faster than docs. buff.ly/3iNCZwM
011
Markus Eisele @myfear.com · 23/05/2026
I like build-time optimization. I like it more when the JSON contract stays boring. This Quarkus piece walks through reflection-free Jackson with DTOs, custom serializers, and tests before the flip. buff.ly/3WLUZkO #Quarkus #Jackson
010
Markus Eisele @myfear.com · 22/05/2026
Bad test suites often start with one mistake: mixing up what each layer is supposed to prove. I pulled the Quarkus testing pieces into one reading path, from QuarkusTest and JUnit 6 through API, browser, and coverage work. buff.ly/RJxmK3K
011
Markus Eisele @myfear.com · 21/05/2026
I like this demo because it makes LoRA feel concrete. Same local model, same prompt, same Quarkus app. Add the adapter and the model finally honors one private agent command instead of improvising around it. buff.ly/Dl48g9U #Quarkus #LoRA
000
Markus Eisele @myfear.com · 20/05/2026
I keep hearing that nobody learns this way anymore. I do not buy it. Agents can generate the code and the tutorial. You still need to run the example, change it, and see what breaks. That is where understanding starts. buff.ly/F0tY2x0
030
Markus Eisele @myfear.com · 19/05/2026
Static OpenAPI breaks down when the contract changes by tenant. This Quarkus pattern uses @OpenApiFilter(RUNTIME_PER_REQUEST) plus a Vert.x route filter so /q/openapi matches the caller. buff.ly/QKYwRNn #Quarkus #OpenAPI
120
Markus Eisele @myfear.com · 18/05/2026
When AI writes part of the code, where exactly does judgment still stay human? I wrote about the responsibility gap, oversight design, provenance, and why vague human oversight is not enough. buff.ly/EIKXfsw
001
Markus Eisele @myfear.com · 17/05/2026
I wanted a sample that kept the ownership boundary visible instead of quietly inlining the KB into helpdesk code. This one uses Quarkus, LangChain4j, and A2A to split triage from remediation in a way teams can actually run. buff.ly/pciu2Lx #Java #Quarkus
021
Markus Eisele @myfear.com · 16/05/2026
AI changes authorship faster than it changes accountability. I wrote about code liability, the verification gap, provenance, and why enterprise Java teams should stop treating AI-written code like free speed. buff.ly/RX1erUQ #AICoding #Java
023
Markus Eisele @myfear.com · 15/05/2026
I wrote up the Cryostat path that actually matters: Quarkus on minikube, operator-driven agent injection, and JFR capture inside Kubernetes. Useful if you want a local lab before doing this for real. buff.ly/cTQltiA #Quarkus #Kubernetes
000
Markus Eisele @myfear.com · 14/05/2026
Phillip Kruger pointed me to a small Quarkus Agent MCP test thread, and it says more than most benchmark decks. My takeaway: skills earn their keep when they cut wrong turns, retries, and stale framework guesses. buff.ly/G2ck1iJ
121
Markus Eisele @myfear.com · 13/05/2026
I like build features that come with numbers. This piece walks through Quarkus JAR tree shaking on two small JVM services, shows the real size drop, and calls out the dynamic-loading edge where you need exclusions. buff.ly/SmWqQMc #Quarkus #Java
032