
Finding the Median of Two Sorted Arrays with JavaScript
Exploring the 'Find Median of Two Sorted Arrays' problem: Understand its significance in interviews, dive into a TypeScript solution, and test with Cypress.
Articles from more than two decades of building, rebuilding, debugging and leading web projects.

Exploring the 'Find Median of Two Sorted Arrays' problem: Understand its significance in interviews, dive into a TypeScript solution, and test with Cypress.

The JavaScript event loop explained clearly, including tasks, microtasks, rendering, and why async code can still feel surprising under pressure.

call() Method in JavaScriptUncover the capabilities of JavaScript's `call()` for invoking functions with a custom context, a key technique for effective function and method management.

Angular dependency injection explained clearly, from injector scopes and tokens to practical service design, testing boundaries, and application structure.

Explore the concept of short‑circuiting in software development, with a focus on its application in JavaScript using logical operators (AND `&&` and OR `||`).

An exploration of techniques I used to to find differences between two strings in JavaScript; from character‑by‑character comparison to substring analysis.

How to use Vue Teleport for modals and portals, whilst keeping overlays accessible, maintainable, correctly layered, and out of awkward DOM nests.

Poor memory management in JavaScript can slow applications down and cause memory leaks. Here, I explore practical tips to write efficient, memory‑safe code.

An exploration of the nuances of the words 'indexes' and 'indices' in web development. Focusing on convention over logic for effective coding and communication.

Improve Angular routing with scalable URL design, lazy‑loaded feature boundaries, guarded routes, observable loading, and route‑tree maintenance.

A look into how we can use the Intersection Observer API in JavaScript to efficiently track element visibility and how it outperforms historical alternatives.

Not all object copies in JavaScript behave the same way. Explore the difference between deep‑cloning and shallow‑cloning, when to use each, and common pitfalls.

A retrospective on React component APIs before hooks settled, covering render props, higher‑order components, context, classes, and migration judgement.

A practical guide to JavaScript iterators and generators, with lazy sequences, custom iteration, generator control flow, and the trade‑offs behind both.

Whilst replatforming an app, I came across this limitation in Next.js: you cannot (easily) access search parameters in an SSR layout. Here, I share my solution.

How to choose between a freelancer, agency, or lead‑level contractor for serious web platform work, with a focus on risk, ownership, and delivery.

Flatten arrays in JavaScript with `flat()`, depth control, recursion, stack‑based helpers, and clear examples of how non‑array values are handled.

How to write effective Angular unit tests that focus on behaviour, TestBed boundaries, realistic setup, and assertions that survive refactoring over time.

master or mainClean up local Git branches safely with commands that keep main or master, explain ‑d versus ‑D, and avoid accidental remote branch mistakes in busy repos.

Find the weekday from a JavaScript date with Date, UTC alternatives, modulo arithmetic, parsing caveats, daylight saving time, and readable day names.

clamp()Use CSS clamp() for fluid typography, spacing, and layouts with clear minimums and maximums, plus media‑query trade‑offs and responsive examples.