New

The latest blog posts to take off on Hacker News. 1,733 posts.

Software Engineering
2023
1232

Hypervisor Development in Rust

In the ever-evolving field of information security, curiosity and continuous learning drive innovation. This blog series is tailored for those deeply engaged in experimental projects, leveraging Rust’s capabilities to push the boundaries of what’s possible. The focus on Rust, after exploring various programming…

1233

Low Code Software Development Is a Lie

I’ve been writing custom software for a long time and one of the things that annoys me most is when a client adopts the position that there is a silver bullet which will reduce or remove the inherent complexity of this task. This happens more often than you’d think and guess what? They are almost always wrong. Perhaps…

1235

Zig build system

As the popularity of zig cc, more developers may realize Zig is not only a programming language, but also a toolchain to help maintaining C/C++/Zig project. Today I want to discuss one vital part of this toolchain: Zig's build system, build.zig the first non-trivial Zig program for newcomers. Note: This post is based…

1246

Htmx 1.9.0 has been released

htmx gives you access to AJAX, CSS Transitions, WebSockets and Server Sent Events directly in HTML, using attributes, so you can build modern user interfaces with the simplicity and power of hypertext htmx is small (~14k min.gz’d), dependency-free, extendable, IE11 compatible & has reduced code base sizes by 67% when…

1256

Who invented vector clocks?

Back in spring 2020, I was wrapping up the distributed systems course I was teaching, and for the last lecture, decided to spend a little time poking at the question of who actually invented vector clocks. Most people who need something to cite for vector clocks cite Friedemann Mattern’s “Virtual Time and Global…

1258

Modular Errors in Rust

It is thankfully common wisdom nowadays that documentation must be placed as near as possible to the code it documents, and should be fine-grained to a minimal unit of describability (the thing being documented). The practice provides numerous benefits to the codebase and project as a whole:

1260

A 1.5GB string

In my previous role, I supported a Java service that operated similarly to RDP or Citrix by enabling remote UI functionality. This service relied on sessions, which consisted of interconnected Java objects that were supposed to be cleaned up either when a user logged out or after a predetermined timeout period.