Blog & Articles

Article

Compliance in hybrid operating environments

Compliance is a key element of corporate governance. It helps ensure that developed software upholds the necessary legal conformity and quality. It is also an unavoidable criterion for modernizing a system landscape, which often goes hand in hand with migration to the cloud.

Article

Generative AI: The End of “Too Expensive” in Business Software?

”We’ve found no use cases.” — No, you’ve got too many. Let’s take a look at how Generative AI will change business software beyond chatbots. What features might become possible that weren’t before, or were just too expensive?

Article

Pragmatische Evolution von Platform Engineering für die Cloud

Organisatorische und kulturelle Transformation

Article

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.

Article

Entwickler skalieren anders als Applikationen

Interne Plattformen können die unternehmenseigene Softwareentwicklung beschleunigen, indem sie die mentale Belastung der Entwicklungsteams reduzieren. Als Abstraktionsschichten konzentrieren sie sich auf die wesentliche Fach- und Laufzeitdomäne. Wenn sie sorgfältig gebaut sind, durchbrechen sie alte Konflikte und erlauben zum Beispiel den Entwicklungsteams viel Innovationsfreiheit trotz (oder dank) hoher Standardisierung. Allerdings erfordert dies ein Umdenken über den Wert von Wiederverwendung und auch eine Kehrtwende von Projekten hin zu internen Produkten. Organisationen, die der Versuchung erliegen, bestehende Betriebsschichten oder Frameworks in “Plattformen” umzubenennen, dürfen daher keine Wunder erwarten.

Article

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

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

Zur Verknüpfung einer Springboot-Anwendung mit Keycloak gibt es wahrlich genug Tutorials im Netz. Allerdings gibt es in den neuesten Versionen beider Anwendungen einige Dinge zu beachten, die sich geändert haben.

Blog Post

Ist das Spring RestTemplate wirklich Deprecated?

Das Mysterium um Springs RestTemplate in 3 Akten

Article

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.

Article

Perfect solution for legacy code

This article is about people who are passionate about improving legacy systems. They are motivated to constantly reduce technical debt to ensure that software systems remain expandable in the long term. Prejudices and stereotypes in our industry prevent us from making the best possible use of these people’s potential.

Blog Post

Boring Innovation?

Article

How To Build a Data Product with Databricks

In today’s data engineering, the focus is primarily on developing modular data products. This article outlines the advantages of modularity over monolithic data pipelines and explains, step-by-step, how to develop data products using Databricks – from defining a data contract to creating and implementing Databricks Asset Bundles, setting up a CI/CD pipeline, and publishing metadata.

Article

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

Article

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?

Article

Identification of Team Boundaries

In the context of numerous initiatives and ideas such as Microservices, Agile, Domain-Driven Design, or Team Topologies, the focus is on establishing autonomous, cross-functional teams that exhibit a fast workflow and can respond agilely to changes. However, the challenge lies in finding appropriate boundaries for the areas of responsibility of these teams. This is the focus of this article.

Article

Die Ökonomie von Gut & Crypto III

Soziotechnische Welten - Teil 13

Blog Post

Type-safe HTML templates in Java and Rust

The current fashion in our industry is to use static and strong typing wherever possible. How fashion-conscious is the Java community when it comes to HTML templating, though? Let’s have a look at what approaches at type-safe or build-time verified HTML templating are available in the Java ecosystem, how they compare to what’s available in Rust, and whether the benefits outweigh the costs.

Article

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

What, Why and How

Blog Post

Type-safe HTTP routing in Java and Rust

In recent years, the trend in our pop-culture industry has been to favour static and strong typing as well as build-time checks over dynamic typing and techniques like late binding. Where possible, you are expected to use the compiler for correctness checks instead of unit tests. Even though the Java language is statically typed, its type system is often considered to be not very helpful. Web applications written in Java are traditionally bristling with weakly typed APIs, heavy use of reflection, and lots of annotations that are interpreted at runtime. Let’s see how far the trend towards build-time checks has been adopted in the Java ecosystem when it comes to writing web applications, how it compares to what’s done in the Rust community, and what benefits and weak points these techniques have.

Article

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.

Article

API gut, alles gut

Schnittstellen für unabhängige Systeme

Blog Post

Bestehende Rich Clients erneuern

Oft gibt es Rich-Clients die als Backoffice-Applikation wichtige Funktionen erfüllen und nun Probleme machen: egal ob es um Support für mobile Geräte oder um einfaches Arbeiten von zu Hause geht oder auch nur um das Sicherstellen der Weiterentwicklung – Rich-Clients kommen mit Ihren eigenen Problemen. Ob die richtige Antwort für die Modernisierung solcher Applikationen immer die Migration zu einer Webapplikation ist, wollen wir in diesem Artikel beleuchten.