Using Bloom filters to efficiently synchronise hash graphs
This blog post uses MathJax to render mathematics. You need JavaScript enabled for MathJax to work.
Topics /
The most popular blog posts about software engineering on Hacker News. 21,834 posts.
This blog post uses MathJax to render mathematics. You need JavaScript enabled for MathJax to work.
Using JavaScript, we implement the k-Nearest Neighbors algorithm from the bottom up.
In a random bar about two years ago, a Google Chrome developer asked me why Torbutton didn't...
As some of the world knows full well by now, I’ve been noodling with Go for a few years, working through its pros, its cons, and thinking a lot about how humans use code to express thoughts and ideas. Go’s got a lot of neat use cases, suited to particular problems, and used in the right place, you can see some clear…
Threat modeling is a risk based approach to cyber security requirements analysis.
Today I will share some of the software engineering soft skills I have learned from my first 10 years on Google Chrome, where I am a Senior Staff Engineering...
For the last year, we've been working on the development of rust-minidump. The final part in this series takes you through fuzzing rust-minidump.
Go 1.10 adds automatic caching of build & test results, and more.
One of the biggest things Zig has going for it—especially compared to Rust—is that it is (relatively) small. That sits in tension with Rust’s approach to solving memory safety problems, and sets up a nice challenge for future programming language designers.
.NET 6 Preview 5 is now available.
Debunking an alarmingly common HTML misconception.
We developed a new static analysis tool called Nullsafe that is used at Meta to detect NullPointerException (NPE) errors in Java code. Interoperability with legacy code and gradual deployment model…
From the highly eclectic blog of Mark Dominus
A programming language should not be your identity.
As it continues to evolve, WebAssembly has the potential to be the platform executing an enormous amount of IoT computation.
Write small blocks of code. How small? Here's how small.
Yes, my friends, it is true. After more than fifteen years using Vim, teaching Vim, proselytizing about Vim, all the while scoffing in the general direction of Emacs, I’ve seen the light. The light of Lisp… Or something. If, like me, you’re curious enough to give Emacs a try, this post should help you get off the…
Today is the day! After more than a year of work, our team is excited to finally put a fancy "stable" sticker on the first release from the 4.x release line! To celebrate, let's make together a tour of the major changes; should you look for a more itemized list, take a look at the changelog.
The last five years have shown us that large language models, like ChatGPT, Claude, and DeepSeek, can write code in many domains, to huge excitement: many claim to be using these models to write entire web servers and apps from scratch. These tools have opened up programming to a whole new class of people who consider…
Just as algebra is fundamental to the whole of mathematics, algebraic data types (ADTs) are fundamental to many common functional programming languages. They’re the primitives upon which all of our richer data structures are built, including everything from sets, maps, and queues, to bloom filters and neural networks .
It Happened.
The craft of AI-assisted software creation is substantially about correctly managing units of work.