Fetching that brilliant bit
Thoughts on software development, AI, and building things that matter.

Everyone's first instinct when a RAG pipeline gives bad answers is to upgrade the LLM. Almost every time, the model was never the problem — the retrieved context was garbage. Here's why.

Function-calling contracts are the real API surface of your agent. Bad names, vague descriptions, and dead-end errors don't just slow the LLM down — they make it guess. Here's what I learned building

Stop writing tests that justify your code. Write tests that define it — using NestJS, Supertest, Jest, and in-memory MongoDB to ship backend features with real confidence.

Type-safe, batteries-included data fetching for Angular with MaybeSignal reactivity and full optimistic stack support.

Reduce real-time voice AI latency from 3.1 seconds to 320ms under 50 concurrent calls — with Twilio Media Streams, streamed LLM output, and parallelized TTS.