AWS CloudWatch allows you to raise alarms when certain values are above or below a given threshold. But what if you want the alarm only when it is between certain thresholds? That’s where metric math comes in. A Simple Alarm In CloudFormation, you can define an alarm quite easily: This will raise an alarm when the amount of requests per minute to the given API goes over (or is equal to) 5000. What if you want this alarm, but a

Here’s a small tip that people don’t often do enough, in my opinion. When developers create some class, variable, or other piece of code that warrants some explanation, many of them add a comment: This is fine if it helps other developers understand what is going on. But it requires them to navigate to the actual file to read the info. One step better is to make these kind of comments available to the autocomplete/Intellisense feature of your IDe/editor: Now

I don’t write about politics on this blog, even though I’m very interested in politics and society. But the death of George Floyd and the ongoing protests make me feel that I should make an exception. Speaking out is the minimum I can do, the minimum I should do. Keep in mind that I’m writing this as privileged person living in Belgium. If you feel any of this is wrong, I’m open for (civilized) discussion. On Police Violence in the

I am the author of the Learning RabbitMQ course on LinkedIn Learning. Chandrashekar asked the following question: I would really appreciate it if you could share some case studies or examples for RabbitMQ. So let’s look at some scenario’s where RabbitMQ is ideal. To do so, I’ll first recap the advantages of using a message broker to integrate systems. Advantages of Message-Based Systems In the first video of my course, I listed these advantages: The sender only needs to know

Here’s an overview of all the ways I’ve found to iterate an enum in TypeScript. I was particularly looking for how to iterate over the value of an enum, but still have the strongly typed value, instead of the underlying (string) value. But I decided to make this post about all possible ways I know of. Default Take this enum: Now add this code to log the values: Note: I’m using a separate log function to show what type the

There’s a Catch-22 hidden in the arguments that many people use to rationalize not writing tests. The Catch A Catch-22 is a situation that you can’t escape out of due to contradictory rules or limitations. In case of automated tests for software, the arguments often go like this. At the start of the project, both developers and managers say that the project is too young and changing all the time. There’s also market pressure to get something minimal out there

It’s that time of the year again, so some best wishes and a minor retrospective are in order. First of all, I wish you and your family and friends all the best for 2020. Also, I hope you can enjoy the holiday season with some time off. 2019 was a busy year for me. My two main achievements were creating a LinkedIn Learning course on RabbitMQ and co-founding a local developers meetup group called Building Bruges. The RabbitMQ course was

I recently had a call with Carlos Schults who will be giving an ASPE course on Git and GitHub I developed. We discussed how talking for an entire working day can be stressful on your voice. I recently experienced the same while recording a LinkedIn Learning course (more on that later). Luckily, my wife is a speech therapist and could provide me with some tips. Disclaimer Everyone usually skips the disclaimer, but this one is important. Not only am I

At a current client, we’re looking to move (most of) our AWS Lambda functions to NestJS. The company has built up an extensive collection of Lambda functions and it’s time to bring some structure and similarity in them. But NestJS is geared towards incoming HTTP calls. This is fine if your Lambda function is behind an API Gateway, but is it possible to use NestJS if your Lambda function should be triggered by SNS events? Uniformity? Those who know me,