About Mocking in Unit Tests

Recently at SCAYLE, I wrote a Laravel service that inserts data using Eloquent into a table like this: For people not familiar with Laravel/Eloquent: The HelloWorld model mirrors the database structure and the save method persists data into the database table. So far, so good. Like for any good and responsible project, I wrote unit … 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 …

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 …

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 …

PHP Exceptions and the Stacktrace

The beginning of this week was a little bit more action packed than planned. After a couple of weeks of coding and intensive testing (seriously!), @rauchbar and me were of the opinion that the feature is production ready and could be deployed. But well, shit happens when you least expect it. PHP Stacktrace As developers, … read more …

Vagrant Getting Started

The last few days, I was busy getting started with Vagrant. Vagrant is a nice tool to create a development environment to ‘just start’ developing. New team members, for instance, do not need to set up, but can simply run ‘vagrant up’ to have a fully configured, ready-to-start environment. Personally, in my case, it is … read more …

Traversing a 2D Matrix

The new years first blog is about algorithms (again😅) – more precisely: 2 dimensional matrices. I want to explore the ways how to find connected 1’s (so called islands) in a 2D array. This problem is also known as the “find the number of islands” or “connected components in an undirected graph“. Disclaimer: I generally use … read more …

How To Simple RBAC

Since I have been asked a few times for a “how to” for my “Role Based Access Control” library, I want to summarize this in a little blog post. Maybe the last one for 2018 🙂 Simple-RBAC ist designed to be lightweight. The main purpose is to grant or deny permissions to users using RBAC. … read more …

Software Engineering, Hacks and Solutions

Do you know the situation where you want to test a little change of a pre-tested code “on the fly” and recognize that it does not work any more? I had this situation several times. Therefore, I decided to create a “flood style” blog post where I want to summarize those moments. This “flood type” … read more …