
From Netlify Deploys to Vercel Pipelines
How deployment expectations moved from simple Netlify static deploys towards Vercel pipelines, previews, framework builds, observability, and rollback.
Articles from more than two decades of building, rebuilding, debugging, and leading web projects.

How deployment expectations moved from simple Netlify static deploys towards Vercel pipelines, previews, framework builds, observability, and rollback.

AI has ethical and environmental costs. Here, I examine its sustainability, responsible use, and whether artificial intelligence could ever replace developers.

Build a reusable Vue 3 composable with the Composition API, covering side effects, useOutsideClick, browser boundaries, typing, lifecycle handling, and testing.

When you set up a custom domain in Vercel, the default `vercel.app` subdomain still serves your site, which can lead to duplicate content. Here's how to fix it.

How to solve Number of Islands with grid traversal, treating the matrix like a graph, marking visited land safely, and reasoning about DFS in TypeScript.

provide/inject API: When and How to Use ItWhen Vue provide/inject is the right tool, how to keep it reactive, and where it fits better than props or a full store in larger component trees.

AI is reshaping web development, but is it helping or harming the industry? I explore its impact on developers, security, and the future of hiring.

Vue 3 replaces Vue 2's getters and setters with JavaScript proxies. This article explains how they differ and why proxies improve Vue's reactivity system.

<b> and <strong>The `<b>` and `<strong>` tags both make text bold, but they serve very different purposes and convey different meaning. Here, I explain these differences.

Optimise Vue.js performance with lazy loading and code splitting, covering route‑level chunks, async components, bundle strategy, measurement, and UX.

How to solve Longest Substring Without Repeating Characters with sliding window basics, comparing Set and last‑seen‑index approaches in TypeScript.

Protect Next.js routes with Proxy, formerly Middleware, using authentication, authorisation, matchers, API request checks and current terminology.

place‑contentUse CSS place‑content to align grid and flex content, comparing align‑content, justify‑content, place‑items, syntax, examples, and layout limits.

Fixed quote, day rate, and retainer pricing for senior web development, explained through scope, risk, delivery, ownership, and platform quality.

Why static generation became more complex as CMS previews, ISR, cache invalidation, build queues, e‑commerce data, and platform expectations grew.

place‑itemsCSS `place‑items` is a shorthand property that aligns items inside grid and flex containers. Here, we discuss its syntax, use cases, and practical examples.

Template‑driven vs. reactive Angular forms, and how to choose the right model for validation, scale, testing, and maintainable form logic in real apps.

How e‑commerce front‑end work moved from Liquid templates to headless storefronts, and what teams risk when they underestimate data, checkout, and operations.

Converting between camel case, snake case, kebab case is a common task in JavaScript. Here, I explore methods using regular expressions and string manipulation.

How to solve Trapping Rain Water with the two‑pointer approach, and the simple invariant that makes the O(n) solution click under interview pressure.

A practical look at AI in web development, where it helps, where it creates review burden and why generated code still needs senior judgement.