| 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 |