Blogs / Personal blogs

Alex Kladov (matklad)

matklad.github.io

matklad's Arts&Crafts

Popular posts
44
Total points
11,268
HN comments
6,515
Rank
#69 personal

Visit matklad.github.io → RSS feedOn Hacker News Jul 2019 – Oct 2026

Software Engineering 40Systems & Performance 11Tools & Productivity 10Programming Languages 10Web & Frontend 4Math & Algorithms 3

1

Architecture.md

If you maintain an open-source project in the range of 10k-200k lines of code, I strongly encourage you to add an ARCHITECTURE document next to README and CONTRIBUTING. Before going into the details of why and how, I want to emphasize that this is not another docs are good, write more docs advice. I am pretty sloppy…

4

<3 Deno

Deno is a relatively new JavaScript runtime. I find it quite interesting and aesthetically appealing, in-line with the recent trend to rein in the worse-is-better law of software evolution. This post explains why.

9

Why Not Rust?

I've recently read an article criticizing Rust, and, while it made a bunch of good points, I didn't enjoy it --- it was an easy to argue with piece. In general, I feel that I can't recommend an article criticizing Rust. This is a shame --- confronting drawbacks is important, and debunking low effort/miss informed…

14

Zig and Rust

This post will be a bit all over the place. Several months ago, I wrote Hard Mode Rust, exploring an allocation-conscious style of programming. In the ensuing discussion, @jamii name-dropped TigerBeetle, a reliable, distributed, fast, and small database written in Zig in a similar style, and, well, I now find myself…

15

Zig's Lovely Syntax

It's a bit of a silly post, because syntax is the least interesting detail about the language, but, still, I can't stop thinking how Zig gets this detail just right for the class of curly-braced languages, and, well, now you'll have to think about that too.

18

How a Zig IDE Could Work

Zig is a very interesting language from an IDE point of view. Some aspects of it are friendly to IDEs, like a very minimal and simple-to-parse syntax (Zig can even be correctly lexed line-by-line, very cool!), the absence of syntactic macros, and ability to do a great deal of semantic analysis on a file-by-file basis…

19

Fantastic Learning Resources

People sometimes ask me: Alex, how do I learn X?. This article is a compilation of advice I usually give. This is things that worked for me rather than the most awesome things on earth. I do consider every item on the list to be fantastic though, and I am forever grateful to people putting these resources together.

20

Properly testing concurrent data structures

There's a fascinating Rust library, loom, which can be used to thoroughly test lock-free data structures. I always wanted to learn how it works. I still do! But recently I accidentally implemented a small toy which, I think, contains some of the loom's ideas, and it seems worthwhile to write about that. The goal here…

22

Perils of Constructors

One of my favorite blog posts about Rust is Things Rust Shipped Without by Graydon Hoare. To me, footguns that don't exist in a language are usually more important than expressiveness. In this slightly philosophical essay, I want to tell about a missing Rust feature I especially like: constructors.

26

Zig’s Io.Threaded is neat

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…

27

Rust's Ugly Syntax (2023)

People complain about Rust syntax. I think that most of the time when people think they have an issue with Rust's syntax, they actually object to Rust's semantics. In this slightly whimsical post, I'll try to disentangle the two.

28

Notes on Paxos

These are my notes after learning the Paxos algorithm. The primary goal here is to sharpen my own understanding of the algorithm, but maybe someone will find this explanation of Paxos useful! This post assumes fluency with mathematical notation.

29

Vibecoding #2

I feel like I got substantial value out of Claude today, and want to document it. I am at the tail end of AI adoption, so I don't expect to say anything particularly useful or novel. However, I am constantly complaining about the lack of boring AI posts, so it's only proper if I write one.