When to use Traits in PHP

Traits were introduced to PHP in version 5.4. While classes were introduced in version 4, class inheritance was – as in Java – limited to single inheritance only from the very beginning. Class Inheritance: The Good, The Bad, The Ugly Class Inheritance is a central concept in object oriented programming and exists in every programming … read more …

Data Transformation with Benthos

For a current project, I need to read data from an API, transform and push it to an AWS S3 bucket. Normally I would consider to use a standard programming language for that because there is no “magic” involved. However, one of the requirements is to use Benthos, a tool for “Fancy stream processing made … read more …

Passwords and Managers – My Very Own Story

Keestash

Back in 2010, when I started studying computer science, the very first thing that I have asked myself was: who is responsible for protecting my data?  This was a start of a new journey for me. On the one hand, I was learning a lot of new things, such as OOP, databases, distributed systems (today … read more …

A few Notes about Migrating to Laminas

In 2019 I wrote about a MySQL 5.7 migration at Check24. While it is very exciting when working on new features, it is also a good thing to think about the architecture and use modern frameworks and libraries. Working on the architecture provides also the opportunity to improve source code quality and introduce quick wins. … read more …

Scalable System Design: Design a Contact Tracing System

In this post, I want to address scalable system design and how to grow a system while it’s user base grows. Because talking only about the theory can become boring very quickly, I want to discuss this topic on a practical example. Before I start with the design itself, keep in mind that there is … read more …

Migrate a Keestash App from jQuery to Vue.Js

When starting Keestash back in late 2018, I was focused on the PHP backend and how things might work “out of the box”. The frontend needed just some click handlers here and there and thus, jQuery was the choice. Now, about two years later, things have changed a bit. The frontend got a boost with … read more …

Homeserver Management with Linux and Puppet

During the Covid-19 pandemic I decided to set up a server at home for different use cases. The server, that I very creatively called server1, should be a central place to build a file archive, a git server (an alternative for GitHub projects not intended for the web), a testing server for new applications (such … read more …

Brushing Up My Computer Science Skills – A Deep(er) Dive

This blog post is about Computer Science and my current skills in it. While I started to work on side projects (such as PHPAlgorithms, Keestash or Unread News), I have neglected my theoretical knowledge (and the practice following the theory). I want to brush them up a little and utilize this blog post as a … read more …

Mastering a MySQL 5.7 Migration Successfully

One thing I like at my current employer Check24 is the variety in topics and the trust in me to master them. This motivates me to take my work very serious, but also gives me a lot of responsibility since our products represent Germany’s biggest platform for comparing almost everything. But Check24 is not only … read more …

PHPAlgorithms 1.0.0 is there

Last year, I announced PHPAlgorithms. Since then, I worked a lot on this repository as part of my personal learning progress on Algorithms and Datastructures. Now, I am proud to announce that we have reached our first milestone – version 1.0.0. With the support of the community, we fixed remaining issues and made this release … read more …