Top posts
Every blog post that took off on Hacker News, ranked by the votes of its best submission. 21,819 posts.
A dive into the making of a 64K Intro
This article is also available in Russian, courtesy of Vlad Brown: Погружение в создание Immersion At last. Last December, we finally finished it. This video here is our last production, a 4 minute animation called “Immersion”. To be more precise, it’s a capture of what is usually referred to as a 64k intro. But more…
A single byte write opened a root execution exploit
Thursday, September 22nd 2016. An email popped up in my inbox. Subject: ares_create_query OOB write As one of the maintainers of the c-ares project I'm receiving mails for suspected security problems in c-ares and this was such a one. In this case, the email with said subject came from an individual who had reported a…
Books I used to develop a game engine
If you have decided to develop your game engine, you may be wondering where to start, what books to start reading, etc. If you are in this situation, I recommend getting a copy of the following books:
Writing a debugger from scratch: Breakpoints
(New to this series? Consider starting from part 1) At the end of the last post, we started to get some interesting functionality with the ability to resolve addresses to names in a module. This was the last functionality missing before we could implement breakpoints! This part adds the ability for DbgRs to set…
Deconstructing Kitty
So today we look inside these amazing cats that can somehow keep on wavin’ using less than 15 microwatts (!) of power. If you are into either ultra low-power or extreme design-for-manufacture, the you will want to see what is inside of these guys!
Multiple assertions are fine in a unit test
One test case, not one test assertion.
Want cleaner code? Use the rule of six
davidamos.dev is your first and best source for information about davidamos. Here you will also find topics relating to issues of general interest. We hope you find what you are looking for!
Beware of Fast-Math
One of my more frequent rants, both online and in person, is the danger posed by the "fast-math" compiler flag. While these rants may elicit resigned acknowledgment from those who already understand the dangers involved, they do little to help those who don't. So given the remarkable paucity of writing on the topic…
.NET Hot Reload Support via CLI
Last week, our blog post and the removal of the Hot Reload capability from the .NET SDK repo led to a lot of feedback from the community. First and foremost, we want to apologize. We made a mistake in executing on our decision and took longer than expected to respond back to the community.
Nushell: Introduction to a new kind of shell
This article covers a gentle introduction to the shell nushell
GitHub Sunsetting Subversion Support
On January 8, 2024, GitHub will remove support for Subversion.
Software is made between commits
From the Zed Blog: Agents turned the conversation into the real source of our software. DeltaDB is the version control built for it.
A practical introduction to functional programming (2013)
Many functional programming articles teach abstract functional techniques. That is, composition, pipelining, higher order functions. This one is different. I...
Why React Re-Renders
In React, we don't update the DOM directly, we tell React what we want the DOM to look like, and React tackles the rest. But how exactly does it do this? In this tutorial, we'll unpack exactly when and why React re-renders, and how we can use this information to optimize the performance of our React apps.
Plain text has been around for decades and it’s here to stay
A blog about software craft and quality
Using S3 as a Container Registry
For the last four months I’ve been developing a custom container image builder, collaborating with Outerbounds1. The technical details of the builder itself might be the topic of a future article, but there’s something surprising I wanted to share already: you can use S3 as a container registry! You heard it right…
8088 MPH: We Break All Your Emulators
One of my bucket list items since I read my first party report back in 1991 was to attend a european demoparty and compete in a compo. I competed at NAID ’96 and placed there, which was awes…
Why are QR Codes with capital letters smaller than QR codes with lower case?
Take a look at these two QR codes. Scan them if you like, I promise there's nothing dodgy in them. Left is upper-case HTTPS://EDENT.TEL/ and right is lower-case https://edent.tel/ You can clearly see that the one on the left is a "smaller" QR as it has fewer bits of data in it. Both go to the same URl, the only…
Full text search over Postgres: Elasticsearch vs. alternatives
A comprehensive comparison between Elasticsearch and PostgreSQL for search workloads.
Patching GCC to build Actually Portable Executables
Gautham's Blog
X86 is a high-level language
Just so you know, x86 machine-code is now a "high-level" language. What instructions say, and what they do, are very different things. I m...
Fluent 1.0: a localization system for natural-sounding translations
Fluent is a family of localization specifications, implementations and good practices developed by Mozilla. With Fluent, translators can create expressive translations that sound great in their language. Today we’re announcing ...
TinyCompiler: A compiler in a week-end
Have you ever wondered how a compiler works, but you never found courage to find out? Then this series of articles is for you. I have never had the chance to look under the hood either, but one week-end I have decided to to write a translator from the esoteric programming language wend (short for week-end), which I…
The paradigms of programming
The paradigms of programming Floyd, CACM 1979 (Also available in ) A couple of weeks ago we looked at Dan Bernstein’s very topical “thoughts on security after ten years of qmail 1.0.” From the gene…