Feed Atlas
OPML directory + server-side RSS reader

matklad.github.io

SiteRSSBlogs
Back

Latest posts

  • Rust Glancer
    Aug 21, 2026Alex Kladov

    Rust Glancer Aug 21, 2026 Rust Glancer, a functional LSP server for Rust which uses two orders of magnitude less RAM, is incredibly cool. Go check it out! This post started as a comment on lobste.rs, but I figured it out that it’s better to publish it somewhat more prominently. Don’t expect polished writing though! Some thoughts: rust-analyzer uses rowan for syntax tree representation Yeah, rowan

  • Better Batteries
    Aug 20, 2026Alex Kladov

    Better Batteries Aug 20, 2026 One of the eternal schisms in programming is over the question of whether the standard library should be minimal or encompassing. This is the wrong question to ask. The right one is: Which social architecture creates a high-quality standard library? Python is always brought up as example of leaky batteries exploding in slow motion, but this has nothing to do with siz

  • Printing Lists
    Aug 14, 2026Alex Kladov

    Printing Lists Aug 14, 2026 To print a comma-separated list, a concise idiom is to optionally print the comma first, before the element: for (items, 0..) |item, item_index| { if (item_index > 0) std.debug.print(", "); std.debug.print("{}", .{item}); }

  • Zig's Io.Threaded is Neat
    Aug 06, 2026Alex Kladov

    Zig’s Io.Threaded is Neat Aug 6, 2026 std.Io.Threaded is one of the implementations of Zig’s new Io interface that enables concurrency. This is a boring “just use threads” impl. I personally find it neat though — it does this weird thing that I wanted to do for ages, that to my knowledge no one else is doing properly, and implements it better than I thought to be possible. Io.Threaded uses blocki

  • Memory Safety's Hardest Problem
    Jul 20, 2026Alex Kladov

    Memory Safety’s Hardest Problem Jul 20, 2026 Uplifting a lobsters comment for easier reference. The central memory safety counter example, the hardest case to solve, doesn’t have anything to do with destructors or heap: const std = @import("std"); const E = union(enum) { a: u128, b: []const u8, }; pub fn main() void { const bad_addr: u128 = @intFromPtr(&main); var e: E = .{ .b

  • CSS: Unavoidable Bad Parts
    Jun 04, 2026Alex Kladov

    CSS: Unavoidable Bad Parts Jun 4, 2026 An ersatz CSS tutorial for people who need to style a web page, but aren’t web developers. I am a wrong person to write this kind of thing, as I have neither the time, nor experience. I’d much rather read a book about this. Alas, I had to learn all this stuff from trawling MDN, so perhaps it is valuable to document what I have so far. CSS, HTML and Web APIs

  • TIL: Symlinking NixOS Dotfiles
    May 21, 2026Alex Kladov

    TIL: Symlinking NixOS Dotfiles May 21, 2026 The standard answer to managing dotfiles on NixOS is home-manager. I’ve never used it, due to two aesthetic and one practical objection: The approach I like is storing dotfiles in the same repository as flake.nix / configuration.nix and symlinking them in place. The problem here is that NixOS seemingly doesn’t have a “native” way to say that /a/b/c shou

  • Always Be Blaming
    May 18, 2026Alex Kladov

    Always Be Blaming May 18, 2026 A few tips on 4D-ing your code comprehension skills. I wrote on the importance of reading code before: Look Out For Bugs My default approach to reading is “predictive”: I don’t actually read the code line by line. Rather, I try to understand the problem that it wants to solve, then imagine my own solution, and read the “diff” between what I have in my mind and what

  • Catch Flakes On Main
    May 14, 2026Alex Kladov

    Catch Flakes On Main May 14, 2026 A small Mechanical Habit today: When using not rocket science rule / merge queue, continue to redundantly run the full test suite on main. Maintain an easily accessible list of recent main failures — these are the flaky tests to eradicate. For an example, see the “Flakes” link on https://devhub.tigerbeetle.com Flaky tests are tests that fail intermittently, once

  • Learning Software Architecture
    May 12, 2026Alex Kladov

    Learning Software Architecture May 12, 2026 In reply to an email asking about learning software design skills as a researcher physicist: I was attached to a bioinformatics lab early in my career, so I think I understand what you are talking about, the phenomenon of “scientific code”! My thoughts: First meta observation is that “software design” is something best learned by doing. While I had some