Articles

  • Float Woes in C

    The C programming language is a gift that keeps giving. Today, we are going to see how a seemingly banal and common operation can hide unfathomable depths of unmentionable horrors. Woes with Integer Coercion What is the problem of the code below? It’s written in C. A Rust enthusiast That’s… a good point. But let’s […]


  • Ham Crypto

    Amateur Radio Amateur radio is about tinkering with the electromagnetic field. This may involve designing analog circuits to shape or unveil the modulation of signals, or sometimes using digital ones to recover information from the noise, or operating multi-hundred-watts transceivers to chat directly with the other side of the world, or lower-power ones to go […]


  • Flexible Array Members: Typical C Shenanigans

    Speed. I am Speed. The one thing that C cares about is speed. Seriously, you might not get the right results, but at least, you will get them fast. Let’s look at two common ways to represent a vector in C. The first one is to just use the built-in array type. This approach is […]


  • Why Undefined Behavior Matters

    So Many Bugs So, you’ve been programming for one month, or for ten years, and you have gotten familiar with Murphy’s and Sturgeon’s laws. And you are wondering if there is some way to catch all the bugs, not just spray-and-pray with regression/unit/integration/system/acceptance testing. Or you are a curious onlooker, wondering why all these programmers […]


  • Continuous Integration and Delivery Made Easy

    These are not really advanced topics, but I wanted to write about them anyway. So here it is. Continuous Integration Sometimes, I report bugs in software. Others, in libraries. Or I can just fix things by myself. And more. Point being: there are lots of bugs everywhere. What do we, software developers, do to avoid […]


About Me

I found the Dark Side in elementary school in a book from the local public library that taught me QuickBASIC. Nowadays, I mostly use Python, C and C++. In the meantime, I got a Master in computer science from École normale supérieure de Lyon because I wanted to really understand how computers work. Then I got a PhD in mathematics from École normale supérieure because cryptography is fun.