20 random bookmarks

2026-04-15

54.

Immutable Systems: NixOS + systemd-repart + systemd-sysupdate

x86.lol/generic/2024/08/28/systemd-sysupdate.html

When you build software for embedded devices (your Wi-Fi router or home automation setup on your Raspberry Pi), there is always the question how to build these images and how to update them.

2026-04-05

53.

Killing the ISP Appliance: An eBPF/XDP Approach to Distributed BNG

markgascoyne.co.uk/posts/ebpf-bng

An open-source, eBPF-accelerated BNG that runs directly on OLT hardware - eliminating expensive centralised appliances

2025-12-17

49.

A security model for systemd

lwn.net/Articles/1042888

Poettering said that he does have a vision for how all of the security-related pieces of systemd are meant to fit together. He wanted to use his talk to explain ""how the individual security-related parts of systemd actually fit together and why they exist in the first place"".

2025-08-27

47.

Inside Windows 3

www.xtof.info/inside-windows3.html

Windows 3 is often said to be just an UI on top of DOS. This article presents some of the inner side of Windows 3.x and will show that it is more ambitious and advanced than that.

2025-07-07

46.

Rewriting Kafka in Rust Async: Insights and Lessons Learned in Rust | Rex Wang

wangjunfei.com/2025/06/18/Rewriting-Kafka-in-Rust-Async-Insights-and-Lessons-Learned#Summary

Achieving high-performance asynchronous Rust projects transcends mere usage of the async/await syntax; it fundamentally relies on a deep understanding of the underlying task scheduling, lock optimization, and architecture design principles.

2025-04-28

41.

Nick Appleton’s blog and stuff - Building a digital filter for use in synthesisers

www.appletonaudio.com/blog/2022/building-a-digital-filter-for-use-in-synthesisers

This is a tutorial on how to build a digital implementation of a 2nd-order, continuously-variable filter (i.e. one where you can change the parameters runtime) that has dynamic behaviour that mimics an analogue filter.

2025-01-22

36.

Packer: How to Build NixOS 24 Snapshot on Hetzner Cloud - Developer Friendly Blog

developer-friendly.blog/blog/2025/01/20/packer-how-to-build-nixos-24-snapshot-on-hetzner-cloud

Step-by-step guide to building a NixOS 24 snapshot on Hetzner Cloud using Packer, with complete configuration files and OpenTofu deployment examples.

2024-12-05

34.

Optimization adventures: making a parallel Rust workload 10x faster with (or without) Rayon | Blog | Guillaume Endignoux

gendignoux.com/blog/2024/11/18/rust-rayon-optimized.html

In a previous post, I’ve shown how to use the rayon framework in Rust to automatically parallelize a loop computation across multiple CPU cores.
In this post, I’ll first explain which profiling tools I used to chase optimizations, before diving into how I built a faster replacement of Rayon for my use case. In the next post, I’ll describe the other optimizations that made my code much faster. Spoiler alert: copying some data sped up my code!

2024-11-07

28.

Model Predictive Control in the browser with WebAssembly | garethx

garethx.com/posts/cart-pole-mpc

Commentary on software, robotics, and computer vision.

2024-09-19

24.

How to Build a Small Solar Power System

solar.lowtechmagazine.com/2023/12/how-to-build-a-small-solar-power-system

This guide explains everything you need to know to build stand-alone photovoltaic systems that can power almost anything you want.

2024-09-10

22.

Notes on Distributed Systems for Young Bloods – Something Similar

www.somethingsimilar.com/2013/01/14/notes-on-distributed-systems-for-young-bloods

Below is a list of some lessons I’ve learned as a distributed systems engineer that are worth being told to a new engineer. Some are subtle, and some are surprising, but none are controversial. This list is for the new distributed systems engineer to guide their thinking about the field they are taking on. It’s not comprehensive, but it’s a good beginning.

2024-09-07

18.

About

www.braggoscope.com/about

Explore the In Our Time archive.

17.

Elixir Dev Environment With Nix Flakes

www.mathiaspolligkeit.com/elixir-dev-environment-with-nix-flakes

In a previous article, I described how to set use Nix and Niv to configure an Elixir dev environment. This setup can be simplified by using Nix flakes instead of Niv.

2024-09-04

16.

the spatula

www.thespatula.io/rust/rust_io_uring_echo_server

In this article we build off what we’ve already learned about io_uring and extend that to build an async echo server.

2024-09-02

15.

Timeseries Indexing at Scale - Artem Krylysov

artem.krylysov.com/blog/2024/06/28/timeseries-indexing-at-scale

2024-08-29

14.

Overloaded fields, type safety, and you

educatedguesswork.org/posts/text-type-safety

The underlying problem we are facing here with all these examples is the same: having the same set of bits which can mean two different things and needing some way to distinguish those two meanings. Failure to do so leads to ambiguity at best and serious defects at worst. That's why you see so much emphasis in modern systems on type safety and on strict domain separation between different meanings.

2024-07-31

12.

Revealing the Inner Structure of AWS Session Tokens

medium.com/@TalBeerySec/revealing-the-inner-structure-of-aws-session-tokens-a6c76469cba7

TL;DR: A world first reverse engineering analysis of AWS Session Tokens. Prior to our research these tokens were a complete black box…

11.

Compiler Options Hardening Guide for C and C++

best.openssf.org/Compiler-Hardening-Guides/Compiler-Options-Hardening-Guide-for-C-and-C++.html

The Best Practices for OSS Developers working group is dedicated to raising awareness and education of secure code best practices for open source developers.

2024-07-15

7.

Calculating Position from Raw GPS Data | Telesens

www.telesens.co/2017/07/17/calculating-position-from-raw-gps-data

2024-07-04

5.

Finding near-duplicates with Jaccard similarity and MinHash - Made of Bugs

blog.nelhage.com/post/fuzzy-dedup