Me blogging about software engineering, distributed systems, web dev and other stuff.
How Kubernetes handles offline nodes
In this post I want to show you how Kubernetes recognizes offline nodes and how they are handled by the system. This can be helpful to understand and tune rescheduling mechanics or when developing your own operators and resources.
Modern multi-architecture builds with Docker
In this post I explain several ways to build docker images for multiple architectures. Docker’s buildx, manifest, and QEMU are the tools we’re going to use.
What are transducers and why they're cool?
A few weeks ago while I was browsing for reducer-functions, I stumbled upon a term called “transducer”. Because I really like simple and declarative data transformations in code (e.g. with map and reduce), I looked into this topic. At first transducers can be kinda hard to grasp, but once you got it, you’ll have an elegant technique for efficient and composable transformations in your “developer toolbelt”. What does it do? The name “transducer”, consisting of the words “reduce” and “transform”, describes its functionality pretty well....
Share code with React Native
A few days ago, I needed to restructure a react web app in such a way, that we can build a react native app (with create-react-native-app) using as much of the existing code as possible. So the main goal was code reuse/code sharing, while not breaking react native’s reloading or introducing a complicated setup. Restructure the files Let’s start with the initial structure. The web app web contained all code, which was structured reducers, actions, api, components and so on:...
Setting up hot module replacement with Create React App and Redux
If you’re using Create React App (CRA) to scaffold and develop your app you’re familiar with its reloading feature. Whenever you change a component file for example, the whole application gets reloaded automatically just as you would hit the refresh manually. This is a nice feature when you start developing, but as soon as your app gets more complex and has various states and routes for example, it becomes quite cumbersome to put the app in the state it was before the reload....