Blog & Articles

Blog Post

Customer-specific documentation with Jekyll

Static site generation is a perfect fit for publishing documentation. In a recent project, we chose to use Jekyll for rendering our content. As a special requirement, we had to build different “flavours” for different customers.

Blog Post

Was macht ein Trainee bei INNOQ?

Ein halbes Jahr lang lernte ich INNOQ kennen und bin nun fest angestellt. Dies ist ein Artikel über meine Trainee-Zeit und was ich dabei alles gelernt und umgesetzt habe, weil mir Verantwortung dafür gegeben wurde. Dieser Artikel handelt auch davon, welche Chancen INNOQ für jeden Menschen bereithält, wenn man sie nutzt. Überzeug Dich selbst, warum.

Article

Data Mesh: Decentralized Data Analytics for Software Engineers

Article

Querying DNS and LDAP Using JNDI

The Log4Shell vulnerability has also placed JNDI in the spotlight. Although JNDI has been around since 1997, many developers have never heard of it or don’t know exactly what it’s for. To change this, in this article we’ll look at what JNDI is and how we can use it.

Article

TypeScript – Taming the Complexity of JavaScript 

TypeScript celebrates its tenth anniversary in 2022. A good reason to look back at its beginnings – and to provide beginners with everything they need to know for working with this programming language.

Blog Post

INNOQ and Family

Or: Perceptions of working as a Consultant

Article

Continuous Deployment mit GitOps

GitOps ermöglicht einen entwicklungszentrierten Betrieb von Anwendungen und deren benötigter Infrastruktur durch die Verwendung von Tools, mit denen Entwicklungsteams bereits vertraut sind und einem Operator, der in der Zielumgebung lebt.

Article

Next Please!

Despite modern multicore processors, website code usually runs in only one thread. True parallelism therefore does not exist, but a clever programming model still allows “asynchronous” code that is not processed linearly.

Blog Post

Managing Kubernetes Resources with Kustomize

An introduction to a template-free alternative to Helm

Article

Fairness and Artificial Intelligence

Classical software testing cannot simply be transferred to AI. Model governance and internal audits are required to ensure fairness.

Article

Processing JSON in Java

In contrast to many other programming languages, JDK for Java does not provide an out-of-the-box solution for the reading and writing of data in JavaScript Object Notation (JSON). So we have to find a suitable library for performing this task. In this article we therefore look at a selection of appropriate libraries.

Blog Post

CORS extension “Private Network Access”

Understanding the new preflight requests

Article

Eine kleine Geschichte über Qualität…

Du denkst Dir nichts Böses, da bittet Dich Tante Lucy um einen kleinen Gefallen… und Du musst Dich entscheiden, wie Du das angehen sollst. Aber als Belohnung winkt ihr leckerer Erdbeerkuchen, außerdem sind wir doch alle Herausforderungen gewöhnt, oder?

Article

Ethics and Artificial Intelligence

Artificial intelligence is forcing its way into many fields of application. Now it is important that it works in a responsible, secure, and transparent way. The regulation of AI systems is a legal, societal, and technical topic that demands broad awareness and that will become increasingly important in the years to come.

Article

Principles of technical documentation

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.