Topics /

Software Engineering

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

Any year
9064

SDL2 common mistakes and how to avoid them

SDL has grown on me over the past year. I didn’t understand its value until viewing it in the right lens: as a complete platform and runtime replacing the host’s runtime, possibly including libc. Ideally an SDL application links exclusively against SDL and otherwise not directly against host libraries, though in…

9070

From string to AST: parsing (2019)

Whether you have to do with data in the form of CSV, JSON or a full-blooded programming language like C, JavaScript, Scala, or maybe a query language like SQL, you always transform some sequence of characters (or binary values) into a structured representation. Whatever you’ll do with that representation depends on…

9075

Trade-offs between Different CRDTs

🔰If CRDTs are new to you, here are some introductory links. - An interactive intro to CRDTs - An introduction to state-based CRDTs - CRDTs for non-academics - CRDT: The Hard Parts - Readings in CRDTs - crdt.tech What are the trade-offs between different kinds of CRDTs (Conflict-free Replicated

9076

Decompressing a Gzip File by Hand

2024 Update: Part 2 is out! Let’s make a gzipped file and see what’s in it. We’ll keep it simple: just write 8 ‘a’s to a file. $ echo "aaaaaaaa" > test.out $ xxd test.out 00000000: 6161 6161 6161 6161 0a aaaaaaaa. As we can see, our file is 9 bytes long. We have 8 ‘a’ bytes written, plus a Line Feed (LF) character…

9081

Jumping Back and Forth

The order that our mind imagines is like a net, or like a ladder, built to attain something. But afterward you must throw the ladder away, because you discover that, even if it was useful, it was meaningless.

9085

Literate programming: Knuth is doing it wrong (2014)

Literate programming advocates this: Order your code for others to read, not for the compiler. Beautifully typeset your code so one can curl up in bed to read it like a novel. Keep documentation in sync with code. What's not to like about this vision? I have two beefs with it: the ends are insufficiently ambitious by…

9087

What MongoDB got right

MongoDB is perhaps the most-widely-mocked piece of software out there right now. While some of the mockery is out-of-date or rooted in misunderstandings, much of it is well-deserved, and it’s difficult to disagree that much of MongoDB’s engineering is incredibly simplistic, inefficient, and immature compared to…