Articles

  • 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 […]


  • Building for Windows without Running Windows

    By the way, I use Linux 1998 2008 2018 2022 will be the year of the Linux desktop. Definitely sometimes before 2028. Maybe before 2038? Ok, maybe not. In any case, I am the most comfortable working (and studying, and procrastinating, and gaming, and procrastinating) on Linux (yeah, yeah, GNU/Linux or GNU+Linux, I know). Actually […]


  • Astronomical Depth Buffer

    Astronomical Depth Buffer

    Guess what. We’re going to talk about floating point arithmetic and what happens when using distances that range from the millimeter to Pluto’s distance to the Sun. Yes, yet again. Floating Point Arithmetic OpenGL uses single precision floating point arithmetic. In any case, that’s what your GPU prefers to use. This means you can be […]


  • Solving Kepler’s Equation 5 Million Times a Second

    Solving Kepler’s Equation 5 Million Times a Second

    I know it is a controversial opinion, but you might need to know where things are when running a simulation. As a bonus, it helps you in knowing what to draw on the screen. Of course, you can just use a position vector (x, y, z) where x, y and z are the coordinates of […]


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.