Topics /

Software Engineering

The most popular blog posts about software engineering on Hacker News. 14,540 posts.

Any year
7596

Unfinished Business with Postgres

7 years ago I left Heroku. Heroku has had a lot of discussion over the past weeks about its demise, whether it was a success or failure, and the current state. Much of this was prompted by the recent, and on-going security incident, but as others have pointed out the product has been frozen in time for some years now…

7598

Sabotage

In many places it seems to have become the norm to celebrate overwork, sleep deprivation and chronic stress. Ordinarily if you reveal that you are unhappy, unproductive and causing yourself mental and physical harm, people will be concerned and try to intervene. However, the expected response to this kind of suffering…

7602

Flow Field Pathfinding

You may know me for my interactive tutorials. But before that, I was writing visual but non-interactive tutorials. In particular, there wasn’t a lot of information about A* on the web, so I decided to collect all my notes about pathfinding [1] together in one place in the 1990s. But then in the 2010s I started making…

7605

Reducing the maximum latency of a bound buffer in Erlang

Recently I came across two great articles on the Pusher blog: Low latency, large working set, and GHC’s garbage collector: pick two of three and Golang’s Real-time GC in Theory and Practice . The articles tell the story of how Pusher engineers reimplemented their message bus. The first take was done in Haskell. During…

7606

IOCCC Flight Simulator (2010)

The IOCCC Flight Simulator was the winning entry in the 1998 International Obfuscated C Code Contest. It is a flight simulator in under 2 kilobytes of code, complete with relatively accurate 6-degree-of-freedom dynamics, loadable wireframe scenery, and a small instrument panel.

7615

An Introduction to Conflict-Free Replicated Data Types

This is an interactive tutorial series about Conflict-Free Replicated Data Types, or CRDTs for short. Their purpose is to allow seamless replication of data on different nodes in a distributed system. Merging is by construction always possible, without any conflicts. This series assumes no knowledge about CRDTs, but…