Sunday, 25 October 2026

18 entries · final
Data structure of the day · data structures

Bloom Filters

A few kilobytes that tell you, with no false negatives, what is definitely absent.

The mechanism. A bit array of size m and k independent hash functions. To insert, hash the element k times and set those bits. To query, hash and check: if any bit is 0 the element is definitely absent; if all are 1 it is probably present. No false negatives, tunable false positives, no deletions, and no way to enumerate what is in it.

The numbers worth memorising. About 10 bits per element gives a 1% false positive rate; 14 bits gives 0.1%. That is independent of element size — a million 200-byte URLs fit in roughly 1.2MB at 1%, versus ~200MB for a hash set. The optimal k is (m/n) * ln2, around 7 for the 1% case.

Where it earns its place. Every SSTable in an LSM tree carries one, so a point lookup skips files that cannot contain the key — that is what makes LSM reads tolerable. CDNs use them to decide whether an object is worth caching on first request. Chrome shipped one for malicious URLs. Bitcoin used them for light-client filtering.

Know the variants. Counting Bloom filters support deletion at 3–4x the space. Cuckoo filters support deletion and beat Bloom on space below ~3% error. Quotient filters are more cache-friendly. If you need counts rather than membership, you want Count-Min Sketch; if you need cardinality, HyperLogLog.

Takeaway. When a "probably" is cheap and a "definitely not" is valuable, this is the structure. Always ask what a false positive costs you before you reach for it.

Practice

Size a Bloom filter for 5 million cache keys at a 1% false positive rate, then say what a false positive costs in a read-through cache and in a password-breach checker.

Hint

About 10 bits per element, k = (m/n) * ln2. The cost asymmetry is the whole design question: one wastes a lookup, the other rejects a valid password.

0 of 18 read

Top Reads

5

Articles and engineering write-ups worth the full read.

We should be more ambitious with the software we build

danluu.com·Lobsters +1·280 points / 238 comments·2 sourcespracticesthread →

This week's "node2shell" Brotli vulnerability (CVE-2026-111497) is exploitable in Python, other consumers of Brotli

aikido.dev·Lobsters +1·294 points / 140 comments·2 sourcessecuritywebthread →

Twelve years of distributed SQLite

philipotoole.com·Lobsters +1·370 points / 63 comments·2 sourcesdatabasesthread →

Show HN: Steal My Bitcoin

Made this because I'm curious if anyone out there has figured out how to actually use this PHP RCE we spent the last few days panicking over. Have fun!

stealmybitcoin.com·Hacker News·441 points / 264 commentsthread →

The Goose Programming Language

https://twitter.com/ID_AA_Carmack/status/2113704269274636568

aardappel.github.io·Hacker News·305 points / 187 commentsthread →

Shipped

4

Releases, changelogs, cloud and language news.

WAF - WAF Release - 2026-10-25 - Emergency - Cloudflare Managed Ruleset

This emergency release will add two rules related to the Brotli vulnerability CVE-2026-111497 to the Cloudflare Managed Ruleset. Both rules will be enabled by default with their action set to Log , providing visibility into matching requests so customers can evaluate the impact before choosing to block them. Rule behavior Brotli rule: Matches incoming requests that declare Brotli request-body enco

developers.cloudflare.com·Cloudflare Changelogwafcloudinfra

Usage metrics API adds usage from tools like OpenCode

The Copilot usage metrics API now reports model usage from more of the tools your developers use with Copilot, including tools like OpenCode that weren’t previously captured in your reports. A new totals_by_client array is available in the enterprise, organization, enterprise-user, and organization-user 1-day and 28-day reports. What’s new Each totals_by_client entry represents one cli

github.blog·GitHub Changelogimprovementaccount managementcopilot

Vercel CLI adds Spend Management

vercel.com·Vercelcloudinfra

SteamOS 3.9.5 Released With Linux 7.2 Kernel, KDE Plasma 6.7 Desktop & Other Updates

On Friday Valve released SteamOS 3.9.5 as their first stable release in the SteamOS 3.9 series. This brings all the great improvements previously available in preview form with many package updates and other enhancements...

phoronix.com·Phoronixpress

Repos

3

Projects gaining real traction, and what they actually do.

deepseek-ai/deepseek-harness

DeepSeek Harness: Everything is a Plugin.

github.com·GitHubtypescriptai-agentscordis

OBS Studio 33

github.com·Hacker News·446 points / 161 commentsthread →

aicodeking/leanrea

One 8 KB skill that replaces REA (Reverse Engineer Anything): plain CLI tools, no MCP. Benchmarked: 38% faster, 35% cheaper.

github.com·GitHubpython

Discussion

2

Threads where the comments are the content.

No signs of AI payoff outside the tech sector

apollo.com·Hacker News·516 points / 532 commentsthread →

America has lost 200k of jobs in media, film and the arts. How much is AI?

apricitas.io·Hacker News·259 points / 264 commentsthread →

AI

3

Capped on purpose, so it does not eat the edition.

AWS says its AI security agent fixes 89% of bugs — but there’s a catch

AWS made Continuum for code vulnerabilities generally available on Thursday. The service finds and validates bugs in your repositories, checks The post AWS says its AI security agent fixes 89% of bugs — but there’s a catch appeared first on The New Stack .

thenewstack.io·The New Stackai agentsdeveloper toolssecurity

EP230: RAG vs Agentic RAG

Build for the long run. (Sponsored) Long-running agents need endurance. They must endure waiting for users, and weather tool failures. They must take each new jump in model intelligence in stride. Inngest makes long-running agents durable, observable and improvable over time. Check out their generous free tier and a sleek local dev server for testing your workflows. Build for the long run with Inn

blog.bytebytego.com·ByteByteGosystem design

Google Optimizes Agent Development Kit's 200K-line Python Codebase Overnight with Gemini 4 Argon

Google explained how an 11-hour unattended run of Gemini 4 Argon produced two accepted optimizations for Google Agent Development Kit's codebase, reducing in-memory session-preparation overhead by about 40% in long sessions and cold package import time by 21%. By Sergio De Simone

infoq.com·InfoQopen sourcelarge language modelsgoogle

Deep

1

One paper or long teardown.

Contestable Agents for Data Governance: Recording Human Stewardship of AI-Generated Metadata Across Structured and Unstructured Systems

Industrial organizations hold operational knowledge in structured records, such as telemetry, point lists, and transactions, and in unstructured sources, such as manuals, service notes, communications, and inspection reports. Governance programs often manage these sources separately. Classifying, linking, and documenting them depends on a small group of employees with deep domain knowledge. Agents

arxiv.org·arXiv CScs.aics.dbcs.hc

Revision

2 from earlier editions

Answer each one before you open it.

Whose health is a circuit breaker actually protecting - the dependency's or yours?3d ago

Stop calling a dependency that is already failing, so you fail fast instead of piling up.

Concept · Circuit Breaker
Which consistency guarantee stops a user from seeing their own edit disappear?10d ago

The weakest guarantee that stops a user seeing their own edit vanish.

Concept · Read-Your-Writes Consistency