Blog

Blog Post

Architektur, die mitwächst

Architektur sollte wachsen und gepflegt werden. Die Geschichte eines Shops.

Blog Post

React: Lessons Learned

This article describes React from a backend programmers' perspective. It is not meant to be a tutorial, and it also does not present any new, fancy patterns or features. Rather, it is an interpretation of React with focus on shedding light on its functional aspects. Many experienced React developers appreciate the framework for being pragmatic, simple and easy to get work done with. This article unveils some of the theory behind this simplicity and shows how the core ideas behind the framework can be carried over to the lower levels of a Javascript application.

Blog Post

Domain-driven Design to the code

Umsetzung des Domänenmodells ohne Technologie-Einfluss

Blog Post

String-Vergleich gegen Timing-Angriffe härten

Der String-Vergleich über die Methode String#equals in Java ist anfällig für Timing-Angriffe. Der oft empfohlene Lösungsansatz ist schwierig korrekt zu implementieren. Aber selbst eine korrekte Implementierung kann bei der Ausführung noch für Timing-Angriffe anfällig sein. Die hier vorgestellte Methode schließt diese Probleme prinzipiell aus.

Blog Post

Aus Erfahrung gut

Kubernetes hat sich in den letzten vier Jahren zur Standardlösung für Container-Management entwickelt. Vor allem zustandslose Anwendungen, die lokal keine Daten speichern müssen, sind mit Kubernetes einfach zu betreiben. Datenbanken und andere Komponenten der Persistenzschicht werden jedoch oft weiterhin klassisch betrieben oder als Service bei einem Cloud-Anbieter hinzugebucht. Operatoren bieten unter anderem die Möglichkeit, auch zustandsbehaftete Software verlässlich auf Kubernetes zu betreiben.

Blog Post

Kubeless - FaaS auf Kubernetes

Blog Post

Injecting polyfills for missing JavaScript functions into WKWebView

Hybrid apps often use the WKWebView to display the web app part. Unfortunately there is no console output to being able to debug it. This blog post provides a guide on how to add polyfills to WKWebView with native code interaction. As a result you will be able to catch the console output of a webpage loaded in a WKWebView and print it to the Xcode debug console.

Blog Post

Integral Evolutionary Organizations

Most companies face the major challenge to get as many employees as possible actively involved, that they do not only do service as a small cog in the big gear, but that they contribute actively, creatively with their various skills and abilities. In his book Reinventing Organizations [1] Frederic Laloux presents integral evolutionary forms of organization as a solution. This text presents the core ideas supported also by other sources.

Blog Post

Design- und Entwicklungs­prinzipien für ein besseres Frontend

Blog Post

Agile Architekturarbeit

Moderne Softwarearchitekturarbeit folgt selbstverständlich der agilen Arbeitsweise in Entwicklung und Projektmanagement.

Blog Post

INNOQcon Remote Edition 2020

Why two days of INNOQcon-remote edition have made my original dislike of online conferences vanish, why cyberspace is enriched by spatial audio and what advantages virtual events can still bring - a follow-up report.

Blog Post

Setup für Online Trainings

Tools und Technik für Online-Schulungen

Blog Post

Remote Training, funktioniert das?

Heimarbeit hat sich mittlerweile – mehr oder weniger freiwillig – bei den meisten Unternehmen in der IT durchgesetzt. Doch beim Thema Schulungen sind viele noch skeptisch, ob das funktionieren könnte.

Blog Post

Scraping a Docker Swarm service with Prometheus

Scraping a Docker swarm service from a Prometheus server that is outside the swarm is not as easy as it might look at a first glance. You have to fetch the metrics of all running service instances, but how to identify and access them?

Blog Post

JSX-Komponenten mit Java nutzen

Eine Lingua franca für HTML-Views

Blog Post

Architektur-Reviews remote durchführen

Software Reviews lassen sich dank moderner Arbeitsmittel remote durchführen und schaffen dabei auch neue Möglichkeiten.

Blog Post

Cross-platform testing of TypeScript code with Jasmine and Karma

I like TypeScript. Writing code that already underwent basic checks (i.e. typechecking) before it can even touch an execution engine is a big win in my book. In particular, TypeScript is nice because it integrates well into the broader JavaScript ecosystem and comes with batteries (i.e. types) included. Unfortunately, most test runners require extra setup to work with tests written in TypeScript. Some even require staggering amounts of configuration.

Blog Post

Ziele, Erwartungen und Vorerfahrungen

User Stories sinnvoll einsetzen

Blog Post

Using Javascript plugins in Go

There are projects, where you want to create an application, that is extensible by other parties without access to the sources iteself or re-compiling the whole binary. This concept is known as modules, plugins or features nowadays. This might be the case if you are creating a client application (e.g. to implement scripting functionality), but also if you want to have your server application extensible by third parties.

Blog Post

Fabric vs. Corda

Während die meisten öffentlichen Kryptowährungen alle ein recht ähnlichen Peer-to-Peer-Ansatz verfolgen, deren Transaktionen sich grob in Bitcoin- oder Ethereum-ähnlich einteilen lassen, gehen die private Blockchains teilweise radikal andere Wege. In diesem Artikel wollen wir die beiden Platzhirsche Hyperledger Fabric und Corda miteinander vergleichen.

Blog Post

Dynamische Proxys mit dem JDK umsetzen

Der dynamische Stellvertreter

Blog Post

Effectively Working from Home

For two years, we have been exclusively working from home. In this article, we provide tips on how to become productive working from home through appropriate hardware, software, methods, and communication techniques. And, we show how to stay motivated in the long term.

Blog Post

Remote work

Last week we switched INNOQ to 100% remote work. The reason for this radical (or radical-looking) step was the spread of the novel Corona virus SARS-CoV-2, which needs to be contained. In concrete terms, this means that all our consultants will temporarily work exclusively in the home office.

Blog Post

Requirements Engineering

Requirements the basis of efficient software development

Blog Post

About unit and integration tests

The terms unit test and integration test are typically used as something different, or even opposite. In this blog post I explain why this is misleading and how I prefer to talk about isolation vs. integration instead.