
The AI Productivity Mirage: When More Output Does Not Mean More Value
AI can inflate output without improving outcomes. This article explains why weak metrics, faster generation, and shallow review create a productivity mirage.
Articles
Development is the broadest category in my writing, so it works as the main archive rather than a narrow subject label. It brings together implementation notes and technical decisions, with delivery lessons from across the rest of the site.

AI can inflate output without improving outcomes. This article explains why weak metrics, faster generation, and shallow review create a productivity mirage.

AI will be OK if teams treat it as real technology, not magic, with adoption shaped by judgement, skills, governance, shared access, and careful autonomy.

Decide whether Shopify to Next.js is worth it by weighing storefront control, SEO, performance, checkout, apps, content workflow, cost, and risk.

Artificial superintelligence means AI that broadly outperforms humans, not just a better chatbot. What ASI means, why it matters, and what remains uncertain.

Timing attacks explained for web developers, including side channels, string comparisons, real examples, and practical defences in JavaScript.

How to design multi‑tenant Next.js architecture across routing, domains, configuration, content, caching, previews, analytics, and team ownership.

Vuex vs. Pinia explained with real trade‑offs, including API design, TypeScript ergonomics, migration paths, and when each choice still makes sense.

Plan Content Security Policy in Next.js with static pages, nonces, third‑party scripts, headers, frames, previews, and incremental deployment safely.

A Pages Router to App Router migration checklist for Next.js teams, covering routing, data fetching, caching, metadata, server components, and rollout.

How to isolate Core Web Vitals regressions after a redesign, covering LCP, INP, CLS, templates, scripts, images, fonts, data, and release evidence.

Solve the N‑Queens problem with TypeScript backtracking, including the decision tree, constraints, complexity, and test cases.

AI automation improves productivity, but unmanaged labour displacement risks weaker demand, brittle organisations, concentrated gains, and a race to the bottom.

Why production data breaks Next.js sites, including CMS fields, slugs, images, relations, dates, rich text, generated routes, and validation gaps.

Use Angular signals for performance optimisation with derived state, computed values, OnPush, effects, RxJS interop, and measuring whether work improved.

Responsible AI becomes real only when decision ownership, data handling, audit trails, exceptions, procurement, and support are assigned to people.

How to debug NextAuth when it works locally but fails in production, covering callback URLs, cookies, secrets, middleware, providers, and Vercel.

Solve Kth Smallest Element in a BST with in‑order traversal, showing why the tree's ordering removes the need for a separate sorting step in interviews.

RxJS offers a powerful, reactive approach to managing state in Angular apps. Here, I clearly explain practical patterns and show how to use them effectively.