41554 blogs · [ { "id": "01a0821c-a7d6-7175-80d2-8a67fd9bfd21", "title": "Gell-Mann AImnesia", "url": "https://huonw.github.io/blog/2026/04/gell-mann-aimnesia/", "published_at": "2026-04-21T00:00:00+00:00" }, { "id": "01a0821c-a7d6-7175-80d2-8a67fe689b50", "title": "Write broken commits for better review", "url": "https://huonw.github.io/blog/2026/04/broken-commits/", "published_at": "2026-04-17T00:00:00+00:00" }, { "id": "01a0821c-a7d6-7175-80d2-8a67fec8b250", "title": "Why don't multi-column indices help queries on the second column?", "url": "https://huonw.github.io/blog/2026/03/multi-column-index/", "published_at": "2026-03-23T00:00:00+00:00" }, { "id": "01a0821c-a7d6-7175-80d2-8a67ffb453bf", "title": "Staying engaged with AI plans: give inline feedback", "url": "https://huonw.github.io/blog/2026/02/ai-plan/", "published_at": "2026-02-05T00:00:00+00:00" }, { "id": "01a0821c-a7d6-7175-80d2-8a67ffb7d608", "title": "magit-insert-worktrees improves status buffers", "url": "https://huonw.github.io/blog/2025/12/magit-insert-worktrees/", "published_at": "2025-12-13T00:00:00+00:00" }, { "id": "01a0821c-a7d6-7175-80d2-8a67ffbbd347", "title": "TypeScript strictness is non-monotonic: strict-null-checks and no-implicit-any interact", "url": "https://huonw.github.io/blog/2025/12/typescript-monotonic/", "published_at": "2025-12-03T00:00:00+00:00" }, { "id": "01a0821c-a7d6-7175-80d2-8a68007a74fb", "title": "Context privateering: debugging custom instructions like a pirate", "url": "https://huonw.github.io/blog/2025/11/piraite/", "published_at": "2025-11-25T00:00:00+00:00" }, { "id": "01a0821c-a7d6-7175-80d2-8a68013c4be5", "title": "Is that a deprecation? Or is it just removed?", "url": "https://huonw.github.io/blog/2025/09/deprecating-vs-removing/", "published_at": "2025-09-08T00:00:00+00:00" }, { "id": "01a0821c-a7d6-7175-80d2-8a68013fb71b", "title": "Convenient 'Copy as cURL': explicit, executable, editable request replays", "url": "https://huonw.github.io/blog/2025/08/copy-as-curl/", "published_at": "2025-08-26T00:00:00+00:00" }, { "id": "01a0821c-a7d6-7175-80d2-8a68015176d2", "title": "Communicating bugs: use a single standalone shell script", "url": "https://huonw.github.io/blog/2025/04/standalone-shell-script-reproducer/", "published_at": "2025-04-11T00:00:00+00:00" }, { "id": "01a0821c-a7d6-7175-80d2-8a6801687af1", "title": "Take a break: Rust match has fallthrough", "url": "https://huonw.github.io/blog/2025/03/rust-fallthrough/", "published_at": "2025-03-05T00:00:00+00:00" }, { "id": "01a0821c-a7d6-7175-80d2-8a6801d51966", "title": "Newtons are a unit of mileage", "url": "https://huonw.github.io/blog/2025/03/ev-newtons/", "published_at": "2025-03-03T00:00:00+00:00" }, { "id": "01a0821c-a7d6-7175-80d2-8a6801f74a4e", "title": "Prefer tee -a, not >>, in CI", "url": "https://huonw.github.io/blog/2025/02/ci-tee/", "published_at": "2025-02-13T00:00:00+00:00" }, { "id": "01a0821c-a7d6-7175-80d2-8a68021ae838", "title": "Async hazard: mmap is secretly blocking IO", "url": "https://huonw.github.io/blog/2024/08/async-hazard-mmap/", "published_at": "2024-08-21T00:00:00+00:00" }, { "id": "01a0821c-a7d6-7175-80d2-8a6802523a23", "title": "GitHub tip-hub: habitual permalinks", "url": "https://huonw.github.io/blog/2024/07/github-permalinks/", "published_at": "2024-07-24T00:00:00+00:00" }, { "id": "01a0821c-a7d6-7175-80d2-8a6803264b05", "title": "10 > 64, in QR codes", "url": "https://huonw.github.io/blog/2024/03/qr-base10-base64/", "published_at": "2024-03-31T00:00:00+00:00" }, { "id": "01a0821c-a7d6-7175-80d2-8a6803aa232d", "title": "Mechanical sympathy for QR codes: making NSW check-in better", "url": "https://huonw.github.io/blog/2021/10/nsw-covid-qr/", "published_at": "2021-10-13T00:00:00+00:00" }, { "id": "01a0821c-a7d6-7175-80d2-8a680488e0e6", "title": "QR error correction helps and hinders scanning", "url": "https://huonw.github.io/blog/2021/09/qr-error-correction/", "published_at": "2021-09-28T00:00:00+00:00" }, { "id": "01a0821c-a7d6-7175-80d2-8a6805607b15", "title": "The joy of cooking (an app)", "url": "https://huonw.github.io/blog/2021/08/home-cooked-app/", "published_at": "2021-08-30T00:00:00+00:00" }, { "id": "01a0821c-a7d6-7175-80d2-8a6805be1e90", "title": "Git worktrees and pyenv: developing Python libraries faster", "url": "https://huonw.github.io/blog/2020/04/worktrees-and-pyenv/", "published_at": "2020-04-15T00:00:00+00:00" }, { "id": "01a0821c-a7d6-7175-80d2-8a6806233e6d", "title": "Myths and Legends about Integer Overflow in Rust", "url": "https://huonw.github.io/blog/2016/04/myths-and-legends-about-integer-overflow-in-rust/", "published_at": "2016-04-29T00:00:00+00:00" }, { "id": "01a0821c-a7d6-7175-80d2-8a680721067c", "title": "Memory Leaks are Memory Safe", "url": "https://huonw.github.io/blog/2016/04/memory-leaks-are-memory-safe/", "published_at": "2016-04-04T00:00:00+00:00" }, { "id": "01a0821c-a7d6-7175-80d2-8a68080e4358", "title": "Rreverrse Debugging", "url": "https://huonw.github.io/blog/2015/10/rreverse-debugging/", "published_at": "2015-10-27T00:00:00+00:00" }, { "id": "01a0821c-a7d6-7175-80d2-8a6808a5d3b7", "title": "simple_parallel 0.3: Revisiting k-NN", "url": "https://huonw.github.io/blog/2015/10/simple_parallel-revisiting-knn/", "published_at": "2015-10-24T00:00:00+00:00" }, { "id": "01a0821c-a7d6-7175-80d2-8a6809a07251", "title": "SIMD in Rust", "url": "https://huonw.github.io/blog/2015/08/simd-in-rust/", "published_at": "2015-08-24T00:00:00+00:00" }, { "id": "01a0821c-a7d6-7175-80d2-8a680a70ca61", "title": "What is SIMD?", "url": "https://huonw.github.io/blog/2015/07/what-is-simd/", "published_at": "2015-07-10T00:00:00+00:00" }, { "id": "01a0821c-a7d6-7175-80d2-8a680aa1699d", "title": "travis-cargo 0.1.3: --no-sudo", "url": "https://huonw.github.io/blog/2015/06/travis-cargo-0.1.3/", "published_at": "2015-06-30T00:00:00+00:00" }, { "id": "01a0821c-a7d6-7175-80d2-8a680b0acbf8", "title": "Announcing Primal: Putting Raw Power Into Prime Numbers", "url": "https://huonw.github.io/blog/2015/06/announcing-primal/", "published_at": "2015-06-08T00:00:00+00:00" }, { "id": "01a0821c-a7d6-7175-80d2-8a680b34793e", "title": "Defaulting to Thread-Safety: Closures and Concurrency", "url": "https://huonw.github.io/blog/2015/05/defaulting-to-thread-safety/", "published_at": "2015-05-26T00:00:00+00:00" }, { "id": "01a0821c-a7d6-7175-80d2-8a680c084b46", "title": "Rust 1.0 in Numbers", "url": "https://huonw.github.io/blog/2015/05/rust-1.0-in-numbers/", "published_at": "2015-05-20T00:00:00+00:00" }, { "id": "01a0821c-a7d6-7175-80d2-8a680c0f917a", "title": "Finding Closure in Rust", "url": "https://huonw.github.io/blog/2015/05/finding-closure-in-rust/", "published_at": "2015-05-08T00:00:00+00:00" }, { "id": "01a0821c-a7d6-7175-80d2-8a680ceaef36", "title": "Where Self Meets Sized: Revisiting Object Safety", "url": "https://huonw.github.io/blog/2015/05/where-self-meets-sized-revisiting-object-safety/", "published_at": "2015-05-06T00:00:00+00:00" }, { "id": "01a0821c-a7d6-7175-80d2-8a680dca2dc1", "title": "Travis on the train, part 2", "url": "https://huonw.github.io/blog/2015/05/travis-on-the-train-part-2/", "published_at": "2015-05-01T00:00:00+00:00" }, { "id": "01a0821c-a7d6-7175-80d2-8a680e06f519", "title": "Helping Travis catch the rustc train", "url": "https://huonw.github.io/blog/2015/04/helping-travis-catch-the-rustc-train/", "published_at": "2015-04-28T00:00:00+00:00" }, { "id": "01a0821c-a7d6-7175-80d2-8a680ee10936", "title": "Little libraries", "url": "https://huonw.github.io/blog/2015/04/little-libraries/", "published_at": "2015-04-27T00:00:00+00:00" }, { "id": "01a0821c-a7d6-7175-80d2-8a680fa5edbc", "title": "Rust infrastructure can be your infrastructure", "url": "https://huonw.github.io/blog/2015/03/rust-infrastructure-can-be-your-infrastructure/", "published_at": "2015-03-17T00:00:00+00:00" }, { "id": "01a0821c-a7d6-7175-80d2-8a681019824a", "title": "Some notes on Send and Sync", "url": "https://huonw.github.io/blog/2015/02/some-notes-on-send-and-sync/", "published_at": "2015-02-20T00:00:00+00:00" }, { "id": "01a0821c-a7d6-7175-80d2-8a68106802bc", "title": "Rust Sydney's first meetup: trip report", "url": "https://huonw.github.io/blog/2015/02/rust-sydney-1/", "published_at": "2015-02-14T00:00:00+00:00" }, { "id": "01a0821c-a7d6-7175-80d2-8a6810b064e0", "title": "Object Safety", "url": "https://huonw.github.io/blog/2015/01/object-safety/", "published_at": "2015-01-13T00:00:00+00:00" }, { "id": "01a0821c-a7d6-7175-80d2-8a68114eb7a1", "title": "The Sized Trait", "url": "https://huonw.github.io/blog/2015/01/the-sized-trait/", "published_at": "2015-01-12T00:00:00+00:00" }, { "id": "01a0821c-a7d6-7175-80d2-8a6811b46518", "title": "Peeking inside Trait Objects", "url": "https://huonw.github.io/blog/2015/01/peeking-inside-trait-objects/", "published_at": "2015-01-10T00:00:00+00:00" }, { "id": "01a0821c-a7d6-7175-80d2-8a6812a7a40f", "title": "crates.io crate graph", "url": "https://huonw.github.io/blog/2015/01/crates.io-crate-graph/", "published_at": "2015-01-04T00:00:00+00:00" }, { "id": "01a0821c-a7d6-7175-80d2-8a6812c611ca", "title": "What does Rust's “unsafe” mean?", "url": "https://huonw.github.io/blog/2014/07/what-does-rusts-unsafe-mean/", "published_at": "2014-07-24T00:00:00+00:00" }, { "id": "01a0821c-a7d6-7175-80d2-8a6812e6923d", "title": "Error handling in Rust: a k-NN case study", "url": "https://huonw.github.io/blog/2014/06/error-handling-in-rust-knn-case-study/", "published_at": "2014-06-11T00:00:00+00:00" }, { "id": "01a0821c-a7d6-7175-80d2-8a681330f531", "title": "Comparing k-NN in Rust", "url": "https://huonw.github.io/blog/2014/06/comparing-knn-in-rust/", "published_at": "2014-06-10T00:00:00+00:00" } ] posts Claim your blog
Back to Huon Wilson
Blog · corpus.blog/blogs/huonw.github.io/posts

Huon Wilson

huonw.github.io

2026

2025

2024

2021

2020

2016

2015

2014