Topics /

Software Engineering

The most popular blog posts about software engineering on Hacker News. 21,843 posts.

Any year
18691

Using Pandoc and Typst to Produce PDFs

UPDATE MARCH 2025: This post, and the template attached, were written for Typst v 0.11 – Typst has upgraded twice since then, and this template will not work with the newer versions of Typst. Please see the new post (Mar 26, 2025) at A New Typst Template for Pandoc

18692

Reverse Engineering Strike Commander

Back in the early 90s, one company was on the bleeding edge of PC gaming: Origin Systems . Their motto was "We Create Worlds" and boy did they deliver: With the Ultima series, Crusader series and Wing Commander series, they consistently took gamer's breath away. One of them took four years and more than a million man…

18694

Small, Freestanding Windows Executables

Recently I’ve been experimenting with freestanding C programs on Windows. Freestanding refers to programs that don’t link, either statically or dynamically, against a standard library (i.e. libc). This is typical for operating systems and similar, bare metal situations . Normally a C compiler can make assumptions…

18697

Augmenting Agile with Formal Methods

I really like the c2 wiki as a historical artifact: a lot of big names in Agile and Extreme Programming argued with each other there.1 One thing they did was the Extreme Programming Challenge, where people tried to test the limits of these approaches. They’d find edge problems (designing databases, remote teams, etc)…

18699

Zero-allocation Trie Traversal

As part of a demonstration in an upcoming article , I wrote a simple trie implementation. A trie is a search tree where the keys are a sequence of symbols (i.e. strings). Strings with a common prefix share an initial path down the trie, and the keys themselves are stored implicitly by the structure of the trie. It’s…

18702

Generate QR Codes with Pure SQL in PostgreSQL

As my cat woke me up way too early for a Saturday morning, I decided to put all this extra time (and my ChatGPT Pro subscription) into good use and generated a QR-code generator for PostgreSQL, written as a single pure SQL statement. No external libraries or Postgres extension installation needed! The pqr.sql example…

18703

Dolphin Progress Report: January 2017

Sometimes, it's easy to forget how much work there is left to do on a refined emulator. While the rush of getting a new game to boot or discovering a crazy feature hidden within an obscure gem never gets old, those moments do tend to get further and further apart as accuracy increases. As if to defy fate itself…

18709

Dave Prosser's C Preprocessing Algorithm (2006)

For about five years I've been trying to implement a fully conforming C preprocessor for the front end of the CScout refactoring browser. I've found this to be a fiendishly difficult task. Although what I have written can correctly process million-line real-life projects, every once in a while I come across a…

18710

Mine, a Coalton and Common Lisp IDE

By Robert Smith mine is a brand new IDE for Coalton and Common Lisp, built from the ground up with one purpose: To make Coalton and Common Lisp easier and more accessible to the programming world. TL;DR? Go to mine's homepage with downloads for Windows/macOS/Linux. mine is a complete, single-download application that…

18713

The .NET IL Interpreter

Whilst writing a previous blog post I stumbled across the .NET Interpreter, tucked away in the source code. Although, it I’d made even the smallest amount of effort to look for it, I’d have easily found it via the GitHub ‘magic’ file search:

18716

Two types of C programmers

You're probably reading this page because you've attempted to access some part of my blog (Wandering Thoughts) or CSpace , the wiki thing it's part of. Unfortunately you're using a browser version that my anti-crawler precautions consider suspicious, most often because it's too old (most often this applies to versions…