I designed my LED matrix PCB with code
This tutorial will walk you through building a 3x5 LED matrix controlled by a Raspberry Pi Pico using tscircuit.
Topics /
The most popular blog posts about software engineering on Hacker News. 1,747 posts.
This tutorial will walk you through building a 3x5 LED matrix controlled by a Raspberry Pi Pico using tscircuit.
There is a pattern I’ve learned while using Zig which I’ve never seen used in any other language. It’s an extremely simple trick which - when applied to a data structure - reduces memory usage, reduces memory allocations, speeds up accesses, makes freeing instantaneous, and generally makes everything much, much…
rules_img is a Bazel ruleset for building and publishing OCI images that feel native to Bazel by treating images as metadata first and moving bytes only at the edges.
For the past five months I've been leading the efforts to rebuild Zed 's cloud infrastructure.
In this article, we introduce the expand and contract pattern to help migrate data and clients to a new schema.
Learn how to extend the classic XOR trick to find thousands of missing values using Invertible Bloom Filters
written by - Akshat Joshi Sometime back, I set myself a crazy constraint: Load only one thing at boot - A Pong game that fits in one floppy disk sector — 512 bytes. Why would I build this? I have played with Operating Systems and their workings by customizing them and tweaking their
Dear readers, we are extremely sad to inform you that Rainer passed away on October 6, 2025, surrounded by his closest family. After suffering from life-threatening pneumonia, Rainer decided against further life-sustaining measures that would have severely restricted his life. He passed away peacefully, accompanied by…
In my previous post I introduced SQL virtual tables and how to use them in Go—registering modules per connection, defining schemas, and querying external sources as regular tables.
We’d like to announce the availability of the QEMU 10.0.0 release. This release contains 2800+ commits from 211 authors.
Lessons on incentives and scaling from two years as a teaching assistant
Null pointers look simple on the surface, and that’s why they’re so dangerous. As compiler optimizations, intuitive but incorrect simplifications, and platform-specific quirks have piled on, the odds of making a wrong assumption have increased, leading to the proliferation of bugs and vulnerabilities. This article…
Disclaimer: This story took place when I was a junior developer for a previous employer ages ago. Some details might be fuzzy, and goes without saying this is entirely from my own POV so take everything here with humor and a grain of salt.
As part of my ongoing (and somewhat futile) efforts to ReDeCentralise, I'm looking at moving my personal projects away from GitHub. I already have accounts with GitLab and CodeBerg - but both of those sites are run by someone else. While they're lovely now, there's nothing stopping them becoming as slow or AI-infested…
While browsing Reddit the other day waiting for my code to compile, I ran across this question on r/Python: is hash(-1) == hash(-2) an easter egg? Wait, is that really true? $ python Python 3.9.6 (default, Jun 29 2021, 00:00:00) [GCC 11.1.1 20210531 (Red Hat 11.1.1-3)] on linux Type "help", "copyright", "credits" or…
A blog about computers, functional languages, Lisp, and Scheme.
Choosing a design system and component library for Ruby on Rails applications
"I love C". "I enjoy writing in C". "I don't feel well when I have passed a day without coding a line of C". "My conversation with my wife simply doesn't flow without the C language". "I want to write everything in C, even the everyday scripting, but due to the steps required for writing make files and other things, I…
Brian Scott made an app that's safe, simple, and educational for kids to chat in, using Tailscale's tsnet and connectivity.
This post describes how to compile a single C++ source file to an object file with the Clang API. Here is the code. It behaves like a simplified clang executable that handles -c and -S…
I’ve invested in a new odometer to help my car go faster. Accountability is important, and as a driver I believe the most important thing I can do is set measurable, achievable and inspiring goals for the people pushing my car down the road.
28 . That's the minimum number of AND or OR operators you need in order to write any Boolean function of five variables. Alex Healy and I computed that in April 2010. Until then, I believe no one had ever known that little fact. This post describes how we computed it and how we almost got scooped by Knuth's Volume 4A…
How to reliably understand if a candidate is a good programmer, inspired by Casey Muratori
Originally published May 20, 2015.
One of legal tech's clichés is that "lawyers live in Word". This is demonstrably incorrect. I, for example, am a lawyer and in fact live in London, England…
Alternative configuration formats solve superficial problems. Configuration languages solve the deeper problem: the need for abstraction.
In .NET 9 we enabled DATAS by default. But .NET 9 is not an LTS release so for many people they will be getting DATAS for the first time…
I like slim and stupid servers, where each endpoint wraps a very dumb DB query. Dumb queries are fast. Fast queries make websites smooth and snappy. Keep those click/render loops sacred. Sweep complexity under a task table.
TigerBeetle is a financial transactions database built for correctness. Yet, building a correct system from correct components remains a challenge: