I write on tech-related topics, mostly in English.
Items followed by a glowing star ("🌟") are the most popular articles.
Selecting a Random Object in S3 (and in SQL, and others)
By using UUIDv4 identifiers as names or hash hex digests, there is a nice trick to efficiently select a random item as long as the database support querying with a range condition (S3, SQL, DynamoDB, etc.)
Implementing a Lock-Free Snowflake ID Generator
Lock-free programming is hard to get it right, and modern mutexes (futexes) are generally fast when contention is expected to be low. However, I did this interesting exercise to learn more on lock-free techniques.
Using the Ninja build system to generate this site
This static website is generated with a Python script that produces a
build.ninja file which is then
processed by the Ninja build system to generate the final HTML files.
Maybe We Don't Need UUIDv7 After All
In the last weeks, the topic of interest seemed to be UUIDv7 identifiers and how they solve DB index problems caused by random identifiers such as UUIDv4 IDs.
Secure DNS (DoT & DoH) is not enough
Enabling DNS-over-TLS or DNS-over-HTTPS is now easy on smartphones and non-tech savvy machines. In conjunction with HTTPS, it's a great step towards a privacy-friendly browsing experience. Well, almost...
DNS Leak: How it Works and How to Implement It
Checking for DNS leaks is a technique to guess a client's ISP, even when it is connecting through a VPN or some other proxy service. Implementing a DNS Leak check is pretty straightforward.