The End of Internet Explorer

Today marks a linchpin moment in web development, and especially front-end development. Microsoft has formally retired their long-standing, divisive browser.

The End of Internet Explorer.

Position Sticky in CSS

Achieving sticky positioning on the web was once a weighty process using JavaScript to detect scroll positions and switch styles. Now, we have position: sticky!

Position Sticky in CSS.

Spread Syntax in JavaScript (...)

In a nutshell, JavaScript spread syntax allows you to pass the elements of an iterable (for example an array), through to a function as individual elements.

Spread Syntax in JavaScript (...).

The Safest Way to Test for NaN

NaN is an unusual concept in JavaScript, especially for developers newer to the language. As a result, testing for it can be more complex than first expected

The Safest Way to Test for NaN.

When to Use var, let, and const

Declaring variables in JavaScript can be complicated by mutability, and scope. The three options are 'var', 'let', and 'const'. Here I discuss the differences.

When to Use var, let, and const.

What Is a Distributed Denial of Service (DDoS) Attack?

It has been a little while since a DDoS attack made the headlines. Nevertheless, the risk is omnipresent and very difficult to do anything about or to stop.

What Is a Distributed Denial of Service (DDoS) Attack?

Gatsby & GraphQL: Nodes vs Edges

A question I have often been asked when it comes to developing with Gatsby and GraphQL: what's the difference between Edges and Nodes?

Gatsby & GraphQL: Nodes vs Edges.

HTML Video and the Preload Attribute

Video on the web has changed dramatically from the days of Flash. HML5 <video> still remains a struggle for some developers. Especially the preload attribute.

HTML Video and the Preload Attribute.

Why You Should Not Use Protocol-Less URLs

When the web was still entirely mixed content between HTTP and HTTPS, protocol-less URLs made sense. Now, they are a genuine threat to your business and users.

Why You Should Not Use Protocol-Less URLs.

Where to Find Jobs in Web Development

Job-hunting can be a long, nerve-wracking experience. As contractors and freelancers, it is something we have to do more frequently than most...

Where to Find Jobs in Web Development.

localStorage in JavaScript

With HTML5, new storage APIs became available that allow us to store small amounts of non-essential data on the client-side without needing cookies

LocalStorage in JavaScript.

How to Improve Your Time To First Byte (TTFB)

Time To First Byte (TTFB) is a crucial influence on website performance. The easy answer is increasing server resources, but there are other considerations too.

How to Improve Your Time To First Byte (TTFB).

Optional Chaining in JavaScript (?.)

Introduced as part of the ES2020 spec, JavaScript optional chaining takes some of the guesswork and convoluted if statement structuring out of accessing data.

Optional Chaining in JavaScript (?.).

Semantic HTML

A brief, and high-level, guide to HTML, HTML5, and how to best produce semantic, accessible, and understandable markup.

Semantic HTML.

Positioning in CSS

In CSS, 'position' is one of the absolute fundamental rules you must master in front-end development.

Positioning in CSS.