
Object Property Shorthand and Computed Property Names in JavaScript
Use object property shorthand and computed property names in JavaScript for cleaner literals, derived keys, method shorthand, and overwrite cautions.
Articles
This is a very broad category within my articles which encompasses any aspect of web development, from initial design and architecture to coding, testing, and deployment.
Below you will find a subset of articles from my blog specifically about Development. This is an area that I have worked with for many years, and have managed to write about quite a few times. There are three hundred thirty‑three collected together for you below.

Use object property shorthand and computed property names in JavaScript for cleaner literals, derived keys, method shorthand, and overwrite cautions.

Object.assign() in JavaScript: Merging and Shallow CopiesUse Object.assign() in JavaScript for merging and shallow copies, with target mutation, overwrite rules, nested‑object cautions, and newer alternatives.

Render lists in React with stable keys, avoiding index and random‑key bugs, preserving component state correctly through filtering, sorting, and reordering.

call, apply, and bind in JavaScriptUnderstand call, apply, and bind in JavaScript, including this context, argument passing, borrowed methods, invocation differences, and practical use.

The JavaScript prototype chain underpins inheritance, enabling object property sharing. Here, I explore its workings, property searching, and quirks.

Type coercion in JavaScript explained clearly, including implicit vs. explicit conversion, equality surprises, string concatenation, and number casting.

Thinking of moving from permanent employment to freelancing? Follow these 5 tips for a smooth transition and establish yourself as a successful freelancer.

Controlled vs. uncontrolled components in React explained with form examples, refs, validation trade‑offs, and why each approach suits different jobs.

this Changes in JavaScript Event Handlers and MethodsUnderstand why this changes in JavaScript methods and event handlers, including call sites, arrow functions, bind(), event objects, and context bugs.
forEach and for...ofWith the introduction of the new JavaScript standard ES6, there are some new and interesting ways to loop through data, which I discuss here today.

Primitive vs. reference types in JavaScript explained clearly, including copying behaviour, mutation, equality, and why arrays and objects surprise beginners.

Lifting state up in React explained clearly, including shared state, single sources of truth, child callbacks, and when moving state higher helps.

localhostThere are many reasons that you might want to detect whether your code is running on localhost. Aside from using environment variables, there's also JavaScript!

Five habits of a good web developer, covering clean code, performance, testing, collaboration, curiosity, standards, and communication beyond code.

How to read JavaScript errors and stack traces in the browser, including common error types, line numbers, call stacks, and a practical debugging workflow.

Pass by value vs. reference in JavaScript explained clearly, including why objects seem shared, how reassignment differs from mutation and common beginner bugs.
Pick a random array element in JavaScript with Math.random(), safe index calculation, reusable helpers, and notes on real interface randomisation.
A common web development task: get the number of years between two dates. I discuss how to do this with PHP in the back‑end, or front‑end with JavaScript.