Topics /

Software Engineering

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

Any year
13322

Mocking time and testing event loops in Go

Initially I wanted to write articles on those two topics separately (mocking time and testing event loops), but during the process I realized that the things I want to talk about are too interrelated: when I need to mock time, it's usually to test some event loop with it, and when I test event loops, typically mocked…

13327

Reinforcement Learning at Facebook

If you ever wanted to learn about machine learning you could do worse than have Jason Gauci teach you. Jason has worked on YouTube recommendations. He was an early contributor to TensorFlow the open-source machine learning platform. His thesis work was cited by DeepMind. But what I find so fascinating with Jason is he…

13331

Binfmtc – binfmt_misc C scripting interface

"I love C". "I enjoy writing in C". "I don't feel well when I have passed a day without coding a line of C". "My conversation with my wife simply doesn't flow without the C language". "I want to write everything in C, even the everyday scripting, but due to the steps required for writing make files and other things, I…

13336

Well-Known Secrets of AmigaDOS

In keeping with the Commodore tradition of cost cutting, most consumer models of their Amiga line of computers came with severely watered down documentation. The Amiga 500 was an exception from this rule, but owners of later machines - such as the A1200 - may not have gotten any documentation for the command line part…

13343

Fast and Easy Levenshtein distance using a Trie (2011)

<img src="http://stevehanov.ca/blog/images/acer.jpg"/> If you have a web site with a search function, you will rapidly realize that most mortals are terrible typists. Many searches contain mispelled words, and users will expect these searches to magically work. This magic is often done using levenshtein distance. In…

13344

Engineering a Chess Match

This is the story of me trying to win a game of chess against my brother. A single freaking game. What’s so special about it? Am I good at chess? Not at all. Did I improve at my game in the process? Also no. Is it a story about “the journey rather than the destination”? Not really. Did I at least have fun in the…

13345

Bump Allocation: Up or Down?

Back in 2019, Nick Fitzgerald published always bump downwards, an article making the case that for bump allocators, bumping “down” (towards lower addresses) is better than bumping up. The biggest reasons for this are bumping up requires 3 branches vs 2 for bumping down and rounding down requires fewer instructions…

13346

The Caves of Clojure

Lately I've had an urge to start playing a few games again, namely Nethack and Dwarf Fortress (the latter being triggered by this book ). Aside from being incredibly fun, they also made me want to play around with writing a roguelike game of my own.

13348

Beyond Exception Handling: Conditions and Restarts

One of Lisp's great features is its condition system. It serves a similar purpose to the exception handling systems in Java, Python, and C++ but is more flexible. In fact, its flexibility extends beyond error handling--conditions are more general than exceptions in that a condition can represent any occurrence during…

13350

Thrashing

I’ve invested in a new odometer to help my car go faster. Accountability is important, and as a driver I believe the most important thing I can do is set measurable, achievable and inspiring goals for the people pushing my car down the road.