Blog von Joy Heron

Blog-Post

Alternativen zu KI aus den USA

Claude und GPT haben die Art, wie ich Software schreibe, grundlegend verändert. Doch ich fühle mich zunehmend unwohl angesichts steigender Kosten, des Vendor-Lock-ins und unserer wachsenden Abhängigkeit von einer Handvoll US-Anbieter. Nachdem ich lokale Modelle und in Europa gehostete Open-Weights-Alternativen ausprobiert habe, war ich überrascht: Einige weniger bekannte Modelle können bereits einen großen Teil meiner täglichen Arbeit abdecken.

Blog-Post

Meine Coding-Agenten laufen jetzt sandboxed. Den Netzwerkzugriff habe ich unter Kontrolle.

Ich möchte, dass meine KI-Coding-Agents eigenständig arbeiten, aber ich will ihnen keinen uneingeschränkten Internetzugang geben. In diesem Beitrag beschreibe ich, wie ich den gesamten Netzwerkverkehr aus meiner Development-Sandbox über eine strikte Proxy-Allowlist geroutet habe, die nur eine kleine Menge ausdrücklich freigegebener Domains zulässt. Dieses Setup hat mir endlich genug Vertrauen gegeben, die Guardrails zu lockern, ohne ständig selbst in der Schleife bleiben zu müssen.

Blog-Post

Unsichere KI-Assistenten dürfen nicht zur Normalität werden

Wie die „Lethal Trifecta“ sie systematisch zum Sicherheitsrisiko macht

Blog-Post

Was tun, während die KI nachdenkt

KI kann Code schreiben, während wir warten – aber das heißt nicht, dass wir plötzlich freie Zeit haben. Ob wir nachdenken, multitasken, reviewen oder pausieren sollten, hängt davon ab, welche Art von Arbeit wir gerade erledigen.

Blog-Post

Ich habe meine KI-Agenten in eine Sandbox gesteckt. Du solltest das auch tun.

KI-Agenten sind mächtig, weil sie Programme mit der entsprechenden Berechtigung auf unseren Rechnern ausführen können. Genau diese Stärke macht uns aber auch angreifbar. Ein einziger Fehler oder eine Prompt-Injection reicht, um das ganze System zu kompromittieren.

Blog-Post

Context Engineering: Umgang mit der Komplexität von KI-generiertem Code

Kleine Änderungen waren schon immer eine gute Idee

Blog-Post

Git Clarity: Aussagekräftige Commits und eine lineare Git-History erstellen

Fühlst du dich manchmal von Gits Komplexität überfordert? Hier lernst du einen Workflow kennen, der darauf ausgelegt ist, einzelne, klar nachvollziehbare Commits zu erstellen. Du erfährst, wie dieser Ansatz zu übersichtlicheren Code Reviews, weniger Merge-Konflikten und einer linearen Commit-Historie führt, die die Entwicklung deines Codes nachvollziehbar macht. Dabei geht es nicht nur um Git-Befehle – sondern darum, deine Tools an deine Denkweise anzupassen.

Blog-Post

KI — Abseits der Buzzwords

Genervt vom KI-Hype? Geht mir genauso. Aber hinter all dem Gerede steckt auch etwas, das wirklich hilft – vor allem im Alltag von Entwickler:innen. Tools wie Claude Code nehmen einem lästige Routinearbeiten ab und schaffen Zeit für das, was eigentlich zählt: Probleme verstehen und gute Lösungen finden. Das ist keine Magie – es ist eine praktische Unterstützung, die Entwicklung beschleunigt, ohne unsere Kernkompetenzen zu ersetzen.

Blog-Post

Custom Elements are NOT for Templating

Untangling the confusion between browser defaults and JavaScript component frameworks

Blog-Post

Innovation in the web without sacrificing accessibility

We’ve truly stretched the boundaries of what is possible on the web. However, to do this we’ve sacrificed semantic HTML and made our applications inaccessible to a huge amount of different users. Instead of breaking the foundation of the web, we should consider this as an opportunity: how can we implement applications in a way that works for any user who might come along and want to interact with it?

Blog-Post

Don’t tell me I’m not building a web application

How do we decide what technology stack that we want to use for any given project? Is it really based on how perfectly well suited the technology is to the problem at hand or do we really just want to use the technologies that we like and are comfortable with? I’m happy in my filter bubble, rendering web applications on the server and progressively enhancing them on the client. But I also recognize my bias. Do you?

Blog-Post

JavaScript? Gern, aber bitte in Maßen

Klassischer Architekturansatz für Webanwendungen

Blog-Post

A Playground for Testing OpenID Connect

This post describes how you can set up a development environment in order to play around with your OpenID client implementation. When running your application in a cluster, it can be difficult to test how it will behave behind a load balancer. One factor that can be particularly difficult to test is when you are communicating with an OAuth 2.0 or OpenID Connect server which expects that a request will be redirected back to the same application instance that it came from.

Blog-Post

The Power of the HTML Form

The HTML form is a powerful tool for telling a server what you want to do. But does everybody know how it works? With the multifarious JavaScript frameworks currently available today, software developers in the industry today often do not know how to create a web application without JavaScript. Is there an alternative? The web has been around for ages. What did people do before JavaScript?

Blog-Post

Simplicity - Fighting Complexity At All Costs