{"@attributes":{"version":"2.0"},"channel":{"title":"Valentyn Kit","description":"I build the Rust core of a self-custody wallet and rebuild the layer underneath from scratch \u2014 databases, TCP servers, storage engines \u2014 to understand how the real ones work. This is where I write it down.","link":"https:\/\/valentynkit.com\/","item":[{"title":"Framework knowledge evaporates. Low-level knowledge compounds.","link":"https:\/\/valentynkit.com\/blog\/framework-knowledge-evaporates\/","guid":"https:\/\/valentynkit.com\/blog\/framework-knowledge-evaporates\/","description":"I learned async three times before it clicked. Building a TCP echo server from blocking sockets up through kqueue and epoll in C, seven times, is what finally fixed it.","pubDate":"Thu, 25 Jun 2026 00:00:00 GMT"},{"title":"From one blocking accept() to epoll: a C TCP server up the I\/O ladder, measured","link":"https:\/\/valentynkit.com\/blog\/from-blocking-accept-to-epoll\/","guid":"https:\/\/valentynkit.com\/blog\/from-blocking-accept-to-epoll\/","description":"Building a TCP echo server in C seven times, from blocking through select, poll, kqueue, and epoll, with the cost of each wall measured: a 1.5 second stall, a pegged core, the FD_SETSIZE ceiling, and O(ready) dispatch.","pubDate":"Tue, 30 Jun 2026 00:00:00 GMT"}]}}