System Design: Bloom Filters
Size a Bloom filter from item count and target error rate, see why it never gives false negatives, and know when it's the wrong tool.
Focused explanations and longer guides, with worked scenarios, common mistakes and interview exercises across every chapter.
Showing 25–48 of 200 articles
Size a Bloom filter from item count and target error rate, see why it never gives false negatives, and know when it's the wrong tool.
Build online indicators for 10 million users: heartbeats with TTLs, why the TTL must cover lost beats, and fan-out only to who's watching.
Design a metrics store: count series before samples, keep labels bounded, roll up with retention tiers, and never average percentiles.
Size a URL shortener from 100M links a month, pick between counter-based and random codes, and keep a 4,000 req/s redirect path cheap.
What TypeScript's abstract keyword enforces, why it vanishes at runtime, and when a template-method base class beats an interface.
Write a .d.ts for an untyped CommonJS package, pick export = or export default, augment globals, and ship your own types correctly.
What TypeScript enums compile to, why string enums reject plain strings from JSON, and when an as const object beats both options.
How TypeScript type parameter defaults interact with inference, why one explicit type argument switches inference off, and how to order them.
How index signatures constrain every property, why reads skip undefined until noUncheckedIndexedAccess, and when Record or Map fits better.
Rename keys with as clauses, drop keys by mapping to never, map over a union of events, and spot the string & K and optional-method traps.
Build string types from unions, parse route parameters with infer, see what ${number} really accepts, and know where these types stop helping.
Fix Angular NG8002 Can't bind to 'ngModel' since it isn't a known property of 'input': import FormsModule, then fix formControl and inputs.
Fix 'blocked by CORS policy' errors when Angular ng serve calls a backend: proxy.conf.json, angular.json wiring and production CORS setup.
Fix Angular NG0100 ExpressionChangedAfterItHasBeenCheckedError: why the dev-mode check fires, and data-flow fixes that beat setTimeout.
Fix Angular NG8001 'app-x' is not a known element: standalone imports, selector typos, NgModule exports, schemas and TestBed setup.
Fix Angular NullInjectorError: No provider for X! (NG0201): read the injector path, add provideHttpClient(), providedIn root or a token.
Fix 'exec format error' in Docker: confirm the CPU architecture mismatch with uname and docker inspect, then rebuild with the right --platform or buildx target.
Fix Docker 'port is already allocated' and 'address already in use': find the container or process on the port, then remap or bind to 127.0.0.1.
Fix 'Your branch and origin/main have diverged' and fatal: Need to specify how to reconcile divergent branches: merge, rebase or ff-only.
Fix Git's error: failed to push some refs and ! [rejected] main -> main (fetch first): fetch, rebase or merge, and force-with-lease safely.
Fix Git's fatal: refusing to merge unrelated histories: why it happens, when --allow-unrelated-histories is right, and safer alternatives.
ClassNotFoundException vs NoClassDefFoundError in Java: what each error means, why classes go missing at runtime and how to fix the classpath.
Fix java.util.ConcurrentModificationException when removing items in a loop: use removeIf or Iterator.remove, and see when concurrent lists help.
Fix java.lang.NullPointerException by reading the helpful message, finding the null in the top stack frame and validating inputs early.
No notes match that… try another filter.