| Preventing outages with pkill's new --require-handler flag | 2025-05-13 | 
| Creating controllable D state (uninterruptible sleep) processes | 2024-02-05 | 
| Signals in prod: dangers and pitfalls | 2022-09-27 | 
| tmpfs inode corruption: introducing inode64 | 2021-07-02 | 
| Programming/gaming with the Kinesis Advantage 2 | 2020-11-16 | 
| mutt support for Gmail's "mute" feature | 2020-06-12 | 
| psi-notify: Alerting before CPU/memory/IO becomes oversaturated | 2020-05-06 | 
| Unprivileged userland containers without root or userns | 2020-04-13 | 
| "1195725856" and other mysterious numbers | 2020-01-13 | 
| Linux memory management at scale | 2019-07-18 | 
| The curious case of stalled squashfs reads | 2018-04-17 | 
| In defence of swap: common misconceptions | 2018-01-02 | 
| Adding power related targets to systemd | 2017-10-29 | 
| cgroup v2: Linux's new unified control group hierarchy | 2017-03-01 | 
| Toggling Yubikey (and other input devices) on/off on a timeout | 2016-10-22 | 
| X freezing as "systemd-logind: got pause for [...]" | 2016-10-18 | 
| Cleaning, muxing, and extracting subtitles using ffmpeg and the Python srt library | 2016-09-04 | 
| SRECon Europe 2016 | 2016-07-20 | 
| Arch Linux on the T460s — first thoughts | 2016-05-18 | 
| Lessons learned running SSL/TLS at scale | 2016-02-17 | 
| Auto-merging successful builds from Travis CI | 2015-09-27 | 
| Removing namedtuple docstrings for Sphinx | 2015-09-20 | 
| Folding Python docstrings in vim | 2015-02-26 | 
| Mandarin learning resources and advice | 2015-01-29 | 
| Migrating Jekyll to Amazon S3 and CloudFront | 2014-10-03 | 
| Using multiple isolated SSH keys with agent forwarding | 2014-06-05 | 
| Unlocking storage devices locked using a password made of scancodes | 2014-02-21 | 
| Finding out why a package was held back with apt | 2014-02-10 | 
| Comments on the new Stack Exchange Android app | 2014-01-28 | 
| Backing up EFS and modem on the N7100/t03g | 2013-12-13 | 
| Securely automating rsync to archive sensitive files | 2013-11-04 | 
| Fixing stale SSH sockets in tmux | 2013-08-02 | 
| Archiving deleted mails in Dovecot without using a namespace | 2013-07-10 | 
| Setting up a local GitHub mirror with cgit, gh-mirror, and git daemon | 2013-07-05 | 
| Running fsck on filesystems inside a partitioned image | 2011-06-01 |