Blog & Artikel

Blog-Post

Monokausalität: Warum wir einfache Erklärungen lieben

Unser Gehirn liebt klare, einfache Antworten – besonders wenn es um die Frage nach dem „Warum” geht. Dieser Blogpost zeigt, warum Monokausalität verlockend, aber oft irreführend ist – und wie wir den Blick für komplexe Zusammenhänge schärfen können.

Blog-Post

Use webjars-locator-lite with internal WebJars

Switching to the new webjars-locator-lite, e.g. by following the Spring Boot 3.4 Release Notes, may result in errors when loading your internal WebJars. This post explains why that is the case and what you can and should do to fix that.

Artikel

Generative KI: Das Ende von „zu teuer“ in Unternehmenssoftware?

Features, die bisher außer Reichweite waren

Blog-Post

LLM-assisted Abbreviation Mining for Legacy Systems

This blog post shows the process of mining abbreviations and discovering first concepts a COBOL legacy mainframe codebase is made of with the help of Large Language Models. It uses Python, pandas and Claude 3.5 Sonnet to generate insights that can be gathered from such a simple thing like a list of files.

Artikel

Diverse Kommandozeilenwerkzeuge für Container und Kubernetes

Für den Umgang mit Containern und Kubernetes gibt es mittlerweile eine riesige Auswahl an Werkzeugen auf der Kommandozeile. So viele, dass es schwer ist, einen Überblick zu behalten und jedes neue Werkzeug mitzubekommen. Dieser Artikel stellt deswegen einige der vorhandenen Werkzeuge vor, die ich regelmäßig nutze.

Artikel

Pragmatische Evolution von Platform Engineering für die Cloud

Organisatorische und kulturelle Transformation

Artikel

Java und seine Annotationen

Java-Code ohne Annotationen ist heute kaum mehr denkbar, auch wenn es hieran immer wieder Kritik gibt. Doch, kaum zu glauben, es gab auch eine Zeit vor diesen. Drei Anwendungsfälle demonstrieren, wie diese Probleme vor der Einführung von Annotationen gelöst wurden und wie es auch heute ohne diese gehen könnte.

Artikel

Spring Boot und explodierte JARs

Auf den ersten Blick scheint das Starten von Spring-Boot-Anwendungen nicht sehr schwer zu sein. Ein Aufruf von java -jar my.jar reicht dafür. Doch wie genau funktioniert das eigentlich? Und wie lässt sich die Softwareverteilung effizienter gestalten? Dieser Artikel beantwortet diese beiden Fragen und nimmt Sie dabei mit auf eine Reise durch die Geschichte von Spring Boot.

Artikel

Entwickler skalieren anders als Applikationen

Artikel

Here’s All You Need To Know To Start Building With Generative AI

Curious on how to start building with Generative AI? This guide covers the basics, from deploying local models to utilizing tools like Huggingface and LangChain. Learn to create your first AI application, manage customer feedback, and grasp key concepts such as context windows and vectorization. Discover practical examples and essential resources to help you get started.

Blog-Post

Mehr aus Git machen

Git hat sich als das de-facto-Standard für Versionskontrollsysteme etabliert. Obwohl wir es täglich verwenden, sind viele von uns einfach mit den Standardeinstellungen unterwegs. Damit liegen jedoch viele der von Git gebotenen Möglichkeiten brach. In diesem Artikel möchte ich ein paar mir lieb gewonnene Optionen vorstellen und so vielleicht der einen oder dem anderen das Leben mit Git einfacher machen.

Blog-Post

Springboot mit Keycloak in 2024

Endlich aktuelle Infos…

Blog-Post

Ist das Spring RestTemplate wirklich Deprecated?

Ist das Spring RestTemplate wirklich veraltet? Dieser Artikel beleuchtet die verwirrende Geschichte hinter der angeblichen Deprecation, klärt auf, was wirklich Sache ist und gibt praktische Empfehlungen für Entwickler. Erfahren Sie, warum Sie vielleicht doch nicht all Ihren Code umschreiben müssen.

Artikel

Social Engineering ist durchgespielt

Der Angriff auf die Kompressionsbibliothek xz hat gezeigt, wie fragil die digitale Infrastruktur ist, die die moderne Welt am Laufen hält. In dieser Kolumne soll betrachtet werden, wie die sozialen Mechanismen Vertrauen und Misstrauen in diesem Zusammenhang wirken.

Blog-Post

Boring Innovation?

Artikel

Entwicklung eines Datenprodukts mit Databricks

Im modernen Data Engineering geht es v.a. um die Entwicklung modularer Datenprodukte. Dieser Artikel beschreibt die Vorteile von Modularität gegenüber monolithischen Datenpipelines und erklärt Schritt für Schritt, wie sich Datenprodukte mithilfe von Databricks entwickeln lassen – von der Definition eines Data Contracts über die Erstellung und Implementierung von Databricks Asset Bundles bis hin zur Einrichtung einer CI/CD-Pipeline und der Veröffentlichung von Metadaten.

Artikel

Modernisierung einer Legacy Software-Architektur

Software-Systeme reifen mit der Zeit. Sie werden oft über viele Jahre und von verschiedenen Architekten und Entwicklern angepasst, um neue Anforderungen zu erfüllen. Der Alterungsprozess lässt sich trotz sorgfältiger Pflege nie ganz aufhalten und so erhält irgendwann jedes System den Stempel „legacy“. Legacy Systeme unterstützen aber weiterhin wichtige geschäftliche Tätigkeiten. Wie führt man diese Systeme also zurück in die Gegenwart und bereitet sie auf die Zukunft vor?

Blog-Post

Type-safe SQL queries in Java and Rust

The Type-Safe Web Stack, Part 3

Artikel

Nicht mehr Open-Source

Was kann man tun, um sich vorab dagegen zu wappnen, plötzlich für eine wichtige Technologie einem Anbieter ausgeliefert zu sein? Kann es auch eine valide Entscheidung sein, das Risiko bewusst in Kauf zu nehmen? Und sind die Risiken, die sich bei Verwendung von Open-Source-Technologien ergeben, per se geringer als bei kommerziellen Alternativen? Wie geht man damit um, wenn eine Technologie, die man verwendet, plötzlich nicht mehr Open-Source ist? Ist es sinnvoll, zu einem Fork zu wechseln, und welche Risiken bestehen dabei?

Artikel

Die Ökonomie von Gut & Crypto III

In den ersten beiden Teilen zur soziotechnischen Betrachtung von Crypto-Technologien ging es um Vertrauen und die Rolle von Vermittlern bei Transaktionen. Dieses Mal soll der Gegenstand der Transaktionen im Mittelpunkt stehen: Geld.

Blog-Post

Type-safe HTML templates in Java and Rust

The Type-Safe Web Stack, Part 2

Artikel

Die Ökonomie von Gut & Crypto II

Im vorherigen Teil dieser Kolumne wurde die soziale Funktion und die Funktionsweise von Vertrauen betrachtet und die Frage gestellt, inwiefern Technologie diese Funktion unterstützen oder sogar übernehmen kann. Diesmal soll es um die Frage gehen, inwieweit Vermittler dabei eine Rolle spielen und welche Auswirkungen Technologie auf diese hat.

Blog-Post

gRPC

One of the main tasks that business sets for IT as an industry is the creation of effective software, according to criteria that clearly meet the needs of this business. On the other side, one of the main prerequisites for achieving the goals that a business sets for itself is the ability to hire specialists who can create a product in the shortest possible time and/or effectively maintain it. Accordingly, to achieve this, the technology stack used, i.e. tools, must be mature enough, and widely used in the market.

Blog-Post

Type-safe HTTP routing in Java and Rust

The Type-Safe Web Stack, Part 1

Artikel

Was ist eigentlich htmx?

Nicht nur, aber vor allem im JVM-Umfeld stößt man in letzter Zeit immer wieder auf die Bibliothek htmx. Das Versprechen von htmx ist dabei nichts Geringeres, als das fehlende Puzzlestück von HTML zu sein. Deswegen wollen wir uns hier diese Bibliothek im Detail anschauen. Schließlich sollten wir in der Lage sein zu beurteilen, ob es uns in unseren Projekten hilft oder ob wir doch nach etwas anderem suchen sollten.