Why I choose Bucklescript

On the meetups I attend, some people know me as the Elm guy. Yet, when reading the title of this post, you can see that I’m going for Bucklescript lately. In this post I’m going to try to explain my choice for Bucklescript. If you are in doubt, maybe some points in this post can help, but my advice would be to just try and research both languages and see for yourself. »

Integrating bucklescript with typescript

Recently I’ve started using Bucklescript (and Reason) over Elm for various reasons (Something I might blog about later). In this post I’m exploring integrating Bucklescript with Typescript. Let’s start with a blank typescript project with webpack You can find the inital commit of a Typescript project here. There is nothing special in this commit, some npm dependencies: source-map-loader, ts-loader, typescript, webpack, webpack-dev-server. The ts-config.json file is generated with tsc --init, nothing is changed. »

A big ball of frontend

Tonight I’m giving a talk at Fronteers about Frontend microservices. Mind you, I don’t want to go into what a microservice is, so a talk about Frontend services is fine as well. What is important for me is that we’re not building a big ball of frontend. We’re paying so much attention to having a good architecture on the backend, with lots of (micro)services but at the same time, we’re building one huge single page application (SPA). »

Exploring aggregate boundaries in event sourced systems

In this post I’m exploring some ways of modelling aggregate boundaries in an event sourced system. This is mostly to crystallise some thoughts that I had after some event storming sessions, but it might be interesting to someone else. The domain I’m using in this post is the domain that Michel Grootjans and I have created for the workshop Playing with projections (We already gave it a few times, for example at DDD Europe and will also give a session at I T. »


The year is over, a new year has come. I know, New Year is an arbitrary point in time but it is a tradition to look back on the past year and have some resolutions for the year to come. So at this arbitrary point in time, lets look back and forward 2016 I’m going to make this short, because I mostly want to look forward! Became an independent software consultant Bought a house with my girlfriend Read lots of books Became a teamleader Lots of other cool stuff 2017 Last month I read Building Jarvis from Mark Zuckerberg where he builds himself a Jarvis in 100 hours. »

Programming Phoenix review

Elixir and Phoenix crossed my path multiple times last year. I read a really interesting tutorial on building a web framework from scratch. Furthermore, Phoenix is really popular as an Elm backend, so I decided it was time to dive a bit deeper and learn myself some Phoenix. It just happens that Program Phoenix by by Chris McCord, Bruce Tate, and José Valim was published recently, so this seemed like a good opportunity to learn more! »


Independent Software Consultant Thomas Coopman has been fascinated with computers since he was a kid. Playing around at first, became programming later and after learning some programming for himself and a small detour starting studies for nursing, he went on and studied Master of Informatics at the KULeuven. Thomas is a polyglot and loves to learn new languages. His latest language studies have taken him to Elixir, Elm, OCaml and he has a special affinity for functional programming languages. »

Thomas Coopman

Modelling money in Elm

After reading the blog post of Mathias Verraes (@mathiasverraes) on (Type Safety and Money)[http://verraes.net/2016/02/type-safety-and-money/], and after doing a real short modelling attempt in Haskell at Socrates Belgium, I wanted to try to model Money in Elm. I don’t want to go to deep and too far so I’ve set some basic constraints for myself: You cannot add money of different currencies (you need an explicit conversion) - Add constraint We also want a Price. »


Welcome to the my new site written in hugo. While busy, I’ve set up https via letsencrypt. (see tutorial. You can find the source code of the blog here. This is a reboot of my site, and an attempt to blog some more. So without further ado, let’s start blogging :) »

Thomas Coopman on #general,

Testing ES6 code

Recently, I’ve changed my webpack workflow, and switched to 6to5, to be able to write more of my React code in ES6 than the current jsx transpiler supports (and because 6to5 just rocks!). You can find this workflow in my boilerplate-webpack-react project. Switching was easy. I’ve just replaced jsx-loader with 6to5-loader and everything worked correctly. Writing code and developing is a breeze with this workflow, especially with react-hot-loader. I didn’t look into writing test though yet, and it took me a little while to find out how to do it, so I explain it here. »