Blog & Articles

Blog Post

Evolving software like an orchardist

Software systems are usually larger, overgrown structures that developers need to bring back into shape after some time. However, creating an overview of the sprawling conglomerate of software components is challenging, let alone developing a clear plan for moving on. This blog post uses analogies from pruning apple trees to show developers how to evolve their software systems using a value-based approach.

Blog Post

Drawers for Product Owners

The duties of the Product Owner role are a regular topic of discussion. Because the role is understood in a variety of different ways, new and different terms are regularly encountered. It is time to take a different view that considers the relevant context.

Blog Post

Retrospektiven - Teil 3

#3 - Universelle Kategorien

Blog Post

Retrospektiven - Teil 2

Diese Blogpost-Serie fasst meine Erfahrung als Facilitator mit mehreren Remote-Teams in Software-Projekten über eineinhalb Jahre zusammen. Ich stelle Ihnen meine Grundsätze und alle Formate vor, die ich bislang entwickelt habe.

Blog Post

Retrospektiven - Teil 1

Diese Blogpost-Serie fasst meine Erfahrung als Facilitator mit mehreren Remote-Teams in Software-Projekten über eineinhalb Jahre zusammen. Ich stelle Ihnen meine Grundsätze und alle Formate vor, die ich bislang entwickelt habe. Hier kommt nichts von der Stange. Versprochen.

Blog Post

Running an AI Chatbot on Your Own PC

Blog Post

Why Your Team Needs Data Products

Have you ever had the feeling that you or your team spends too much time on individual data research tasks or makes too many decisions based on your gut? Then it might be time for your team to start engaging with data products.

Blog Post

Draw The Diff

Software developers have an idiosyncratic penchant for boxes and arrows. Back when we used to go to the office we penned them on whiteboards. Later, as the force majeure accelerated the digital transformation of our economies, we drew them online.

Article

Babylon as a Feature

Multi-lingual documentation, made simple

Article

Assessing the Sustainability Impact of Startups

As a startup, caring about sustainability should be a priority for several reasons. Firstly, a sustainable product can differentiate your business from competitors and attract environmentally conscious customers and investors. There are various international standards that you can look into when assessing your business’s sustainability, but there is also a European one.

Article

An Introduction to TLA+ and Its Use in Parties

TLA+ is a system for modeling all possible states of a system. On this model, you can then verify certain properties of this system. Smart people can use this to check that their thread scheduling runs all threads equally, or that their work queue will never overflow. In this article, we’ll try and verify the fraught process of ordering pizza for a pizza party as a small introduction to the concepts and syntax of TLA+.

Article

Property-based Testing with “fast-check”

1000 in one blow

Blog Post

How to Encrypt a File on the JVM

You’ve got a secret password and some bytes you’d like to encrypt. JVM has all the tools you need to get it done.

Article

Creating data products with Terraform on AWS

Have you heard of data mesh? Are you intrigued by its potential but uncertain how to get started building data mesh and data products? If so, this article outlines a potential approach and delves into the key concepts behind it!

Article

Tracing in verteilten Anwendungen

Spuren im Microservicedschungel finden

Blog Post

Automated code maintenance with OpenRewrite (Part 2)

In part 1 of this series, I showed how OpenRewrite can be used to automate code maintenance tasks for software development projects in your organisation. In this post, I will demonstrate how to write your own OpenRewrite refactoring recipe. This will not only help you to perform refactoring tasks for which no recipe is publicly available, but will also deepen your knowledge and understanding of how OpenRewrite works under the hood.

Article

Modules – Microservices – Monoliths

Microservices were supposed to solve every architectural problem conceivable. Not too surprisingly, that was not the case. Now themonoliths thatwe have been developing for decades are supposed to be the solutionagain. Inthis discussion, the foundation for developing complex software systems has been forgotten: Modularization, which is far more important than the question of monoliths vs. microservices.

Blog Post

Automated code maintenance with OpenRewrite (Part 1)

Blog Post

Kustomize Enhancement with KRM Functions

For a while, Kustomize has offered the possibility to extend its functionality with plugins that can be implemented in different ways. A new way is to use KRM functions that are not proprietary and can also work with other tools.

Article

Round-robin coding

Remote mob programming typically means one person takes on the role of typist at the screen with an open IDE, more or less typing what the others tell them to. To ensure that everyone stays on top of the work, the role of typist is frequently changed up and the current state of the code is handed over to the new typist. Our simple CLI tool called mob enables such a handover in just a few seconds by bundling the necessary Git operations into concise commands.

Blog Post

How to use Apple Shortcuts to integrate GPT-4o in macOS and iOS

Hey GPT, what’s this email about?

Article

Container-Images mit Buildpacks erzeugen

Im Rahmen dieser Kolumne habe ich mich schon häufiger auch mit Containern und Docker beschäftigt. Obwohl es sich hierbei weder um ein Java- noch um ein direktes Entwicklungsthema handelt, ist es für viele Projekte von hoher Relevanz. Schließlich spielt heute auch der Betrieb von Anwendungen für die meisten Entwicklungsteams eine hohe Rolle und dieser nutzt aktuell in vielen Fällen Container. Hier wollen wir uns mit Buildpacks eine weitere Möglichkeit im Detail anschauen, um zu einem Container-Image zu gelangen.

Article

Blueprints

JavaScript’s approach to object orientation is different from other languages. This hasn’t been changed by the introduction of classes, even if it looks that way at first glance. Read on to learn how this unusual system works.

Article

Diverse Themen und Bibliotheken für Tests in und mit Java

Eine bunte Tüte Gemischtes rund um Tests

Article

What is Sustainable Software?

Environmental sustainability is a very important issue, but software is something virtual, so it doesn’t seem to have an impact, right? Wrong! As software creators, we have a significant impact and can make a difference by incorporating the principles of eco-friendly software development into our understanding and practices.