Topics /

Software Engineering

The most popular blog posts about software engineering on Hacker News. 1,535 posts.

2024
1178

Building an email-to-calendar LLM

Talk is cheap, show me the code Introduction A common problem my friends and I have is receiving actionable emails whose priorities are medium level. They do require action of some sort ($ \geq lowest\ priority$), but the action is due in the near future ($\leq highest\ priority$). I tend to skim over these emails…

1181

GCC Specs: An Introduction

If you've ever used the GNU Compiler Collection (GCC) then you've worked with the gcc binary. For those who don't know, gcc is a driver, not a compiler. It runs the compiler/assembler/linker as required and coordinates the input and output between them. Use of the driver is so ubiquitous that everyone calls it the…

1189

Speech Dictation Mode for Emacs

T here is a wide range of input mechanisms for computers, starting with keyboards (which are relatively mature) and extending to various types of neural interfaces (currently under research). Speech lies somewhere on this spectrum with a lot of promises but still not much to show for. Keeping accessibility aspects…

1191

Unix version control lore: what, ident

There are a couple of version control commands that deserve wider appreciation: SCCS what and RCS ident . They allow you to find out what source a binary was built from, without having to run it – handy if it is a library! They basically scan a file looking for magic strings that contain version control metadata and…

1192

A simple core.async job system in Clojure

In my off time (and my on time, for that matter) I've been working on this quirky thing I've called Scinamalink (sounds like 'skinamarink'). Scinamalink lets customers send Magic login links to their users with a single REST API call. If you don't know what a magic

1196

Systemd: Enable indefinite service restarts

When a service fails to start up enough times in a row, systemd gives up on it. On servers, this isn’t what I want — in general it’s helpful for automated recovery if daemons are restarted indefinitely. As long as you don’t have circular dependencies between services, all your services will eventually come up after…

1198

Visual programming should start in the debugger

Just like CAD didn't make everyone an industrial designer, visual programming isn't going to make everyone a programmer. Whether textual or visual, there'd still be a lot of underlying concepts (and how they are composed) to learn. But still, I think it's underexplored. Most visual programming paradigms focus on…

1199

Packaging Swift Apps for Alpine Linux

While trying to build my Age Apple Secure Enclave plugin , a small Swift CLI app, on Alpine Linux , I realized that the Swift toolchain doesn’t run on Alpine Linux. The upcoming Swift 6 will support (cross-)compilation to a static (musl-based) Linux target, but I suspect an Alpine Linux version of Swift itself isn’t…

1200

Compiling with Constraints

There are lots of interesting little subproblems in compilation like instruction selection, register allocation and instruction scheduling. These can be expressed in declarative interlinked way to constraint solvers.