Blog & Articles

Blog Post

Compacted State Feeds

Event notification vs. Event-carried State Transfer vs. Delta loads. How to design good event architectures for mutable data?

Article

Es lebe die Bürokratie!

Die Digitalisierung hilft, Bürokratie zu reduzieren, glaubt man. Warum das so einfach nicht ist, erklärt diese Kolumne.

Blog Post

Was treibt dich an?

Wie unterschiedliche Auslöser unterschiedliche Ansätze der Softwaremodernisierung bedingen

Article

Automatisierte Code-Wartung mit OpenRewrite

In Teil 1 dieser Serie habe ich gezeigt, wie OpenRewrite im Rahmen von Softwareentwicklungsprojekten zur Automatisierung von Code-Wartungsaufgaben verwendet werden kann. In diesem Beitrag zeige ich nun, wie man eigene OpenRewrite-Rezepte schreibt. Das hilft Dir nicht nur dabei, Refactoring-Aufgaben auszuführen, für die es keine öffentlich zugänglichen Rezepte gibt, sondern auch dabei, zu verstehen, wie OpenRewrite unter der Haube funktioniert.

Blog Post

Rooting Out Issues: JPA and Lombok Combination Problems Demystified

Ever encountered perplexing issues with JPA and Lombok’s @Data annotation when handling entities in Java? This blog post explores unexpected behaviors, especially with auto-generated IDs, in conjunction with equals and hashCode methods. Learn about identity and uncover how you can resolve these challenges forever.

Blog Post

Die Anatomie eines erfolgreichen Teams

…und worauf Sie bei der Zusammenstellung eines erfolgreichen Software-Entwicklungsteams achten sollten

Blog Post

Schema Evolution

Using Kafka, sooner or later you might want to describe a schema to specify your data structures. Since software continuously changes during it’s lifetime you’ll also have to evolve your schema. In this article we’ll discuss approaches and tools which can guide you in the realization of your schema evolution.

Article

Automated code maintenance with OpenRewrite

With the large number of software development projects in most organisations, keeping these projects up to date with the latest security patches and framework updates can be quite a task. OpenRewrite is a library that provides an automated solution to this problem. Using recipes written in Java, it can perform large-scale source code refactoring during the build process, preserving as much of the original code as possible. In this blog post, I will explain how OpenRewrite works and how you can use it to refactor your code base.

Blog Post

Micro Frontends With Ionic And Capacitor

Article

Die Ökonomie von Gut & Crypto I

Der Hype um Crypto-Technologien ist etwas abgeklungen. Ein guter Zeitpunkt, die Möglichkeiten und ihre soziotechnischen Aspekte strukturiert zu betrachten. Die folgenden Kolumnen betrachten einige der Themen, die im Zusammenhang mit Crypto-Technologien immer wieder benannt werden oder für die sie Lösungen versprechen.

Blog Post

Testing your GitLab CI/CD pipeline

If you develop a pipeline as a service for other development teams you should treat it as a product and establish product development processes, a versioning strategy, etc. around it. Besides that, as potentially many teams will use and rely on your pipeline you want to make sure that new features don’t break existing functionality. This ensures that your customer base remains happy and able to deliver business value. Therefore you need some sort of testing and we will demonstrate a way to (integration-) test your GitLab CI/CD pipeline.

Blog Post

Mit Reviews in Legacy-Situationen orientieren

Article

JDK 21, the next long-term support release

The newest JDK release, version 21, appeared on September 19th. A number of developers view it as a long-term support release that will be supported for at least the next five years. As many applications will presumably be updated to version 21 from JDK 17, the last long-term support release, we would like to take this opportunity to examine the relevant changes from 17 to 21.

Article

Containers for tests and local development with Spring Boot 3.1

Spring Boot 3.1.0, the most recent minor release of Spring Boot 3, appeared in May. In this article, we will be taking a look at how the new support for Testcontainers and Docker Compose can help us with tests and local development.

Article

Testing in Spring Boot applications

Slice it up, please

Blog Post

How to bootstrap a tech conference with a 100% women+ speaker lineup

A tech conference focused on data and AI in the midst of a hype around machine learning, and LLMs in particular. Fair enough. But what we had in mind when planning the first edition of the Women+ in Data and AI summer festival in 2023 went beyond the latest trends in data engineering, machine learning, data science, and MLOps. We wanted to celebrate the excellence of women+ in the field. And to take it a step further, we wanted to provide our speakers and attendees with a safe and supportive environment - not only for learning, but also for networking and personal growth. Did we succeed?

Article

No future-proof architectures!

Architecture: The term itself radiates stability. It seems clear, then, that good architecture should be future-proof. But precisely this goal often leads to problems. Does that mean it is better not to design future-proof architectures?

Article

Is Platform Engineering the new DevOps?

Article

Willkommen im Himmel

Der Weg in die Cloud ist für Unternehmen mit einer existierenden IT-Infrastruktur nach wie vor mit viel Skepsis verbunden. Neben Fragen zu Sicherheit und Datenschutz steht auch meist im Raum: Bringt die Nutzung der Cloud auch einen Mehrwert für das Unternehmen, für das Produkt und für diejenigen, welche an dessen Lebenszyklus (Design, Entwicklung, Betrieb etc.) beteiligt sind? Neben der Bereitstellung von Rechenkapazität bieten die „Big 3“ (AWS, Google Cloud, Azure) Dienste und Produkte an, welche genau diesen Mehrwert schaffen können. Der nachfolgende Artikel soll dazu ermutigen, diese Dienste zu nutzen, um den meisten Profit aus der Cloud ziehen zu können.

Blog Post

Concise Documentation – Revisited

You think architecture documentation is cumbersome and takes a long time to create? We will prove you wrong.

Article

Paradoxical Safety

Soziotechnische Welten – Teil 8

Article

Remote Mob Programming

The entire team is sitting in an online meeting and developing software together. One person types the code while the others discuss. Sound strange? That is remote mob programming, an exciting style of work for distributed teams. Read on to learn what it’s all about and which advantages and disadvantages you can expect.

Article

What is a Data Product?

A data product is a logical unit that contains all components to process domain data and provide data sets via output ports for analytical use.

Blog Post

Improve your CSP with Style Nonces in Angular 16

Enabling stricter content security policies in your SPA

Blog Post

A natural language calculator

In my prior post I’ve written about how to run a chat with a large-language-model on your PC. This time I want to focus on scripting this with Node.js and letting the AI- and the “normal”-world interact with each other.