Blog & Articles

Blog Post

Der Kickstart für Softwarearchitektur

Zweifellos: Softwarearchitektur ist ein kompliziertes Thema. Dennoch können schon einige wenige Techniken helfen, die Architektur in vielen Projekten zu verbessern. Dazu muss man sie aber wirklich beherrschen und anwenden können. Wie kann man das dazu notwendige Wissen möglichst einfach und effektiv erlernen?

Article

Direnv: Automatic environment care

We all know how it goes – every environment needs its own configuration. Environment variables must be set, a proxy must be used, important scripts must be contained in the path. This is often done with other scripts, but you have to think about how they’re designed.

Blog Post

Documenting software architecture with arc42

A brief introduction

Blog Post

How I regained concentration and focus

For years, I enthusiastically produced content: books, articles, blog posts, and talks – averaging a book and a half plus five articles per year. Since about 2020, my productivity has plummeted – leaving me totally frustrated. There were no external causes, even the pandemic didn’t affect me, thanks to a nice home office and online work options — so no excuses. To find a way out of the misery, I put my own working habits to the test – and diagnosed a massive loss of concentration. ​ ​

Blog Post

Offline with redux

We’ve been writing a web application that supports users being offline without using a service worker. We’d love to share how we’ve done that and what we think are the advantages.

Article

Accessibility – Die Basis für bessere User Experience

Accessibility und User Experience

Blog Post

Advanced Kustomize features

Kustomize’s strength lies in its simplicity, but now and then we have use-cases that need more flexibility and more dynamic behavior. For some of them, Kustomize offers additional features. But as with everything good, it should be used wisely. Otherwise, we fall into the trap of complexity and lose all the good parts of Kustomize.

Article

Infrastructure Self-Service with Crossplane

Introducing container technology and Kubernetes to the development and deployment process allows developers to independently manage deployments of their services without needing to interact with the platform team. This is true for applications but not necessarily for external resources like databases which are probably still in the hands of the platform team because the access management and tooling differs. Crossplane could fill this gap towards a full self-service capability.

Blog Post

We Are Developers World Congress 2022 in Berlin

Our Experience Report

Article

Marktanalyse

Viele Webdienste bieten interessante Datenquellen, halten damit aber hinterm Berg. Wer weiß, wie’s geht, kann jedoch auch undokumentierte Quellen finden und mit Python anzapfen. Im zweiten Teil unserer Inspektion der eigenen Einkaufsdaten erforschen wir die APIs des Supermarktes anhand von Browser- und App-Analysen.

Article

Dependently-Typed TypeScript

TypeScript is a programming language with some special features: Unlike most other typed programming languages, it was developed as an add-on for JavaScript (JS). In the process, Microsoft has placed great value on ensuring that the language integrates as seamlessly as possible into the existing ecosystems (Node.js and browser). TypeScript’s syntax “merely” adds types to JavaScript, while the compilation “merely” removes the type annotations. This has made TypeScript the de-facto standard for building type-safe JS-based applications.

Article

Ich, Du und Conway’s Law

Soziotechnische Welten – Teil 5

Article

Autonomie und Entscheidungen

In der letzten Kolumne wurde gezeigt, warum echte Autonomie in Organisationen nur sehr eingeschränkt existiert. Diesmal soll der Umgang von Organisationen mit der Notwendigkeit von Autonomie im Fokus stehen.

Article

Taproot

Mehr Privatsphäre, weniger Speicherbedarf und bessere Abwicklung komplexer Skripte soll das Taproot-Update dem Bitcoin bescheren. Ein Blick unter die Haube.

Article

cards42 English edition

The activity cards for software architects

Article

Gemischtdatenladen

Genau wie das persönliche Surfverhalten sind die Einkaufsgewohnheiten eines Menschen sehr aufschlussreich – wenn man es schafft, die unhandlichen Daten zu analysieren. Wer so einen Datenschatz im Selbstversuch auswertet, bekommt Einblicke ins eigene Einkaufsverhalten, Erfahrung in der Analyse von Daten und obendrein ein unterhaltsames Programmierprojekt.

Blog Post

Rich code documentation with Jekyll

Static site generation is a perfect fit for publishing documentation. In a recent project, we chose to use a combination of Jekyll and NGINX to build and host the documentation. In this post, I show how to process and include other types of assets.

Blog Post

Code knows no gender

Der INNOQ Girls’Day 2022

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.