---
title: "Writing"
description: "12 engineering write-ups."
url: https://riteshkc.com.np/de/blog
source: https://riteshkc.com.np/de/blog.md
site: "Ritesh KC"
---
# Writing

Engineering write-ups by Ritesh KC.

- 2026-09-04 — [How to Get a Claude Pro Free Trial in October 2026](https://riteshkc.com.np/de/blog/claude-pro-guest-pass): Anthropic removed the public trial button, but you can still get 7 days of Claude Pro for free. Click here to use an active referral pass. Tags: Claude Pro free trial, Anthropic Claude, Claude AI premium,  Claude referral link, AI tools 2026, Claude guest pass, ChatGPT alternative. Markdown: https://riteshkc.com.np/de/blog/claude-pro-guest-pass.md
- 2026-08-05 — [Eine Statusmaschine gehört in eine Tabelle](https://riteshkc.com.np/de/blog/a-status-machine-belongs-in-a-table): Neun Status, zwei Sätze erlaubter Übergänge und zwei Namen für jeden Zustand. Das alles in Zeilen statt in eine if-Kette zu verlegen, hat die Entwicklung aus dem Workflow-Geschäft geholt. Tags: Architecture, PostgreSQL, Prisma. Markdown: https://riteshkc.com.np/de/blog/a-status-machine-belongs-in-a-table.md
- 2026-08-05 — [Endpoints, die sich weigern, Orakel zu sein](https://riteshkc.com.np/de/blog/endpoints-that-refuse-to-be-oracles): Ein 404 beim Abmelden verrät einem Angreifer, welche Tokens echt sind. Ein 409 beim Anmelden verrät, wer auf der Liste steht. Ehrliche Statuscodes lecken, und die Lösung liest sich wie ein Bug. Tags: Security, NestJS, Architecture. Markdown: https://riteshkc.com.np/de/blog/endpoints-that-refuse-to-be-oracles.md
- 2026-08-05 — [Jeder Reset-Link lieferte 400](https://riteshkc.com.np/de/blog/every-reset-link-returned-400): Der Endpoint war in Ordnung. Das Token war in Ordnung. Die E-Mail war in Ordnung. Der Fehler lag in einem Pfad einer Captcha-Konfiguration, und das schädliche Wort hieß „includes“. Tags: Security, Auth, Debugging. Markdown: https://riteshkc.com.np/de/blog/every-reset-link-returned-400.md
- 2026-08-05 — [„Bereit zum Absenden“ ist kein Boolean](https://riteshkc.com.np/de/blog/ready-to-submit-is-not-a-boolean): Ein Absende-Gate, das nach einer Regel aussah und drei brauchte, dazu eine Fehlermeldung, die benennt, welche von vier Sachen der Studierende tatsächlich beheben muss. Tags: Architecture, NestJS, Prisma. Markdown: https://riteshkc.com.np/de/blog/ready-to-submit-is-not-a-boolean.md
- 2026-08-05 — [Sechs Socket-Events, und kein einziges Refetch](https://riteshkc.com.np/de/blog/six-socket-events-and-not-one-refetch): Realtime kommt meist als zweite Kopie Ihres Zustands. Jedes Socket-Event als Schreibvorgang in den Query-Cache zu behandeln statt als Signal zum Nachladen hält es bei einer. Tags: Next.js, Architecture, Realtime. Markdown: https://riteshkc.com.np/de/blog/six-socket-events-and-not-one-refetch.md
- 2026-07-29 — [Ein Trust Score, den man aus dem Log neu bauen kann](https://riteshkc.com.np/de/blog/a-score-you-can-rebuild-from-the-log): Zehn Zeilen, die eine Moderationshistorie zu einem Score abspielen — und warum das Begrenzen innerhalb des Folds statt danach der Unterschied zwischen funktionieren und leise driften ist. Tags: Architecture, Moderation, PostgreSQL. Markdown: https://riteshkc.com.np/de/blog/a-score-you-can-rebuild-from-the-log.md
- 2026-07-29 — [Cache-Invalidierung, wenn der Cache in einem anderen Repo liegt](https://riteshkc.com.np/de/blog/cache-invalidation-in-another-repo): Ein Admin bearbeitet eine Universität, und die öffentliche Seite behält einen Tag lang die alte Zahl. Das Backend ruft jetzt das Frontend auf — über Tag-Namen, die niemand prüft. Tags: Next.js, Caching, Architecture. Markdown: https://riteshkc.com.np/de/blog/cache-invalidation-in-another-repo.md
- 2026-07-29 — [Überbuchung ist ein Datenbankproblem](https://riteshkc.com.np/de/blog/overbooking-is-a-database-problem): Zeilen zu zählen, bevor man eine einfügt, ist keine Kapazitätsprüfung. Wie stattdessen ein Unique Index, eine Constraint-Verletzung und ein NULL die Arbeit übernommen haben. Tags: PostgreSQL, Concurrency, Prisma. Markdown: https://riteshkc.com.np/de/blog/overbooking-is-a-database-problem.md
- 2026-07-29 — [Einen Anbieter drosseln, ohne Rate Limiter](https://riteshkc.com.np/de/blog/rate-limiting-by-queue-shape): SES begrenzt Sendungen pro Sekunde. Die Lösung war Worker-Nebenläufigkeit von eins plus ein Sleep — und eine ehrliche Notiz im Code über den Fall, in dem das nicht mehr trägt. Tags: Queues, BullMQ, Infrastructure. Markdown: https://riteshkc.com.np/de/blog/rate-limiting-by-queue-shape.md
- 2026-07-29 — [Die schnelle Moderationsschicht tut absichtlich weniger](https://riteshkc.com.np/de/blog/the-fast-moderation-layer-does-less): Ein synchrones Gate auf fünf Routen, das fast nichts blockiert, und ein asynchroner Worker, der alles andere entscheidet. Sie nach Latenz zu trennen war die falsche Achse. Tags: Architecture, Moderation, NestJS. Markdown: https://riteshkc.com.np/de/blog/the-fast-moderation-layer-does-less.md
- 2025-06-01 — [Bei RAG ist Recall die Zahl, auf die es ankommt](https://riteshkc.com.np/de/blog/recall-beats-precision): Warum der Fehlerfall, der ein Retrieval-System versenkt, das nie auftauchende richtige Dokument ist — und warum damit Recall und nicht Prompt-Tuning die Stellschraube ist. Tags: AI, RAG, Retrieval. Markdown: https://riteshkc.com.np/de/blog/recall-beats-precision.md
