Blog

Blog Post

Neuland reloaded

When Angela Merkel said in 2013 that the internet is ‘Neuland’ (uncharted territory) for all of us, the amusement online was considerable. Viewed from some temporal and substantive distance, one can now recognize a perspective from which she was indeed correct.

Blog Post

I sandboxed my coding agents. Now I control their network.

I want my AI coding agents to work independently, but I don’t want them to have unrestricted access to the internet. In this post, I describe how I routed all network traffic from my development sandbox through a strict proxy allowlist, allowing only a small set of explicitly approved domains. This setup finally gave me enough confidence to loosen the guardrails without constantly staying in the loop.

Blog Post

From Vibe Coder to Code Owner

Blog Post

Jeder kann Architekt sein!

Und jede natürlich auch. In diesem Artikel zeige ich, dass die Architektenrolle andere Kompetenzen verlangt, als viele annehmen.

Blog Post

Your Database Table is an awful API

A shared database table can feel like the ultimate shortcut: no API design, no contracts - just a schema. The catch is that this convenience quietly turns into friction: it blurs boundaries, slows change, and makes independent evolution harder than it needs to be. This article looks at why tables (and data-model-shaped “generated APIs”) are such a tempting trap - and what better integration boundaries look like.

Blog Post

Let’s Not Normalize Insecure AI Assistants

How the Lethal Trifecta Makes Today’s AI Assistants Unsafe by Design

Blog Post

Die persönliche KI ist schon da

Drei Wochen mit OpenClaw auf einem Raspberry Pi und ein Blick darauf, was auf die Softwarearchitektur zukommt.

Blog Post

What to Do While the AI Is Thinking

AI can write code while we wait — but that doesn’t mean we suddenly have free time. Whether we should think, multitask, review, or rest depends on what kind of work we are doing.

Blog Post

AI and Elaboration: Which Coding Patterns Build Understanding?

Developing with AI through the cognitive Lens

Blog Post

Fetch-Tools vs. Browser-Rendering in Agenten-Setups

„Eine URL abrufen“ klingt trivial, kann aber innerhalb eines Agenten schnell chaotisch werden. Ein Teil der Verwirrung entsteht durch Dokumentation, die nicht sauber trennt, was die einzelnen Web-Tools eigentlich leisten.

Blog Post

Leave It Better Than You Found It

Leave your code better than you found it. This advice, also known as the Scout Rule, sounds so simple, but what does it look like in practice? This is the story of how I followed the advice and cleaned up a fat controller along the way, and how this unexpectedly enabled us to handle new requirements quickly and with minimal effort. It’s a lesson in habits and continuous architecture.

Blog Post

I sandboxed my coding agents. You should too.

My Lima VM + JetBrains Gateway setup for safe agentic development

Blog Post

Why not scatter @Transactional everywhere?

@Transactional — great when you know when not to use it. Use it consciously instead of sprinkling it everywhere!

Blog Post

Was, da geht noch mehr? Noch mehr Besonderheiten von und mit Java

Bereits vor ein paar Jahren haben wir uns Dinge angeschaut, die in Java funktionieren, aber sehr ungewöhnlich sind. Diese Liste werden wir in dieser Folge des Praktikers ergänzen.

Blog Post

From FOMO to Focus

Clear Priorities in the AI Jungle with AI Opportunity Mapping

Blog Post

Speed vs. Skill

Every AI coding tool promises the same thing: unprecedented speed, effortless productivity, freedom from tedious work. The pitch is compelling. But what if feeling more productive and being more capable aren’t the same thing? Research shows that automation makes us feel more productive while eroding our skills. Let’s examine this tension through the lens of cognitive psychology.

Blog Post

Menschenlesbare Datenformate mit Jackson verarbeiten

Wir nutzen tagtäglich Datenformate. Zum Austausch von Informationen mit anderen Systemen oder auch zur Definition von Dingen wie unserem Build oder zur Konfiguration unseres Systems. Manche davon sind binär, aber auch viele bis heute direkt von Menschen lesbar. Für die Verarbeitung von JSON in Java hat Jackson eine hohe Verbreitung erreicht. Aber Jackson kann mehr als nur JSON, wie wir in diesem Artikel sehen werden.

Blog Post

Context Engineering: Managing AI-Generated Code Complexity

Keeping your scope small was always a good idea

Blog Post

Prompts als Programm in GPT-5

All Caps, Gebettel und Geschrei – Schnee von gestern. GPT-5 befolgt brutal jede Instruktion, selbst in versteckten Nebensätzen. Und verhungert, wenn wir nicht genau sagen, was wir wollen. Welche Konsequenzen hat das für Prompt Engineering und Agentenentwicklung?

Blog Post

Swiss Army Knife for Salesforce: LLM with In-Memory Database

Large Language Models (LLMs) struggle with transforming large datasets, particularly when performing aggregations that require calculations - essentially anything where you’d normally use GROUP BY or ORDER BY in SQL. But what if we need to retrieve extensive data from a system and process it with an LLM, but only have an API with limited functionality available? In this blog post, I present a solution I’ve implemented and tested.

Blog Post

Achieving Digital Sovereignty with Standard Software

Blog Post

Git Clarity: Building Meaningful Commits and Linear History

Feeling overwhelmed by Git’s complexity? Discover a streamlined workflow that centers on creating single, comprehensible commits. Learn how this approach leads to clearer code reviews, fewer merge conflicts, and a beautiful linear commit history that tells the story of your code. This isn’t just about Git commands—it’s about aligning your tools with how your brain works.

Blog Post

Managing Geopolitical Risks with Enterprise Architecture

IT leaders in Europe increasingly face questions about whether geopolitical developments – such as data protection disputes or trade conflicts between the EU and the US – threaten the viability of US cloud services. The risks range from price increases and legal uncertainties to potential usage restrictions. CIOs must not only ensure functional IT operations but also proactively assess external risks. This article demonstrates how enterprise architecture methods can help identify risks early and develop viable alternatives.

Blog Post

The Path to Heterogeneous Cloud Platforms

Blog Post

A Governance Framework for Digital Sovereignty

In an increasingly connected world where digital infrastructure forms the backbone of our economy and society, the topic of digital sovereignty is gaining more and more attention. For decision-makers in German-speaking countries, this goes far beyond merely selecting a cloud provider. It’s about strategic agency, resilience, and the ability to actively shape one’s digital future. This article explores how a robust governance methodology can help organizations not only understand digital sovereignty but also put it into practice—without sacrificing convenience or innovation.