Tags: medium

Conversational interfaces

A history.

Machine supplying

Book recommendations.


Pimping my home page at Indie Web Camp Nuremberg.

Accessible progressive disclosure revisited

From buttons to links.

Mistakes on a plane

In which Comic Book Guy critiques in-flight entertainment.

A brief history of the World Wide Web by web developers

The web is a tiny pony.

The web on my phone

How do you solve a problem like Safari?

Making things happen

Crazy schemes that just might work.


They’re just restin’.

Accessible progressive disclosure

Using ARIA attributes to power JavaScript functionality.

The voice of MOL

Chipmunks in space.

Moderating EnhanceConf 2016

I had the honour being Master of Ceremonies at the world’s first conference dedicated to progressive enhancement.

Design sprinting

Packing a whole lotta learning into just five days.


Trying not to compromise the sign-up flow on Huffduffer.

Independently published

I want to thank these people for sharing.

Enhance! Conf!

The first conference dedicated to progressive enhancement.

New edition

The second edition of HTML5 of Web Designers

Handling redirects with a Service Worker

A bugfix for Chrome’s errant behaviour.


A little pattern of enhancement.

Service Worker notes

Jotting down some observations.

Huffduffing for podcasters

Making your audio discoverable.

Words of welcome

Writing is interface design.


The power of art.

Hamburger, hamburger, hamburger

Rigidly defined areas of doubt and uncertainty.


Well, that escalated quickly.


Screen reading.

One day in London

To the capital and back.

Separated at death

Farewell, doppelgänger.

Homebrew header hardening

Step-by-step instructions for more secure response headers on Apache.

Small lessons, loosely learned

Softly softly, grokky JavaScript.

The Force Awakens

The inevitable opinion piece on *that* movie.

Year’s end

Marking the start of 2016.


A CSS fix for sluggish tap responses on mobile.

Pseudo and pseudon’t

Pseu-pseu-pseudo classes

Shadows and smoke

Namen sind Schall und Rauch.

Where to start?

Fallbacks and enhancements are fundamentally different things.

A year of learning

Educating Charlotte.

Cache-limiting in Service Workers …again

Trying to figure out which event to use as a trigger.

Metadata markup

So many standards to choose from.


The latest Clearleft internship project has just come to an end. It’s been truly inspiring.

Cache-limiting in Service Workers

This should work in theory. It doesn’t work in practice.

Full Meaning Ampersand

Brighton has been positively bursting with excellent events lately.

Home screen

The web is getting progressively enhanced.

My first Service Worker

Enhancing my site with the niftiest new technology.


I’m Brighton’s Craig Newmark, apparently.


Defeating the inner critic with narrative trickery.


Why is it more nerve-wracking to speak to a small group of people you know than a large group of strangers?

Syndicating to Medium

POSSE: Publish (on your) Own Site, Syndicate Elsewhere.

Mind set

Trying to see the other point of view.

Someone will read this

Haunted by a hyperlink.

Rosa and Dot

Finding Ada …right here in Brighton.

AMPed up

First impressions of Google’s RSS killer …no wait, they already killed RSS.

Web! What is it good for?

Not absolutely nothing, but not absolutely everything either.


There is a crack, a crack in everything. That’s how the light gets in.


The web is not a platform.

Twitter permissions

Don’t be sheeple, tweeple!

Iron Man and me

The story of how one of my Flickr pictures came to be used in a Hollywood movie.


Last night in San Francisco.