Blog

Blog Post

A Brief History of HTTP

HTTP has continuously evolved since the founding of the Internet in 1989. The first RFC document published by the Internet Engineering Task Force (IETF) appeared in 1996. Let’s trace the history of HTTP over the years up to June 2022, when a new series of RFC documents was published standardizing HTTP/1.1, HTTP/2, and HTTP/3.

Blog Post

Platforms, Teams, and APIs: How Do They Fit Together?

One of the major trends in recent years has been Platform Engineering, as many organizations strive for more efficient and fasterdevelopment practices. The term has gained traction since 2018, particularly following an influential article by Evan Bottcher. Looking at the origins of this concept provides valuable insights into the relevance of Platform Engineering today and its potential future developments.

Blog Post

Beyond the hype: An engineer’s journey into ReBAC and AI with the Model Context Protocol

Blog Post

Building Standardized AI Tools with the Model Context Protocol (MCP)

In this article, we’ll explore the integration of Large Language Models and systems built on top of them. The key concept in this space recently is the Model Context Protocol (MCP).

Blog Post

Rules, Tools, and Teamwork

Static code analysis. A necessary evil? A lifesaver? A constant struggle? Let me show you a few important things that might make your life with code analysis easier.

Blog Post

Transcribing podcasts with large language models

Blog Post

RAG: The Architecture of Reliable AI

How can we ensure that AI systems are precise, transparent, and always up to date? All Large Language Models (LLMs) have a cut-off date where their world knowledge ends. And they know nothing about your company’s internal information. Even the leading models still have hallucination rates we can’t completely ignore. Yet they offer enormous potential for productivity, efficiency, and creation. Retrieval-Augmented Generation (RAG) addresses exactly this issue: LLMs are enhanced through targeted information retrieval.

Blog Post

Document Ingestion

How can we transform a pile of diverse documents into a high-quality knowledge base for AI systems? Document ingestion is the critical first step in any Retrieval-Augmented Generation (RAG) system—and often the reason why these systems fail.

Blog Post

Retrieval-Augmented Generation

Bridging General and Domain-Specific Knowledge

Blog Post

Implementing GitOps without Kubernetes

“GitOps only works with Kubernetes as the operating platform!” This persistent misconception about GitOps might explain why it hasn’t become a standard workflow tool for software delivery yet. Most available GitOps tools require Kubernetes. However, GitOps fundamentally means using a version control system (VCS) like Git as an interface for a software agent to handle deployment and operational tasks within a target environment.

Blog Post

When the Worldview is Shifting

Large Language Models (LLMs) can feel like magic. We observe them and imagine that they work in a certain way. Then something surprises us, shattering the illusion and fundamentally reshaping our understanding. In this blogpost I’ll show you one such surprise from my own experience, and I believe that your worldview will have changed at the end.

Blog Post

Better RAG With Hybrid Search

Why the overemphasis on vector search does not solve the problem

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.

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.

Blog Post

Java and its annotations

Stories of code before and without annotations

Blog Post

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.

Blog Post

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?

Blog Post

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

Blog Post

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?

Does innovation always come with the latest technology or can innovation even seem boring? A quick look at a story from my work as an IT consultant.

Blog Post

How To Build a Data Product with Databricks

Blog Post

Type-safe SQL queries in Java and Rust

In recent years, our industry has been in favour of strong typing and build-time verification to make certain classes of bugs impossible. How much influence has this trend had on how we can write SQL queries in Java? Let’s look at how typesafe SQL queries can be in Java, how this compares to what you can do in Rust, and consider the benefits and drawbacks of these different approaches.

Blog Post

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.

Blog Post

Type-safe HTML templates in Java and Rust

The Type-Safe Web Stack, Part 2

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.