Blog & Artikel

Blog-Post

Faking Surrogate Cache-Keys for Nginx Plus

Sometimes you also need to use Nginx as caching layer. Purging the cache for a resource and its variants is often a very tedious task. Surrogate Keys of other caching solutions are a better alternative but are not supported by Nginx yet. Alternatively, you can create something as powerful by combining the different dynamic dimensions of a resource to a cache key variable which then is appended to a custom cache key. This way, the * -wildcard purging of Nginx can be used to purge all cache entries related to a certain resource with a couple of map directives.

Blog-Post

Structured Logging with Structured Arguments

How to make better log statements with Structured Arguments

Blog-Post

Nachhaltigkeit bei INNOQ: Marketing

Blog-Post

UX-Basics

Dieser Post gibt einen kurzen Überblick über die Begriffe Usability, User Experience, User-Centered Design und Human-Centered Design und grenzt diese gegeneinander ab.

Blog-Post

Aeternity Smart Contract Deployment

The Forgae framework offers developments tools to easily test and deploy Aeternity smart contracts, and start a local environment on the developer’s workstation.

Blog-Post

Aeternity Smart Contract Development

Blog-Post

Warum erreiche ich meine EC2-Instanz nicht?

Die EC2-Instanz ist aufgesetzt, aber lässt sich partout nicht erreichen? Diese Checkliste hilft, den Grund dafür aufzuspüren.

Artikel

Wider die SPA-Fixierung

Die Vorteile einer klassischen Frontend-Architektur für Webanwendungen, bei der die Serverseite für das Erzeugen von HTML verantwortlich ist und JavaScript zwar erlaubt ist, aber nicht die komplette Kontrolle übernimmt, werden häufig unterschätzt. Dabei ist sie den im Moment viel gehypten, JavaScript-zentrischen Ansätzen in vielen Fällen überlegen.

Blog-Post

Remote Mob Programming

Blog-Post

PIM – ein wichtiger Bestandteil der digitalen Transformation im eCommerce

Product Information Management Systeme (PIM) tragen vor allem dem stetigen Wachstum des Online-Handels Rechnung. Sie werden benötigt um die Vielzahl an Produktdaten zentral zu verwalten. Dabei spielt Effizienz und Nutzerfreundlichkeit eine große Rolle.

Blog-Post

Event Storming und Domain Story Telling - Ein Vergleich

„Knowledge Crunching” nennt Eric Evans die wichtigen Gespräche mit Domänenexperten, die in seinem Buch „Domain-driven Design” zu tieferem Verständnis der Fachdomäne führen sollen. In den letzten Jahren haben sich für diese Gespräche zwei moderne Workshopformate etabliert: „Event Storming” und „Domain Storytelling”.

Artikel

Was sind eigentlich Web Components?

In der Kristallkugel

Blog-Post

Microservices mit CherryPy, Teil 1: URL-Routing

CherryPy bietet diverse Möglichkeiten des URL-Routing an. Primär stellt CherryPy dazu drei verschiedene Dispatcher zur Wahl, auf die ich in diesem Blogbeitrag eingehen möchte.

Artikel

„Ein paar Köpfe, ein paar Füße, alles ganz einfach!“

Der Traum eines jeden Produkt-Herstellers: Eine Software, mit der man mit wenigen Klicks und Eingaben ein Produkt konfiguriert, dann auf Den Großen Button ™ klickt und es fällt eine Zeichnung und ein Operationsplan für die Produktion, zudem sämtliche Nachweisdokumente hinsichtlich Normentsprechungen für den Ingenieur, eine Herstellkosten-Kalkulation mitsamt Angebot für den Kunden und ein Lieferprogramm für Spediteur und Lager hinten raus.

Blog-Post

Ethereum Contracts with Truffle Framework

Blog-Post

Functional Service in Scala

Functional programming helps programmers to reason about their codebase using referential transparency and side-effect control principles. Let’s push the limit and make pure-functional REST service using IO Monad from Cats-Effect project. First, we will do that using Akka-HTTP library and standard Scala Future as effect type. Afterwards, we will switch to abstract effect F to have a choice, when it comes to run our embedded program.

Artikel

Distributed Trust

So gut wie jedes Projekt das der Interaktion von Menschen dient verwendet ein Konzept zur Bewertung der Reputation seiner Teilnehmer. Ist die Umsetzung zu Beginn eines Projekts noch einfach und übersichtlich, oft auch etwas naiv, wachsen die Ansprüche im Laufe des weiteren Lebenszyklus eines Systems.

Artikel

Konsensansätze für Blockchains

Auf der Suche nach Einigkeit

Blog-Post

Zeitreise mit LocalDate und DateTimeFormatter

Manchmal hängt das erfolgreiche Ausführen eines Testes tatsächlich davon ab, an welchem Tag er gestartet wird.

Blog-Post

Cooking with Onions: Inward-Pointing Arrows

The onion architecture is an established approach to structuring applications.

Blog-Post

Go lernen an ein paar verregneten Tagen

Besonderheiten und Schwierigkeiten

Blog-Post

Report Generator in Rust

In this blog post, we are going to build a backend application in Rust for converting HTML report into PDF format. Rust is a system programming language which focuses on performance, stability and memory safety. There are thousands of Rust libraries built by its community and we are going to build our application using some of these libraries.

Blog-Post

Domain Events vs. Event Sourcing

Why domain events and event sourcing should not be mixed up.

Blog-Post

Domain Events vs. Event Sourcing

Weshalb Domain Events und Event Sourcing nicht vermischt werden sollten

Artikel

Technologien für Microservices

Microservices führen zu neuen Herausforderungen und machen neue technologische Ansätze notwendig. Microservices-Frameworks sind zwar ein Teil der Lösung, aber sicher nicht der wichtigste. Welche Technologien spielen eine entscheidende Rolle?