Ayke van Laëthem

Understanding modern mail authentication systems: SPF, DKIM and DMARC

Explains how modern email authentication systems work together to protect the "from" header in email. This makes phishing detectable and spamming more difficult.

Uploading README.rst to PyPI

My experience with making a Python package and uploading it to PyPI. Sometimes, such systems aren't as sophisticated as one might expect.

Managing phone addiction

A few tips on how to track how much you're addicted to your phone and how you can manage it. I give a short overview of how habits work. Then I describe how you can track how much you use your phone and give a few tips on breaking a few of those habits.

Using Arduino on the "blue pill" STM32F103 boards

As I gave up on Rust (for now), I tried setting up the Arduino environment to work with the "blue pill" board. It turns out to be quite easy, although there were a few small issues with the setup. You'll still need a (cheap) SWD programmer, though.

Intro to Rust on the STM32

How to write a simple Rust program for the STM32 "blue pill" board that's sold on AliExpress and Ebay for about $2. It turns out to be not too difficult.

Using AddressSanitizer and Valgrind on Android recovery

How to use memory checking tools inside an Android recovery to detect things like buffer overflows. A recovery system like TWRP is quite different from a normal Android image, so the official guides apply only partially and it needs some manual work to make these tools work. Here's how I did it.

Flashing the HM-10 firmware on a JDY-08

Use CCLoader to flash the official HM-10 firmware on a cheap Chinese JDY-08 device. Unfortunately, the process doesn't result in a working device, but at least I got somewhere.

Using the JDY-08 module

A look at the JDY-08, a cheap BLE module found on the online Chinese markets. It works, but it turns out that it isn't really useful with the original firmware.

Concise version vectors

Concise version vectors is the algorithm behind DTSync. It is a distributed algorithm with low memory complexity, with barely any overhead of adding another replica.

DTSync: bidirectional directory synchronisation between any number of replicas

A new bidirectional synchronization tool like Unison that can synchronize many distributed replicas