Wednesday is Link Day

It’s been a while, so here’s a humongous list of goodies for y’all.


Performance Testing Dictionary, a free book (registration required):

Yes, a performance budget builder:

Measuring performance (using the navigation timing API):

Aligning app performance to business success (podcast):

Performance advice from experts:

A good case study on performance improving the bottom line:

The “average page” is a myth:


This 1939 Chart Explains How Color Affects Legibility:

What’s coming up for Microsoft Edge in 2016. Number 2 on the list: Accessibility:

What to do when you get sued for your inaccessible website:

The BBC gives advice on how to design for accessibility:

The business case for issue prevention: Extreme Accessibility:

Accessibility for business and pleasure:

The browser accessibility tree:

Progressive Enhancement

A simple enhancement for ordering items by, who else, Jeremy “My Man Crush” Keith:

“JavaScript web apps considered valuable”:

“Why I hate your single page app”:

“Don’t tell me what my browser can’t do”:

Progressive web apps by Google (I may have linked to this before):


Mobile and Multi-device design: a free e-book (on Apple devices only, bah):

The world’s poorest households are more likely to have a mobile phone than a toilet:

As mobile screen size increases, so does activity:

Launch an Android app from the web and cleanly fallback to web:


Shared before, but still great. Offline access to documentation:

Give developers autonomy. Couldn’t agree more:

Want to write software for your car? It’s coming:

The history of Open Source, and a glimpse at its future:

The woes of date input (yep, got that t-shirt):

“Paid a great deal to be terrible at development most of the time”:

The art of debugging (presentation and video):

Martin Fowler on feature toggles:

Control CSS filters with HTML attributes:

Developer fallacies:

The sad state of entitled web developers:

Most developers have never seen a successful project:


Via Beth: what’s next for manual testers:

On screen reader testing:


“Design without touching the surface”:

Great talk by Jen Simmons about getting out of our design rut:

CSS best practices presentation:

The Goldilocks approach to responsive design:

About notifications and no-UI:

The dangerous UI team:


We need to really understand promises:

Offline with ServiceWorkers and UpUp:

2016 – the year of streams:

Definitive guide on charts in JavaScript:

const and immutable objects in ES6:

Regex in JavaScript made easy:


Old-school PC fonts:

Online regular expression tester:

Stupid hackathon. Featuring my favourite Chrome extension “Non-Ad Block”:

A feature detection library in 1KB:

Images and sketches of popular mobile devices (from Facebook):

And finally…

Remember Command and Conquer? Here it is in HTML5:

A briefish history of the web (in 3 parts):

Play a drum machine with your keyboard. And record it. Yes:

And if that wasn’t good enough, here’s a TR-808:

Free philosophy e-books. Cos I know you love ’em:

What Tor’s data looks like as it flows around the world:

The web is OK:

Tuesday is Link Day!


Presentation on “Smaller, faster websites” by Mat Marquis:

The website obesity crisis (presentation):

What developers should know about performance:

What I’ve learned from monitoring four years of web page bloat:

Articles about how web performance affects revenue:

Avoiding Temptations that Harm Website Performance:

Progressive enhancement

Jeremy Keith hits a million nails on the head: “Server-side rendering is not a fallback; client-side rendering is an enhancement.”

What “progressive web apps” mean for the web:

Interaction is an enhancement – an excerpt from Aaron Gustafson’s new book:

The article that first described progressive enhancement:

Reimagining Single-Page Applications With Progressive Enhancement:


The modern web is broken for people with disabilities:

Mozilla accessibility QA engineer tells us what the basics of accessibility are:

Learn about accessibility in just 20 minutes:

On accessibility and the lack of proper HTML:

Free web accessibility tools round-up:


Why you shouldn’t bother creating a mobile app:

The App-ocalypse: Can Web standards make mobile apps obsolete?:

Instant Loading Web Apps with An Application Shell Architecture:


Dark Patterns: fighting user deception worldwide:

A rant: how are website still screwing up these user experiences:

Simple inline error message pattern:

Three principles for using design successfully. No 1: Start with design, and don’t just end with it:

Brad Frost is writing a book on Atomic Design, which you can read for free here:

How to make sense of any mess, a free online book on information architecture:

Beyond the style guide:

How to do a UX review:


Psychological pricing strategies (mammoth set of tactics!):

The perfect storm in digital law:

What customer experience excellence looks like: “Customer experience is 10% technology and 90% culture”:

Helping VIPs care about performance:

Teams/general development

Rachel Andrew on confidence and getting overwhelmed:

What RESTful actually means:

What do we ask in Stack Overflow:

Yahoo gets rid of QA:


A useful JavaScript glossary:

Microsoft open sourcing the Chakra JavaScript engine:

An “operating system”, with lots of apps, in JS:

“Every JavaScript project you should be looking into”:

Amiga emulator in JavaScript, with games:

The service worker cookbook: “a collection of working, practical examples of using service workers in modern web apps”:

You don’t need jQuery:

4 JavaScript design patterns you should know:

Use React? here’s a cheat sheet:


Flexbox Froggy – learn flexbox with a fun game:

Flexbox support is pretty good, except for IE:

And there’s now an IE 8/9 polyfill:

Web components that can be built purely using css, NO Javascript:

“Just add water” CSS animations:

Tools and resources

Security Panel debuts in Chrome DevTools:

Dictionaries and Word Lists for Programmers:

Some good videos to watch, mostly JavaScript:

Big list of “free for development” services:

Use console.table for easier logging:

SpaceHolder – A space-themed image placeholder service:

How to use Chrome DevTools like a Pro:

Each year this online advent calendar has fantastic articles:

And so does this performance-specific advent calendar:

And finally

History of the web:

See websites in old – I mean REALLY old – browsers:

GCHQ going open source?, a typing game:

For the geek in your life: Star Wars Kama Sutra:

Sunday is Link Day!

Business / project management

“Case studies and experiments demonstrating the impact of performance optimization on user experience and business metrics.”:

It’s always the right time to revisit the beans-up-noses article:

Uncle Bob chimes in on Volkswagen:

“Welcome to Traction Stack, a curated directory of marketing resources from six years of research for Traction, the bestselling book that helps businesses and projects of all kinds get traction.”:

Prevent feature creep:

How to avoid personalisation project pitfalls:


Google tells business leaders not to concentrate on mobile apps:

And the stats show that hoping your mobile app will become popular is like hoping you’ll win the lottery:

Case study on having push notifications in a web app:

A good overview of the different ways of implementing web apps for mobile:

Wait, what? Mobile browser traffic is 2X bigger than app traffic, and growing faster:

A publishing company abandons native apps:


From pages to patterns – practical tips for moving to modular design:

Lovely UI: a collection of mobile UI elements:

Loads of responsive navigation examples:

Not sure if I’ve linked to this Designing for Performance book; if not I apologise:

Using web fonts the best way: design principles:

Even the U.S. government has a style guide now:

Design thinking comes of age:

Web field manual – lots of good design resources:


Adding custom performance metrics:

Transcript and slides for Scott Jehl’s talk “Delivering Responsibly”:

Fantastic idea – Facebook will slow down their network every Tuesday so employees can experience the web as most of the world does:

The ad industry is starting to realise they are a big part of the performance problem:

Consumers still value performance over content:

Zeldman, the godfather of the web, reflects on performance over the years:

Great front-end performance primer for full-stack (i.e. back-end) devs:

Calculate a performance budget:

Web font anti-patterns:


Ever wondered what screen readers actually sound like? Here:

Accessibility wins – showcasing good accessibility:

Using the tabindex attribute:

A11y Rocks! An album for accessibility:

Simple guide to web accessibility testing:

Super-quick accessibility testing – just add a CSS file:

Progressive enhancement

Jake Archibald on implementing modern progressive enhancement:

Flipkart changed from having a native app to a progressive website:

Building an offline page for the Guardian:

There are no “buts” in progressive enhancement (slides):

Jason Garber bangs on about it. You must be getting the message by now, yes?

Good collection of resources:

A big deal: Google advocates progressive enhancement to help with SEO:

Resources, tools, libraries, all that good stuff

Bing have a mobile friendliness checker:

There’s a whole new post-CMS world out there:

“The one-stop place to find the information and tools you need to help you learn, build, and move the web forward.”:

Fantastic interactive site showcasing Firefox’s dev tools:

See who’s tracking you online with this Firefox add-on:

Firefox also have a really useful screenshot command:

The search engine for source code: (limited results, but I quickly found a site using one of my Open Source libraries)

Load testing for websites and APIs:

An image comparison tool, can be put into a build process to check for visual regression:

Passwordless authentication:

Lots of documentation in one place:

Geek life

What’s that? A browser API for taking payments? Yes please:

New HTML elements proposed: <panel> and <panelset>:

A think-piece on the changing form of the browser:

Technical debt: more than just code:

FLIF – free lossless image format:

HTTP is obsolete. It’s time for the distributed, permanent web:

Google is 2 billion lines of code, in one repository:

Designing for accountability, designing for broken-ness:


Guidelines on implementing REST, from the NSA (TL;DNR: put a back-door in it for us … not really :0):

The Terence McGhee Software Ninja Class Hierarchy:

Uncle Bob on making things future proof:

Is programming poetry?

Who Dictates Software Quality: Client or Coder?:

Front-end developer handbook:

The configuration complexity clock:

Programming sucks:


Experiments from Jen Simmons:

Create and maintain style guides using CSS comments:

Nice example of a generic CSS system:

Making the cascade your friend:

Free e-book – transforms in CSS by Eric Meyer:

Flexbox cheatsheet:


Some useful JavaScript utilities, including a C#-like stringFormat:

Making a site work offline with Service Worker:

Using the oninput event handler with onkeyup/onkeydown as its fallback: (note to self: do this)

Stats on the performance of different JavaScript frameworks on mobile devices: (I don’t hide the fact I’m unconvinced by the current obsession with frameworks)

Content aware image cropping:

The definitive source of the best JavaScript libraries, frameworks, and plugins.:

Copy text to the users clipboard:

12 rules for professional JavaScript:

The looping evolution:

Write a flowchart in text, see it instantly updated:

And finally…

Convert images to LEGO:

The wah wah machine. If this doesn’t make you smile you have no soul:

Like maps? Go down a mappy rabbit hole:

Magic playlist – song suggestions based on what you like:

Visualise events in history (powered by Wikipedia):

A new way to choose what to read next:

Wednesday is Link Day!

Business / Working Life

Data is not an asset, it’s a liability:

Strategic procrastination:

Putting on the shipping goggles: (if you’re not a regular reader of Signal vs Noise then you should be)

Reduce the distance between the people who make decisions about the product and the people who build the product:

Everything is broken:

Fluid coupling: When exactly did enterprises become late adopters of technology?

Preparing organisations to become design-infused:

New, responsive design reduces bounce rate at by 37%:


Little Big Details: taking inspiration from the little details that make designs great:

Predictive personas: quote: ‘…the question they should be asking themselves isn’t, “If I interviewed a user, would this describe her?” The question should be, “If I found a person like this, would she become a user?”’

Forget about the mobile Internet:

The style guide: (other examples available on

Style guide from Salesforce:

Improving the checkout experience with animations: (but read the article below…)

Design safer animation for motion sensitivity:

Design patterns:

Front-end principles for designers:

The language of modular design:

How modern web design works:

Progressive enhancement / Performance

Bruce Lawson’s talk “Ensuring a performant web for the next billion people”: (Opera Mini is a popular browser for those with low-powered and low-bandwidth devices)

Aaron Gustafson with a timely reminder that we don’t really control our web pages:

Jeremy Keith’s presentation on progressive enhancement from May: (video and full transcript)

Preloading, prefetching, prebrowsing:

Embracing the network: modern techniques for building resilient front ends: deck, no video published yet)

A beginners guide to website speed optimisation:

User experience / Usability / Accessibility

The psychological speed of mobile interfaces: (this is much the same as “perceived performance” which I bang on about)

The device context continuum – where does the common device context continuum start and end? (hint: it doesn’t)

Hello, my name is <Error>:

Living with bull:

How to write an error message:

Visual ARIA bookmarklet:


Fantastic introductory article about JavaScript promises:

Learning JavaScript in 2015 (from scratch):

Learn JavaScript essentials:

Really interesting look at why SoundCloud started using microservices, by their director of engineering:

5 questions every unit test must answer:

Package built on PhantomJS to generate screenshots at different sizes:

6 tips for Chrome devtools:

Client-side MVC is not a silver bullet:


Free e-book from Smashing Magazine:

Fill Murray: placeholder images of Bill Murray:

And finally…

Old maps:

Interactive cubic Bezier curve editor (more fun than it sounds):

Big list of naughty strings:

Wednesday is Link Day

A super bumper jumbo crop for you :0)


Interface writing – code for humans:

The best interface is no interface:

Making companies competitive by expanding design’s role: (more UIE goodness)

Style guides best practices, a presentation by Brad Frost:

Wonderful presentation by Jared Spool on building delightful UX:

Performance and progressive enhancement

The Guardian reports on advertising affecting web page performance (if you can find the article amongst all the ads…):

And CNN Money is also talking about web performance:

Progressive enhancement, by the government:

Don’t add the clever thing:

10 ways to minimise reflows:

Designing with progressive enhancement (talk, slides):

Cache efficiency study by Facebook:

Offline first – the final frontier?:

The web’s cruft problem:

There was a lot of discussion about progressive enhancement following a couple of conferences in June, here are the best articles I saw about it:

Assumptions (by Remy Sharp):

Baseline (by my man-crush Jeremy Keith):

Thriving in unpredictability (by Tim Kadlec):

Availability (by Stuart Langridge): (also see


WAI-ARIA screen reader compatibility tables:

The great and good of the accessibility world are putting together an Album for Accessibility:

Styling forms accessibly:

The business case for (accessible) issue prevention:

The accessibility cheatsheet:

Tools and resources

Control and manage real smartphones from your browser:

Awesome geek podcasts! Awesome!

Lightweight, standalone JavaScript input masking:

Get started with CSS (a free course by Russ Weakley, CSS guru):

New W3C mobile checker tool:

Free book on JavaScript:

And another one:

Know your HTTP (posters to print):

Performance tools, a good list by CSS Tricks:

Accessibility testing plugin for Chrome:

Automated accessibility testing:

Accessibility visualisation toolkit:

New performance tools in Firefox:


Everyone knows about, so here’s

.Net Framework 4.6 is coming, with lots of goodies:

Yet Another Weekly Email:

Developer or user convenience, who should pay? Good stuff from Aaron Gustafson:

A website for code reviews:

The boring front-end developer:

Layers and legacies: a warning about old code:

Comparisons between software and medicine:

The whole of JavaScript in one picture:

.Net extensions galore:

Useful JavaScript debugging tips you didn’t know:

No good can come of bad code:

The role of a senior developer:

And finally…

You know (and hopefully love), so check out

An old-skool synth in JavaScript:

Finally, a solution to providing comments without feeding the trolls:

3D maps of every London Underground station:

Stories about the internet (more interesting than it sounds):

The untold story of the invention of the game cartridge:

For the pedants among you: