Topics /

Software Engineering

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

Any year
6992

js;dr = JavaScript required; Didn’t Read.

js;dr = JavaScript required; Didn’t Read. Pages that are empty without JS: dead to history (archive-org), unreliable for search results (despite any search engine claims of JS support, check it yourself), and thus ignorable. No need to waste time reading or responding. Also known as, if it’s not curlable, it’s not on…

6993

Fast midpoint between two integers without overflow

Let us say that I ask you to find the number I am thinking about between -1000 and 1000, by repeatedly guessing a number. With each guess, I tell you whether your guess is correct, smaller or larger than my number. A binary search algorithm tries to find a value in an interval by repeating … Continue reading Fast…

6995

When did people favor composition over inheritance?

The phrase "favor composition over inheritance" has become one of those thought-terminating cliches in software design, and I always like to take a deeper look at those to understand where they come from and what ideas we're missing if we just take the phrase at face value without engaging with the discussion that led…

6996

FAWK: LLMs can write a language interpreter

After reading the book The AWK Programming Language (recommended!), I was planning to try AWK out on this year’s Advent of Code. Having some time off from work this week, I tried to implement one of the problems in it to get some practice, set up my tooling, see how hard AWK would be, and… I found I’m FP-pilled.

7002

Going “Write-Only”

Joey Hess inspires me. He lives in a cabin and programs Haskell on a drastically under-powered netbook. He harvests all his electricity from the sun with a homemade electrical system. Joey has designed his computing life to be highly distributed like the git version control he loves. His internet connection is…

7007

Garbage Collection

We say Lox is a “high-level” language because it frees programmers from worrying about details irrelevant to the problem they’re solving. The user becomes an executive, giving the machine abstract goals and letting the lowly computer figure out how to get there.