41554 blogs · [
{
"id": "01a0dcbe-1eef-70b2-9b53-e595c81209fe",
"title": "Large Language Models vs World Models: A Simple Guide",
"url": "https://rajnandan.com/posts/large-language-models-vs-world-models/",
"published_at": "2026-09-24T00:00:00+00:00"
},
{
"id": "01a087cf-44f1-71db-8d25-bbb46f32dd1c",
"title": "json-to-md: The Same Markdown From JSON, in TypeScript and Go",
"url": "https://rajnandan.com/posts/introducing-json-to-md/",
"published_at": "2026-08-30T00:00:00+00:00"
},
{
"id": "01a087cf-44f2-71b4-9236-c90d393d967e",
"title": "ken: Ken Thompson's Working Method, Installed in Your Coding Agent",
"url": "https://rajnandan.com/posts/introducing-ken/",
"published_at": "2026-08-30T00:00:00+00:00"
},
{
"id": "01a087cf-44f2-71b4-9236-c90d39779595",
"title": "The AI Layoff Trap",
"url": "https://rajnandan.com/posts/the-ai-layoff-trap/",
"published_at": "2026-06-26T00:00:00+00:00"
},
{
"id": "01a087cf-44f2-71b4-9236-c90d39cd5708",
"title": "Good Taste the Only Real Moat Left",
"url": "https://rajnandan.com/posts/taste-in-the-age-of-ai-and-llms/",
"published_at": "2026-04-03T00:00:00+00:00"
},
{
"id": "01a087cf-44f2-71b4-9236-c90d3acd219f",
"title": "Agent Harness Engineering vs Context Engineering vs Prompt Engineering",
"url": "https://rajnandan.com/posts/agent-harness-context-prompt-engineering/",
"published_at": "2026-03-21T00:00:00+00:00"
},
{
"id": "01a087cf-44f2-71b4-9236-c90d3af89c4a",
"title": "OWASP Top 10 for LLMs: AI Vulnerabilities and How to Defend Against Them",
"url": "https://rajnandan.com/posts/owasp-top-10-ai-vulnerabilities/",
"published_at": "2026-03-13T00:00:00+00:00"
},
{
"id": "01a087cf-44f2-71b4-9236-c90d3b34a1d2",
"title": "P vs NP, NP-Hard, and NP-Complete - A Very Simple Guide",
"url": "https://rajnandan.com/posts/p-vs-np-for-everyone/",
"published_at": "2026-03-10T00:00:00+00:00"
},
{
"id": "01a087cf-44f2-71b4-9236-c90d3c2bb4d6",
"title": "How a Screen Turns Electricity Into Motion",
"url": "https://rajnandan.com/posts/how-a-screen-turns-electricity-into-motion/",
"published_at": "2026-03-09T00:00:00+00:00"
},
{
"id": "01a087cf-44f2-71b4-9236-c90d3c48afc8",
"title": "Largest Triangle Three Buckets: Downsampling Time-Series Data Without Losing Signal",
"url": "https://rajnandan.com/posts/largest-triangle-three-buckets-downsampling/",
"published_at": "2026-01-23T00:00:00+00:00"
},
{
"id": "01a087cf-44f2-71b4-9236-c90d3cfd849a",
"title": "The Go Frontend Dilemma 2026: Templ, React, and the Return to the Server",
"url": "https://rajnandan.com/posts/go-frontend-architecture-2026/",
"published_at": "2026-01-21T00:00:00+00:00"
},
{
"id": "01a087cf-44f2-71b4-9236-c90d3d2b882b",
"title": "State of Agentic Commerce 2026: The Protocol Wars and the New Retail Stack",
"url": "https://rajnandan.com/posts/state-of-agentic-commerce-2026/",
"published_at": "2026-01-21T00:00:00+00:00"
},
{
"id": "01a087cf-44f2-71b4-9236-c90d3d831260",
"title": "Apache Spark vs Flink vs Airflow: A Comprehensive Comparison with Real-World Examples",
"url": "https://rajnandan.com/posts/apache-spark-flink-airflow-comparison/",
"published_at": "2026-01-20T00:00:00+00:00"
},
{
"id": "01a087cf-44f2-71b4-9236-c90d3dda7ab4",
"title": "Memoization: The Art of Teaching Your Code to Remember",
"url": "https://rajnandan.com/posts/memoization-optimization-typescript/",
"published_at": "2025-12-11T00:00:00+00:00"
},
{
"id": "01a087cf-44f2-71b4-9236-c90d3e0027f2",
"title": "Enterprise AI in 2025: $37 Billion and Counting",
"url": "https://rajnandan.com/posts/enterprise-ai-2025-37-billion/",
"published_at": "2025-12-10T00:00:00+00:00"
},
{
"id": "01a087cf-44f2-71b4-9236-c90d3e60b917",
"title": "McKinsey's State of AI 2025: The Gap Between Adoption and Impact",
"url": "https://rajnandan.com/posts/mckinsey-state-of-ai-2025-analysis/",
"published_at": "2025-12-08T00:00:00+00:00"
},
{
"id": "01a087cf-44f2-71b4-9236-c90d3e9beb65",
"title": "Introducing PaperPin: AI-Powered Surveys with Synthetic Respondents",
"url": "https://rajnandan.com/posts/introducing-paperpin-ai-surveys/",
"published_at": "2025-12-06T00:00:00+00:00"
},
{
"id": "01a087cf-44f2-71b4-9236-c90d3f79c89a",
"title": "Rogue AI Agents and How Observability Builds Trust",
"url": "https://rajnandan.com/posts/rogue-ai-agents-observability-trust/",
"published_at": "2025-11-29T00:00:00+00:00"
},
{
"id": "01a087cf-44f2-71b4-9236-c90d3fe704a2",
"title": "Stripe's Agentic Commerce Protocol: Building the Rails for AI-Powered Commerce",
"url": "https://rajnandan.com/posts/stripe-agentic-commerce-protocol/",
"published_at": "2025-11-28T00:00:00+00:00"
},
{
"id": "01a087cf-44f2-71b4-9236-c90d401106cc",
"title": "A 2x Engineer",
"url": "https://rajnandan.com/posts/2x-engineer/",
"published_at": "2024-11-15T00:00:00+00:00"
},
{
"id": "01a087cf-44f2-71b4-9236-c90d40f0b5d2",
"title": "Practical PromQL Examples",
"url": "https://rajnandan.com/posts/promql-examples/",
"published_at": "2024-07-18T00:00:00+00:00"
},
{
"id": "01a087cf-44f2-71b4-9236-c90d41b2148e",
"title": "Messaging between Browser Windows using ruto.js",
"url": "https://rajnandan.com/posts/browser-window-messaging-ruto/",
"published_at": "2024-05-18T00:00:00+00:00"
}
] posts Claim your blog