Sign in

Software Engineer at Hoppinger (Rotterdam, The Netherlands) • Student MSc Software Engineering • Functional programming enthusiast

Demystifying React by building our own, including a virtual DOM, stateful components and lifecycle hooks

Photo by Johannes Plenio on Unsplash

In the past decade we have seen massive changes in the way how web applications are developed. …


Create and edit online Excel files from your application

The example application we will be creating with an Excel export feature

Microsoft’s Excel has been one the biggest applications to be ever released for business software. Even today, in a world with ‘big data’, ‘data lakes’ and more fancy buzzwords a lot of companies still primarily use Excel for their administration and Business Intelligence. And even if if tools like Power…


Make your React application part of the Microsoft 365 ecosystem

The file picker that we will be creating

The Microsoft 365 platform has really taken of in the last decade with a lot of transitional enterprises finally moving their IT-landscape to the cloud. For developers this means that there is more and more value to be gained by integrating their applications with those cloud environments. …


Photo by Tim Gouw on Unsplash

Cross-Origin Requests are a part of the HTTP specification that has driven many developers to the limits of their sanity for how seemingly complex it is to make two websites talk with each other. In principle CORS actually exists to make this easier: it allows an opt-out for the same-origin…


Server-side events in the Chrome dev-tools

In modern web development seeing data on websites update in realtime is very common. Look for example at the courier on the map of your Takeaway order or at the ETA on a track-and-trace page for the delivery of your new shoes. …


Photo by Jessica Ruscello on Unsplash

Creating a collection library for continuations

Last week I published an article on continuations in TypeScript. In that article, I mentioned that continuations (unlike promises) act like collections of values that start existing over time. In this article I want to explore this further and see how much your traditional array has in common with continuations.


Abstracting common patterns in TypeScript

Photo by Bruno Figueiredo on Unsplash

A major challenge while developing an user interface is dealing with the events that are triggered by user interaction. Not only are there often many possible events that can occur at any given time, the order in which events get triggered is also variable (or they can happen simultaneously). …


Five rules for designing great states

Photo by Daniel McCullough on Unsplash

Type-driven-development is a programming style where you first define types and extract functions from those types. …


Sorted and heap-based priority queues explained

Photo by Hal Gatewood on Unsplash

Queues and stacks are used in programming to process a collection of items in a certain order. Those data structures work either with a first-in-first-out or last-in-first-out system in which the order of processing is always directly coupled to the order of insertion. However, sometimes you need to have more…


Fuzzy string comparison demystified

Photo by Jason Dent on Unsplash

Fuzzy string matching is something that has many applications in programming but is not that trivial to implement. There are a lot of different ways two strings can be different while still looking similar to the human eye. One (programmable) way to determine the ‘sameness’ of two strings is to…

Wim Jongeneel

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store