Top posts

Every blog post that took off on Hacker News, ranked by the votes of its best submission. 2,307 posts.

Any topic
2016
2013

Mainframes as a lifestyle choice

I started working at IBM last year on mainframe compilers with the goal of making mainframes feel a little more modern. Hence, a lot of my time is spent in z/OS . The interface I use to z/OS is Unix System Services (USS, a.k.a. the command line), but if I were up for bucking the whole moderm thing, I could break out…

2014

What is Symbolic Computation?

I've been reading a lot of Lisp books lately, some more advanced than others. All of the introductory books I've seen cover the idea of symbolic computation, but most of them breeze past it with just a few pages about "symbols" and "quoting". For many programmers coming from non-Lisp languages these are new, foreign…

2017

Cheap BlueTooth Buttons and Linux

Selfie sticks - like most modern inventions - are utter tosh. But they've rapidly brought down the price of Bluetooth buttons. So who am I to complain? Let's take the venerable AB Shutter 3 - You can find it on Amazon for around £2 including postage - or around $2 on AliExpress. Frankly, that's stupidly cheap. OK…

2019

Perlin noise

I used Perlin noise for the fog effect and title screen in Under Construction. I tweeted about my efforts to speed it up, and several people replied either confused about how Perlin noise works or not clear on what it actually is. I admit I only (somewhat) understand Perlin noise in the first place because I’ve…

2020

Diving into Other People's Code

This post will walk you through an exercise in diving into someone else's code. The goal will be to make an arbitrary change to the code of the Spyder Python IDE , a project I have never touched before in my life, and learn just enough about it to accomplish what I want without getting bogged down. You will learn how…

2036

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…