Let's talk about code

Hi, I’m Michiel. I’m a professional programmer for more than a decade. I work mostly in PHP and javascript, mainly in Magento and Laravel. I write testable code and love to give testing workshops to you and your colleagues. You can hire me for freelance/consulting jobs.

Contact me Hire me


WordPress, WooCommerce, GitHub Actions, Continuous Deployment, Deployer, Cypress, End-2-End Testing

Automating WordPress and WooCommerce updates

One of my customers has a WooCommerce webshop with a high revenue. They also have quite a few plugins, and manually updating takes quite a lot of time. Let's see how we can change that.
Warden, Magento 2, Magento 2 local environment, Webgrind

Using Webgrind with Warden

Need to profile a project and don't have access to Blackfire? You can use Xdebug to achieve a similar result.
Magento 2, Magento 2 local environment, Hyvä

Installing Hyvä through the CLI

Need to install Hyvä in a fast and easy way through the CLI? In this article I will explain to you how I achieve that.
WordPress, GDPR, GitHub Actions, Continuous Integration

Make GDPR safe backups for WooCommerce

A client of mine runs on WordPress. But this has a lot of privacy-sensitive data in their backups. I don't want this data in my local system. Let's see how we can solve this.
Magento 2, Continuous Deployment, GitHub Actions, Deployer

Deploying Magento using Deployer and GitHub Actions

This guide walks you through Magento 2 deployment, covering Deployer Plus, Hyvä support, preparing Magento, and leveraging GitHub Actions for an efficient process.
Magento 2, Magento 2 testing, Magento 2 local environment

Using a debug.php with Magento

Sometimes you have some code you want to test, but you don't want to go the full module/controller route, but the code is too complex for magerun dev:console. This article is for you.
Magento 2, Testing, Integration test

Testing the email sending in Magento 2

Sending emails in Magento is a huge PITA. But testing if an email actually is sent, and checking the contents, is actually quite simple.
Magento 2

Invoking javascript in the Magento frontend

There are multiple ways in Magento 2 how you can use Javascript in the frontend. In this post I'll go over the options.

Using Xdebug 3.0 with PHPStorm

Yesterday was Xdebug 3.0 released, but i broke my ability to use breakpoints with Xdebug. In this blog i describe the steps i took to fix this.
Magento 2, Magento Proxy, Coding tips, di.xml

WTF is a proxy in Magento?

Proxies in Magento allow you to wait with the rendering of the object until it is actually needed, but what does that even mean?