Are We Overcomplicating RAG Architectures?
Vector databases have become the default for RAG — but lately I've been finding that a simpler, vectorless PageIndex often performs just as well, at a fraction of the complexity.
Long-form notes on the things I build — patterns, migrations, and lessons that didn't fit in a commit message.
Vector databases have become the default for RAG — but lately I've been finding that a simpler, vectorless PageIndex often performs just as well, at a fraction of the complexity.
Patterns I've used to render thousands of live data points in React without dropping frames, from virtualized lists to canvas overlays.
Server Components, streaming, and caching boundaries — a pragmatic guide to shipping fast App Router apps without fighting the framework.
Lessons from gradually migrating a large Angular codebase to React — strangler-fig routing, shared state, and keeping the team shipping throughout.
How we streamed live player positions over WebSockets and rendered them with Canvas + D3 without melting the browser on a match-day crowd.