Blog

I've been writing online since 2016, mostly about web development. In total, I've written 36 articles on this site. Use the search below to filter by title. They've been viewed a total of 642,992 times.

Popular this month

AI and the Complexity of Code

––– views

Large Language Models like ChatGPT and CoPilot have a dual role in simplifying and complicating software development. Using a simple experiment this post explores how LLMs often lead to an increase in code complexity.

Using React Hooks with canvas

––– views

An intro to the React hooks useState, useRef and useEffect

Why I Prefer Trunk-Based Development

––– views

Moving away from the structured Git Flow to a more continuous approach with only one main branch.

Code Colocation is King

––– views

A simple principle to help structure code better

Rising Temperatures in The Netherlands

––– views

Visualizing the weather anomalies in rainfall, sunshine and temperature in the Netherlands using data from the Dutch Meteorological Institute (KNMI).

Phoenix LiveView Cursors

––– views

Part 2 of my tutorial creating "live cursors" as seen in Figma. In this tutorial, I'll be using Phoenix LiveView to create the same feature.

All Posts

AI and the Complexity of Code

––– views

Large Language Models like ChatGPT and CoPilot have a dual role in simplifying and complicating software development. Using a simple experiment this post explores how LLMs often lead to an increase in code complexity.

Displaying Aranet4 CO2 readings on my website

––– views

Tutorial on how to display real-time CO2 measurements from an Aranet4 monitor on my website using a Raspberry Pi.

Elder Race, book review

––– views

I read "Elder Race" by Adrian Tchaikovsky, a sci-fi novel that explores the concept that any sufficiently advanced technology is indistinguishable from magic.

Rising Temperatures in The Netherlands

––– views

Visualizing the weather anomalies in rainfall, sunshine and temperature in the Netherlands using data from the Dutch Meteorological Institute (KNMI).

Why I Prefer Trunk-Based Development

––– views

Moving away from the structured Git Flow to a more continuous approach with only one main branch.

Next.js Docker Containers with Azure Pipelines

––– views

An elegant solution for providing the correct environment variables in the Docker build phase.

Accessible router links in Angular

––– views

About the routerLink directive and how to make sure it's accessible

Progressively enhanced dark mode

––– views

Adding a dark theme to my website using NextJS 13 and React Server Components

AI Enhanced Learning

––– views

How to use AI to create personalized learning experiences

Why a plant-based diet is a good idea

––– views

My arguments in favor of eating less meat.

Guest post by ChatGPT

––– views

I asked ChatGPT to write a blog post about its impact on the way developers write code. The contents might surprise you.

Reading Notes Regenesis

––– views

Regenesis: Feeding the World without Devouring the Planet. By George Monbiot.

Plotting the age of parliament with Livebook

––– views

A tutorial for Livebook, an interactive coding notebook for the Elixir programing language.

New Job at Rabobank

––– views

Some career news! Today I'm joining Rabobank as a frontend lead for the Wholesale & Rural Innovation department.

Phoenix LiveView Cursors

––– views

Part 2 of my tutorial creating "live cursors" as seen in Figma. In this tutorial, I'll be using Phoenix LiveView to create the same feature.

On returning to the office

––– views

Some advice from the Stoic philosopher Seneca for workers returning to the office after the pandemic.

Live user cursors with Phoenix Presence

––– views

A tutorial for creating live cursors as seen in Figma. A step-by-step guide focused on beginners (I'm learning Phoenix myself).

Clean code is a phase

––– views

Why it's better to be kind than to be clean.

Adding Tailwind CSS to a Phoenix project

––– views

With the official mix task it has become very easy to add Tailwind to any Phoenix project. To make it even more straightforward I've written this quick step-by-step guide.

React components should read like a book

––– views

How the ordering of functions can make component files easier to read.

One command to run it all

––– views

Why mocking all external requests for your app is worth it.

Of Bundles and Barrels

––– views

Why index barrel files can lead to large bundle sizes

Code Colocation is King

––– views

A simple principle to help structure code better

Using Svelte to create a scroll video effect

––– views

Tutorial on how to create a scroll video effect using Svelte’s powerful bind command.

Programming quotes

––– views

A collection of great programming quotes

mobx-state-tree

––– views

A first look at the state management library mobx-state-tree and a comparison with Redux Saga.

303 See Other

––– views

Last week I learned a few things about how redirects and 303 status codes are handled in the browser.

Accessible SVGs in React

––– views

How to let screenreaders read the title of an SVG using React

Brutalist CSS

––– views

196 bytes of minimal CSS

Forgit me nots

––– views

Git commands I keep forgetting

Reading notes Programming TypeScript

––– views

Stuff I don't want to forget from the Book Programming TypeScript.

Using React Hooks with canvas

––– views

An intro to the React hooks useState, useRef and useEffect

Reading notes Accelerate

––– views

Accelerate gives a scientific analysis of what makes IT organizations successful. I've listed the most important ones (from a developer perspective)

Reading notes CSS In Depth

––– views

Review of a book for programmers who have always considered CSS to be an (unpleasant) afterthought

API testing with Jest

––– views

Testing async API calls using Jest’s mocking features

Generating PDF's with Express

––– views

A fun little tutorial of how to create a PDF using a web form, Express and PDFKit