Journal

Blog

Tested guides by Waseem Anjum on AI automation, AI agents, MCP servers, NestJS, Next.js, TypeScript and self-hosting, with real code and measured results.

MCP vs API cover: the same service called as GET /api/projects/42 and as an MCP tools/call, with p50 latency 76 µs vs 424 µs and tool token counts

AI Engineering

MCP vs API: When You Need Which, With Real Benchmarks

I built the same service as a REST API and as a stateless MCP server, then measured latency, throughput, bytes and the tokens a model reads. Here is when you need MCP, when a plain API wins, and how to wrap one with the other.

11 min read11 views

pgvector vs Pinecone vs Qdrant cover: recall@10 and latency for 100k OpenAI embeddings, pgvector 0.988 at 4.0 ms and Qdrant 0.985 at 2.6 ms

AI Engineering

pgvector vs Pinecone vs Qdrant: Benchmarked for RAG in 2026

I loaded 100,000 OpenAI embeddings into pgvector 0.8.7 on Postgres 18 and Qdrant 1.19 and measured recall, latency, index build and filtered search, then compared Pinecone's documented limits and pricing. When you need a vector database, and when Postgres is enough.

9 min read2 views

React Compiler in Next.js cover: next.config.ts with reactCompiler true and turbopackRustReactCompiler, plus row re-renders falling from 20,000 to 0

Next.js & React

React Compiler in Next.js 16.4: Babel vs Rust, Benchmarked

I compiled a Next.js 16.4 app with no compiler, the Babel React Compiler and the new Rust React Compiler, then counted re-renders in Chrome: 20,000 row renders dropped to 0, build cost, bundle size, lint rules and the memo() gap.

10 min read20 views