Blog & Articles

Article

Libraries for command-line applications

Command-line applications are admittedly not the most common due to the start time of the JVM. Their development for internal applications can however be appropriate, depending on the level of knowledge of the team. And thanks to the native compiling with GraalVM, the start time is accelerated. Much of the work involved in a command-line application involves parsing and use of the provided arguments and options. We look at four possible libraries that can assist us.

Blog Post

Awesome presentations deserve beautiful code

Occasionally we need to put parts of our source code onto slides for presentations. The common presentation programs (such as PowerPoint or Keynote) fail miserably at this task because they interpret code as normal text. Syntax highlighting is lost, as are indentations. It looks lousy, and it’s no fun. This post introduces carbon.now.sh, a quick and free solution, created by the awesome people from @carbon_app.

Article

MLOps and Model Governance

Blog Post

Cloud Security

Die Cloud-Welt bringt eigene sicherheitstechnische Herausforderungen. Zusätzlich haben regulatorische Auflagen für den Umgang mit personenbezogenen Daten starke Implikationen, zumal weder Netzwerke noch Speichersysteme von Cloudanbietern vorbehaltlos vertrauenswürdig sind.

Article

Iterierst du noch, oder streamst du schon?

Worin unterscheiden sich Streams und Iteratoren in Java? Man sollte denken, dass beide Ansätze dafür gedacht sind, Dinge wiederholt auszuführen, und dass Streams nur eine komfortablere Art und Weise sind, den Algorithmus auszudrücken. Die beiden APIs unterscheiden sich aber in mancher Hinsicht. Ziel dieses Artikels ist es, die beiden Ansätze zu vergleichen – zum einen mit Blick auf die Ergonomie eines Beispiels, zum anderen auf funktionale Unterschiede bei der Parallelisierung und Mutabilität.

Article

A Comparison of Java HTTP Clients

Many Roads Lead to the Web

Blog Post

Authoring Markdown with Zotero - My Workflow

This post describes an authoring workflow that combines the simplicity of markdown (for writing) with the power of a reference manager (for citing and generation of a bibliography).

Article

Die ökonomischen Vorteile von User Experience Design

Eine positive User Experience erreicht niemand auf Anhieb. Doch es lassen sich schon durch wenige einfache Maßnahmen enorme ökonomische Vorteile erzielen.

Article

Geld statt Kohle

Warum Kryptowährungen auf Proof of Stake umstellen wollen

Article

What Does a Bundler Actually Do?

Frontend development without JavaScript is rarely possible. Seasoned backend developers are then confronted with a completely new toolchain overflowing with unknown technical terms. But there is method behind the complexity.

Article

Benutzer­freundlicher Äther

Smart Contracts, wie sie die Ethereum-Blockchain kennt, sind technisch eine feine Sache. Aber sie brauchen eine Bedienoberfläche, wenn sie nicht nur Entwicklern nützen sollen – dann werden daraus „dezentrale Applikationen“. Um so eine DApp zu programmieren braucht man nur etwas HTML und JavaScript.

Blog Post

Setup für Hybrid-Workshops

So verbindet ihr „vor-Ort“ und „online“

Blog Post

Data Mesh to Go: How to Get the Data Product

You know what a data mesh is? You understand its basic principles? But you don’t know how on earth to get the data product? Then I will show you how to extract your data product from your Domain-driven Design (DDD) artifacts.

Article

HTTP Feeds

Asynchronous interfaces don’t always require the use of Apache Kafka or RabbitMQ. They can also be designed without middleware just by means of HTTP APIs.

Blog Post

The Way of the Request

Tracing a request through Play 2.7/2.8

Blog Post

Software quality in the context of value chains and evolution

Quality goals help to make more informed architectural decisions. However, identifying a set of the most needed qualities is a challenging task. Quality requirements are strongly dependent on the perspective of individuals. The importance of certain qualities also changes over time. In this blog post, I introduce an idea that helps to understand qualities in terms of their relevance (and non-relevance). We discover how qualities interplay with value creation activities and evolution by using the ISO 25010 quality model together with Wardley Maps as a foundation.

Blog Post

Das Test-driven Development für eine Conversational AI

Anlässlich meines kürzlichen Wechsels vom Student zum Consultant schreibe ich in diesem zweiten Blogpost über die Thematik meiner Masterarbeit.

Blog Post

Mein Weg als Werkstudent bei INNOQ

Blog Post

Injecting environment variables into static websites using NGINX

Static site generation is a perfect fit for publishing documentation. In a recent project, we chose to use NGINX as a web server to host the HTML and CSS files. However, we also wanted to protect the site using SSO. This is where things get a bit difficult.

Article

Maven, das unbekannte Wesen – Teil 2

Bereits in der letzten Kolumne haben wir uns mit vier Themen zu Maven beschäftigt. Natürlich war diese nicht erschöpfend und es gibt noch viele weitere Themen, die eine Betrachtung wert sind. In dieser Kolumne betrachten wir deswegen fünf weitere Themen, die meiner Meinung nach wertvoll sind.

Article

Maven, das unbekannte Wesen - Teil 1

Weiterführende Themen zum Umgang mit Maven

Article

Widerstandsfähigen Java-Code mit Resilience4j schreiben

Eines ist beim Betrieb von Software sicher: Fehler und unerwartete Situationen werden eintreffen. Stabile Software sorgt deswegen vor und kann auch mit solchen Situationen umgehen. Diese mit Resilienz oder Widerstandsfähigkeit beschriebene Eigenschaft kann den Unterschied zwischen einer Anwendung, die nicht mehr reagiert oder erreichbar ist, und einer darstellen, die noch ihren Dienst tut. Dieser Artikel beschäftigt sich deshalb mit Stabilitätsmustern und zeigt, wie wir diese mit Resilience4j in Java umsetzen können.

Blog Post

Die Vielseitigkeit eines Product Information Management-Systems

PIM steht für Product Information Management und ist die zentrale Verwaltungsstelle für Produktdaten. Es ist auf vielfältige Weise nutzbar und keinesfalls nur auf wenige Branchen beschränkt. Die Einsatzmöglichkeiten sind, je nach Features und Entwicklungsstand des PIM-Systems, beinahe grenzenlos, so lang die Verwaltung von Daten und Informationen der gemeinsame Nenner ist.

Article

Die Top 5 der Neuerungen in Scala 3

Article

Machine Learning Security – Teil 2

ML kommt immer mehr in sensiblen Entscheidungssystemen zum Einsatz - z.B. in autonomen Fahrzeugen, in der Gesundheitsdiagnostik oder der Kreditwürdigkeitsprüfung. Dies bringt nicht nur neue Möglichkeiten, sondern auch neue Schwachstellen mit sich, die gezielt von Angriffen ausgenutzt werden können. In Teil 2 dieser Artikelserie beschäftigen wir uns mit verschiedenen Angriffstypen in der ML-Security-Landschaft und den dazugehörigen Lösungsvorschlägen.