Blog

Blog Post

Understanding decomposed

I think we can all agree that having our codebases more readable and understandable would make our lives much easier. In this post, I’m trying to point out at least a few ideas that influence understanding.

Blog Post

Technical Debt Just Happens

“Technical debt” is a great metaphor to reason about the quality of a software project. But a closer look also reveals some problems and shows approaches how to deal with software quality even better.

Blog Post

Microservices? Or Rather Monoliths?

After the Hype

Blog Post

A Playground for Testing OpenID Connect

This post describes how you can set up a development environment in order to play around with your OpenID client implementation. When running your application in a cluster, it can be difficult to test how it will behave behind a load balancer. One factor that can be particularly difficult to test is when you are communicating with an OAuth 2.0 or OpenID Connect server which expects that a request will be redirected back to the same application instance that it came from.

Blog Post

Native Clojure with GraalVM

The newly-released GraalVM changes the status quo in the realm of JVM-based programming languages. In this instalment we’ll explore its impact on Clojure. We’ll start small, but by the end we’ll compile an entire Ring web application into a self-contained native binary.

Blog Post

Spring-less testing

Blog Post

Secure Kubernetes Cluster

Containers and Kubernetes have greatly simplified the way we bring software into production. Applications can be packaged in container images and run on a Kubernetes cluster with 5000+ nodes. However, it should not be forgotten that, despite being encapsulated in containers, various aspects of safety still have an important role to play.

Blog Post

dprox – Declarative Reverse Proxy

Reverse proxies don’t have to be a pain when it comes to local development.

Blog Post

Taking Screenshots of DOM Elements

Blog Post

Mundane Bash Tips

Various tips and patterns for writing shell scripts.

Blog Post

Enforce strong passwords!

Frequent leaks of large user databases highlight how important it is to enforce strong passwords. Let’s discuss what makes a strong password and why it is a good idea to additionally check it against a dictionary.

Blog Post

Have YOU been pwned?

How to check your passwords securely and effortless

Blog Post

It All Looks the Same to Me

In the previous post, pHash helped us to summarize our photo album. Now it’s time to employ BK-trees and efficiently search through the metric space of perceptual hashes. Let’s roll up the sleeves; more Rust awaits!

Blog Post

The language of maths is not the language of your business

Abstractions from category theory can be powerful. But there are reasons why you may want to keep your domain model free of them.

Blog Post

Formatting with first-class types

Stringly-typed APIs under strict supervision.

Blog Post

That looks oddly familiar

Perceptual hashing is an exciting technique for processing media files and finding similar content. In this post, we combine Rust and pHash to find perceptual similarities in our photo library.

Blog Post

Carbon dioxide monitoring with Rust, InfluxDB and Grafana

Carbon dioxide monitoring with Rust, InfluxDB and Grafana.

Blog Post

Media Art Opens Up New Perspectives

INNOQ Digital Art Edition 01

Blog Post

Supporting understanding with simplicity

Why do we even talk about simplicity? Why is it such a hot topic? Why is nobody praising complexity? Why do things like the KISS exist?

Blog Post

What’s in a Name: Evaluate

The term evaluation is often used in the context of system and architecture reviews. In my opinion, this term is often misleading and such activities should be named differently.

Blog Post

Elm in the wild: A Sandwich Delivery Game

Blog Post

ROCA-Compliant Table Sorting

The article presents an easy way to enable table column sorting without JavaScript. In addition to the avoided complexity, the solution is also compliant to ROCA.

Blog Post

Remain resilient, fail fast

Keep your systems resilient to broken connections and unreliable networks. Unless it’s start-up time.

Blog Post

Marrying Rails, Turbolinks and JavaScript Custom Elements

Blog Post

Rendering Self-Contained Custom Elements

This is a response to Paul Kinlan’s post on creating custom elements, explaining how JSX can be used for declarative templating.