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 · 15m
Interesting aspect. Let me take this thought for a spin. What exactly would you want to expose?
000
Markus Eisele @myfear.com · 11h
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 · 12h
Coming from Spring, I'd start with one Quarkus endpoint and keep the API the same. I've updated the article with a runnable example and a migration checklist. buff.ly/mIMVtRe #Java #Quarkus
buff.ly
What Spring Didn’t Teach You: Becoming a Modern Java Developer with Quarkus
You know Spring. Now try Quarkus, see what happens at build time, and find out whether it fits your next Java application.
021
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 · 27/09/2026
Thanks 🙏🙂
000
Markus Eisele @myfear.com · 27/09/2026
🙏🥳
110
Markus Eisele @myfear.com · 26/09/2026
Those who do this longer with more direction get seriously better results.
010
Markus Eisele @myfear.com · 26/09/2026
I think it’s still a very thin line between curating context and using agents efficiently and vibe coding. I’ve seen so many examples with the exact same assignment and vastly different outcomes just because one scenario prepared the agent better. We’re all just mostly learning it right now.
230
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 · 23/09/2026
Markdown in /src buff.ly/s6FCl2f
buff.ly
</> htmx ~ Markdown in /src
In this essay, Carson Gross argues that Markdown is now an important source artifact for software systems built with LLMs, and that, following the principle of locality, it should live in /src,…
001
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 · 19/09/2026
My #JCON2026 session is live: 'Chasing the Main Thread - Adventures in #AI Assisted Coding' This talk takes you behind the scenes of a daily #creative experiment: writing and publishing one hands-on #tutorial or article on The Main Thread Grab your coffee and hit play: youtu.be/1wSjnnxWdYA
buff.ly
Chasing the Main Thread - Adventures in AI Assisted Coding | Markus Eisele (EN)
This talk takes you behind the scenes of a daily creative experiment: writing and publishing one hands-on tutorial or article every day on the-main-thread.com. In this session, I’ll share the…
020
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 · 16/09/2026
Java 27 is only boring on the surface. - Mostly nerdless
mostlynerdless.de
Java 27 is only boring on the surface. - Mostly nerdless
Java 27 seems to be boring; the JDK only got some new defaults, but the most consequential change is the removal of the JVM Compiler Interface.
161
Markus Eisele @myfear.com · 15/09/2026
How I Build a Storage System for My Agent’s Memory
dzone.com
How I Build a Storage System for My Agent’s Memory
Learn why an agent's memory is more than a chat history and how to build a small, testable storage that agents can use across tasks.
010
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
Reposted by Markus Eisele
XDEV Software @xdev.software · 11/09/2026
XDEV is coming to 🇺🇸 #IBMTechXchange Enterprise Java is rarely greenfield. @richard.fichtner.dev & Markus Eisele show how IBM Bob and the Quarkus Dev MCP keep AI-assisted work maintainable – demoed live on a production codebase, not a sample app. Bring your own legacy code questions!
132
Markus Eisele @myfear.com · 11/09/2026
A very happy birthday @maxandersen.xam.dk 🥳🎉💐
010
Markus Eisele @myfear.com · 10/09/2026
Die Akropolis der Akronyme: Wie Java eine Sicherheitsarchitektur baut #java
heise.de
Die Akropolis der Akronyme: Wie Java eine Sicherheitsarchitektur baut
Wenn KI-Agenten über Systemgrenzen hinweg agieren, reicht ein Login nicht aus. Eine robuste Sicherheitsarchitektur erfordert Standards wie OAuth und SPIFFE.
000
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 · 02/09/2026
One request, two product policies. I wired Shieldstral into Quarkus LangChain4j for scored input and output guardrails, then tested outages and thresholds. www.the-main-thread.com/p/shieldstra... #Quarkus #LangChain4j
the-main-thread.com
Shieldstral with Quarkus LangChain4j: Policy-Aware AI Guardrails
Build scored input and output gates around a Quarkus AI Service, run the classifier locally with vLLM, and calibrate policy thresholds with deterministic and real-model tests.
000
Markus Eisele @myfear.com · 31/08/2026
Instructions can steer a coding agent. Hooks can stop it. This IBM Bob lab adds live repo context, protected-file boundaries, test evidence, BobShell execution, and Codex/Claude migration notes. www.the-main-thread.com/p/ibm-bob-li... #IBMBob #CodingAgents
the-main-thread.com
IBM Bob Lifecycle Hooks for Agentic Development
Build a bounded loop that injects repository context, blocks protected edits, records test evidence, and runs from the IDE or BobShell.
120
Markus Eisele @myfear.com · 29/08/2026
A 44 MB XLSX has 1,067,371 transactions. The answer needs four rows. I used Java, Apache POI, and JBang to stream the file, then gave IBM Bob only bounded evidence. A good agent skill chooses the parser and controls the result. www.the-main-thread.com/p/large-exce...
the-main-thread.com
https://www.the-main-thread.com/p/large-excel-agent-context
010
Markus Eisele @myfear.com · 27/08/2026
WildFly 41 can package its cloud feature pack into a bootable JAR. I tested the full two-pod path: pod-derived node IDs, KUBE_PING, and one HTTP session replicated across both nodes. www.the-main-thread.com/p/wildfly-41... #WildFly #Kubernetes
the-main-thread.com
https://www.the-main-thread.com/p/wildfly-41-bootable-jar-kubernetes
010
Markus Eisele @myfear.com · 25/08/2026
One PostgreSQL rename can break every old Quarkus pod still serving traffic. This tutorial works through the safe Flyway sequence: expand, mixed-version writes, backfill, rollback window, then contract. www.the-main-thread.com/p/quarkus-fl... #Quarkus #Flyway
the-main-thread.com
https://www.the-main-thread.com/p/quarkus-flyway-zero-downtime-migrations
021
Markus Eisele @myfear.com · 23/08/2026
While writing about agent security standards, I kept coming back to token audiences. This Quarkus walkthrough exchanges the user token at every microservice boundary and proves the failures with Keycloak. www.the-main-thread.com/p/quarkus-oa... #Quarkus #OAuth
the-main-thread.com
https://www.the-main-thread.com/p/quarkus-oauth-token-exchange
010
Markus Eisele @myfear.com · 21/08/2026
I tested Flamme’s promise: keep a Quarkus component local today, then move it over NATS through config. It worked. Two replicas duplicated the work. A worker exception became a timeout. www.the-main-thread.com/p/quarkus-fl... #Java #Quarkus #NATS
the-main-thread.com
https://www.the-main-thread.com/p/quarkus-flamme-deployment-topologies
000
Markus Eisele @myfear.com · 20/08/2026
„cursor already has a great plan mode which works great with pstack. but personally, i don't believe in planning. the best spec is code.“ #qotd
buff.ly
plugins/pstack at main · cursor/plugins
Cursor plugin specification and official plugins. Contribute to cursor/plugins development by creating an account on GitHub.
000
Markus Eisele @myfear.com · 19/08/2026
I wanted to see where stateless MCP gateway checks stop and application authorization starts. The experiment uses Quarkus MCP Server 2.0 Beta3, OIDC, OPA tool admission, and an argument guardrail. www.the-main-thread.com/p/quarkus-mc... #Quarkus #MCP
the-main-thread.com
https://www.the-main-thread.com/p/quarkus-mcp-layered-authorization
010
Markus Eisele @myfear.com · 17/08/2026
When AI Writes the Code, Specifications Need an Exit Strategy www.oreilly.com/radar/when-a...
oreilly.com
When AI Writes the Code, Specifications Need an Exit Strategy
AI coding teams need small change briefs, native engineering artifacts, and enough judgment to stop Markdown specifications becoming a second codebase.
010
Markus Eisele @myfear.com · 17/08/2026
Feature flags separate deployment from release. Provider-specific calls make migrations harder. This Quarkus example moves one flag to OpenFeature + flagd while keeping the Flags API. It covers targeting and defaults. www.the-main-thread.com/p/quarkus-fe... #Quarkus
the-main-thread.com
http://www.the-main-thread.com/p/quarkus-feature-flags-openfeature
041
Markus Eisele @myfear.com · 15/08/2026
I looked at 1,800 popular skills.sh entries. Many cover more than coding, and most popular files are short. For company skills, I would start with owners and a clear home: person, team, repository, or company. www.the-main-thread.com/p/agent-skil... #AgentSkills
the-main-thread.com
https://www.the-main-thread.com/p/agent-skills-company-marketplaces
051
Markus Eisele @myfear.com · 13/08/2026
I built a fictional fail-open SDK to test Quarkus Shim as a temporary build-time patch. The interesting part was the pipeline: negative control, bytecode evidence, SBOM visibility, and an expiry gate. www.the-main-thread.com/p/quarkus-sh... #Java #Quarkus
the-main-thread.com
https://www.the-main-thread.com/p/quarkus-shim-secure-java-pipeline
000
Markus Eisele @myfear.com · 11/08/2026
“Agent” is hiding too many layers. The model provides capability. The harness runs the loop. Skills teach procedures. Tools act. The work system defines authority, evidence, and ownership. www.the-main-thread.com/p/agent-harn... #AIAgents
the-main-thread.com
https://www.the-main-thread.com/p/agent-harnesses-work-systems
110
Markus Eisele @myfear.com · 10/08/2026
How do programming languages impact token efficiency and correctness?
buff.ly
How do programming languages impact token efficiency and correctness?
This somewhat widely cited post (I keep seeing it cited, anyway) suggests that dynamic languages and/or languages that represent things more concisely are more token efficient. It seems to be cited enough...
020
Markus Eisele @myfear.com · 09/08/2026
Quarkus Qubit turns Java lambdas into JPA Criteria queries at build time. I tested filters, grouping, projections, and a subquery. One Qubit 1.0.0 generation error still left Maven reporting `BUILD SUCCESS`. www.the-main-thread.com/p/quarkus-qu... #Java #Quarkus
the-main-thread.com
https://www.the-main-thread.com/p/quarkus-qubit-jpa-criteria-lambda-queries
010
Markus Eisele @myfear.com · 07/08/2026
Fresh IBM Bob tasks can read the code, but they lose the reasons behind earlier decisions. I connected Engram's local graph through MCP, added a Bob recall rule, and tested it in a new task. www.the-main-thread.com/p/ibm-bob-en... #IBMBob #MCP
the-main-thread.com
https://www.the-main-thread.com/p/ibm-bob-engram-durable-project-memory
020
Markus Eisele @myfear.com · 06/08/2026
Quantego is a family of LEGO models of IBM Quantum Computers
quantego.org
Quantego
Quantego is a family of LEGO models of IBM Quantum Computers
010
Markus Eisele @myfear.com · 05/08/2026
A timed-out POST may have committed. Retrying with a new identity can create duplicate work. I built a Quarkus checkout demo with HTTP idempotency: stored replay, concurrent 409s, CQRS context, and production limits. www.the-main-thread.com/p/quarkus-ht... #Quarkus #Java
the-main-thread.com
https://www.the-main-thread.com/p/quarkus-http-idempotency
010
Markus Eisele @myfear.com · 03/08/2026
AI makes more features possible. It does not mean the product team should own all of them. I wrote about a small owned core, stable contracts, and a replaceable edge for generated workflows and integrations. www.the-main-thread.com/p/ai-product... #SoftwareArchitecture
the-main-thread.com
https://www.the-main-thread.com/p/ai-product-architecture
031
Markus Eisele @myfear.com · 01/08/2026
Open Liberty has good Maven docs. Its getting-started path is spread across several pages. I connected and tested it: dev mode, hot reload, live-server tests, a clean CI build, and a runnable JAR. www.the-main-thread.com/p/open-liber... #Java #OpenLiberty #Maven
the-main-thread.com
https://www.the-main-thread.com/p/open-liberty-maven-getting-started
010