Hacker Blogs
Work in progress: 15,409 of 181,233 sites checked so far, more every week · updated 2 Nov 2026Missing a blog? Tell us

Top all-time · #169

A

Alex Kladov

Personal blog · matklad.github.ioprogrammingsystems

Alex Kladov writes matklad, a personal blog at matklad.github.io about programming and systems. Since 2018, 245 different Hacker News readers have linked it 554 times, most often “Rust's Ugly Syntax (2023)”. It is still writing: the last post was on 2026-10-29, and you can follow it by feed.

Visit the blog
554mentions?
14recommend?
245HN people?
2018–2026first – last linked?
Links on Hacker News per year · peak 130 in 2025

Sometimes recommended · 14 of 40 sampled comments recommend it?

Why HN links it

HN readers link this blog for its posts on Rust, Zig, parsers, rust-analyzer, LSP and testing, and several commenters recommend specific posts by name.

Recommended for · 14 comments
Called a nice write-up, very well-written, succinct and objective, a great introduction and a favourite essay.

Summarised by Claude from a sample of 40 HN comments that link here. Each comment is marked recommending, critical or neutral (citing without judging); how this works.

matklad's Arts&Crafts

Most-linked posts?

  1. Rust's Ugly Syntax (2023)
    15 people · 15 mentions · first linked 2023-01-27
  2. Simple but Powerful Pratt Parsing
    9 people · 11 mentions · first linked 2020-04-14
  3. Zig and Rust
    9 people · 10 mentions · first linked 2023-03-27
  4. Hard Mode Rust (2022)
    9 people · 9 mentions · first linked 2022-10-20
  5. Push Ifs Up and Fors Down
    8 people · 8 mentions · first linked 2023-11-15
  6. Resilient LL Parsing Tutorial (2023)
    7 people · 10 mentions · first linked 2023-05-21
  7. Architecture.md (2021)
    7 people · 8 mentions · first linked 2021-05-29
  8. How to Test
    6 people · 7 mentions · first linked 2023-04-20
  9. Fast Rust Builds
    6 people · 6 mentions · first linked 2021-09-05
  10. Why LSP?
    6 people · 6 mentions · first linked 2022-10-13

What Hacker News says?

  1. You can reduce inherent problem complexity by picking a simpler subset of the task to solve (for example only support a single backend rather than plugins and interfaces, or exclude complex problems like text ligatures and glyph shaping). The resulting program will be shorter, have less indirections (making it easier to trace statically, and require less scrolling between functions and jumping between files), easier…

    Comment linking /2021/02/06/ARCHITECTURE.md.html

    on “The Grug Brained Developer”
  2. Submitted Architecture.md as a story · 1349 points

    HN discussion
  3. - https://matklad.github.io/ - https://danluu.com/ - https://raphlinus.github.io/ - https://rosenzweig.io/ - https://flak.tedunangst.com/ - https://ciechanow.ski/

    Comment linking /

    on “Ask HN: Favorite Blogs by Individuals?”
  4. Submitted Push Ifs Up and Fors Down as a story · 569 points

    HN discussion
  5. p2detar · 2025-01-01Recommends
    I’m still unsure of how to feel about Rust. But if it has made it into the Linux Kernel, then I assume adoption is ongoing. Still, Zig seems somewhat more intuitive to me, even though I’ve used it as little as Rust thus far. A nice write up on the topic Zig and Rust: https://matklad.github.io/2023/03/26/zig-and-rust.html edit: typos

    Comment linking /2023/03/26/zig-and-rust.html

    on “Static search trees: faster than binary search”
  6. Submitted Things Zig comptime won't do as a story · 466 points

    HN discussion
  7. nindalf · 2021-03-13Recommends
    The problem is that most people criticising Rust don't make the case very well. If you want to read good critique, I'd recommend this - https://matklad.github.io/2020/09/20/why-not-rust.html . This post up-to-date, succinct and objective. And most pertinently, this critique was written by someone who genuinely loves programming in Rust. Shows you that Rust users aren't blinded to the faults of the language. You shou…

    Comment linking /2020/09/20/why-not-rust.html

    on “Speed of Rust vs. C”
  8. Submitted Why LSP? as a story · 373 points

    HN discussion
  9. Interestingly, I just read an article from matklad (who works a lot with Zig) talking about the benefits of splitting up error codes and error diagnostics, and the pattern of using a diagnostic sync to provide human-readable diagnostic information: https://matklad.github.io/2025/11/06/error-codes-for-control... Honestly I was quite convinced by that, because it kind of matches my own experiences that, even when usin…

    Comment linking /2025/11/06/error-codes-for-control-flow.html

    on “Why is Zig so cool?”
  10. Submitted Mutexes are faster than Spinlocks as a story · 373 points

    HN discussion
  11. rvrb · 2025-11-08Recommends
    matklad did it justice in his post here, in my opinion https://matklad.github.io/2025/08/09/zigs-lovely-syntax.html

    Comment linking /2025/08/09/zigs-lovely-syntax.html

    on “Why is Zig so cool?”
  12. Submitted Architecture.md (2021) as a story · 313 points

    HN discussion
  13. klibertp · 2025-01-07Recommends
    That's the point, I think: for a large number of real-world algorithms, you don't actually need a Turing Machine. There was a very well-written explanation of this on the front page[1] some time ago, concluded with: > Any algorithm that can be implemented by a Turing Machine such that its runtime is bounded by some primitive recursive function of input can also be implemented by a primitive recursive function! Also,…

    Comment linking /2024/08/01/primitive-recursive-functions.html

    on “A minimax chess engine in regular expressions”
  14. Submitted Why Not Rust? as a story · 310 points

    HN discussion
  15. If I understand TFA correctly, the author claims that D’s approach is actually different: https://matklad.github.io/2025/04/19/things-zig-comptime-won... “In contrast, there’s absolutely no facility for dynamic source code generation in Zig. You just can’t do that, the feature isn’t! [sic] Zig has a completely different feature, partial evaluation/specialization, which, none the less, is enough to cover most of use-…

    Comment linking /2025/04/19/things-zig-comptime-wont-do.html

    on “Things Zig comptime won't do”
  16. Submitted Use Long Options in Scripts as a story · 297 points

    HN discussion
  17. mzl · 2020-10-27Recommends
    Another commenter recommended rust-analyzer as a source of inspiration. the main author, matklad, has written some very interesting blog posts describing ideas used that might be of interest to you: * https://rust-analyzer.github.io/blog/2020/09/16/challeging-L... * https://rust-analyzer.github.io/blog/2020/10/24/introducing-... * https://rust-analyzer.github.io/blog/2020/09/28/how-to-make-... * https://matklad.gith…

    Comment linking /2020/04/15/from-pratt-to-dijkstra.html

    on “Parsing Algorithms”
  18. Submitted Zig's Lovely Syntax as a story · 237 points

    HN discussion
  19. I've wrote a bit about this in https://matklad.github.io/2020/11/11/yde.html Some specific things which IntelliJ brings to me: 1. Rich refactors -- things like "change signature" are a huge time saver in big codebases. LSP still can't do interactive refactors which require user input. 2. Structural Search Replace -- you can grep and sed sourcecode by matching on AST and semantic information. 3. Significantly more po…

    Comment linking /2020/11/11/yde.html

    on “Why LSP?”
  20. Submitted Fast Rust Builds as a story · 237 points

    HN discussion
  21. You read my comment, but you are missing that I'm building to tools to bundle the work together, which is the way to make a strong enough open foundation that things like open accessibility technologies can have more ground to stand on. Scratching our own itch works better when coordination means we can bundle together a whole lot of itch. There is no such thing as individual incentive to cooperate without a means o…

    Comment linking /2020/09/12/rust-in-2021.html

    on “Neuralink 'Participant 1' says his life has changed”
  22. Submitted Why Not Rust? (2020) as a story · 235 points

    HN discussion
  23. More to the point. Sadly I can't locate a great article outlining all the problems, bt these quotes will do From rust-analyzer's main contributor [1] === start quote === The essential complexity for a server is pretty high. It is known that compilers are complicated, and a language server is a compiler and then some. First, like a compiler, a language server needs to fully understand the language, it needs to be abl…

    Comment linking /2022/04/25/why-lsp.html

    on “JetBrains invites developers to join the Fleet Public Preview Program”
  24. Submitted Properly testing concurrent data structures as a story · 200 points

    HN discussion
  25. There is room for improvement: https://matklad.github.io/2023/06/18/GitHub-merge-queue.html

    Comment linking /2023/06/18/GitHub-merge-queue.html

    on “I'll think twice before using GitHub Actions again”
  26. Submitted Perils of Constructors as a story · 197 points

    HN discussion
  27. Rust's lack of fast thread-local storage makes it a non-starter for me. It's really disappointing, especially when the language has incorporated so many other excellent performance improvements like Google's SwissTable and pattern-defeating quicksort. https://github.com/rust-lang/rust/issues/29594 https://matklad.github.io/2020/10/03/fast-thread-locals-in-r...

    Comment linking /2020/10/03/fast-thread-locals-in-rust.html

    on “The wild world of non-C operating systems”
  28. Submitted Git Things as a story · 196 points

    HN discussion
  29. EDIT: Paste this hacky snippet into your browser's console to save all of the links into your clipboard: (() => { let result = [...document.querySelectorAll('td a')] .map((link) => link && !link.href.includes('ycombinator') && !link.href.includes('javascript:void') ? link.href : '' ) .filter(Boolean); result = [...new Set(result)]; result.sort(); copy(result.join('\n\n')); })(); Just to help, here's a compiled-list…

    Comment linking /

    on “Ask HN: Great Blogs by Programmers”
  30. Submitted Primitive Recursive Functions for a Working Programmer as a story · 189 points

    HN discussion

Search all of HN for matklad.github.io

Linked by the same people?