I'm not the most talented coder in the world. No, it's true. So I try to write as little code as possible. The less I write, the less there is to break, justify, or maintain.
I'm also lazy, so it's all gravy. (ed: maybe run with a food analogy?)
But it turns out the only sur...
Star Trek: The Next Generation was on TV in the UK when I was a little younger than Wesley Crusher, but I never watched it properly. I've started watching it on Netflix and I'm about twenty episodes into the first season. These are some notes I've made.
The set is very ster...
In September of last year, I decided I wanted to hear stories about how screen reader users access The Web. I suspected, as a sighted web user, I made a lot of incorrect assumptions. Accordingly, I composed seven questions to find out about strategies for reading and operat...
There's been a lot of talk lately in favour of progressive enhancement and 'universal' (isomorphic) applications. Apparently, server rendering increases performance, robustness, and the parsability and interoperability of content.
I welcome these arguments because I'm magna...
From time to time, web and software developers will use bad arguments to justify their choice of technologies, workflows or org structures, or to disparage others' differing choices. I see this a lot, and I may have even dropped the occassional F-bomb myself. We're particula...
(This post was originally published on Medium, put has a permanent home here.)
Flexbox—not to be confused with Sex Box, the British TV show wherein Mariella Frostrup interviews people who’ve just had sex in a box—is the CSS layout toolkit de rigueur. Of all the celebrated fe...
They say accessibility is about people. Inaccessibility is about people too, of course. In either case, it's people — flesh-and-blood, living, breathing people — that interfaces are built to cater for, successfully or otherwise.
What we learn in user research is that people ...
This post is the first in a two part series examining the senescence and ultimate mortality of this blog's proprietor, Heydon Pickering. This week, guest author Malcolm Leader-Thought will make the case that, yes, Heydon Pickering is, in fact, dead; kaput; pushing up the dai...
TL;DR I'm putting together an album to raise money for an organization that supports web accessibility.
I had this brainwave while nursing a hangover in Brighton after Responsive Day Out: There are a load of folks working in the overlapping fields of web standards and acces...
I have a long-held suspicion of anything directed at me — especially anything commercial — that sells itself on its "experiential" qualities. I hate the word "immersive" in particular. "Here, let me waterboard you with my new web app! You're going to love it!" Basically, I'm...
I wanted an easy way to create traditional animations, wherein each frame is a different drawing. I created this Sass @mixin which generates keyframe animation blocks for nth children, placing each of these "frames" in an animated sequence. Note the use of the steps(1) timing function…
I had this one friend at school. Let's call him Darren.
Darren was a liar — a compulsive one — and boy did he tell some whoppers. Not "the world was created in one week" whoppers, but big ones nonetheless.
One lie Darren would tell, at the age of 12, was that he had lost his...
Editor's note: This article has been submitted anonymously to me as the editor of geekmentalhelp.com — the website of the #geekmentalhelp campaign. Not everyone is in a position to "come out" as a sufferer of mental health problems, but they are still out there; members of o...
Note: This article is a deconstruction of a post by Paul Boag called I don’t care if homosexuality is a sin. I recommend you read it unannotated first. Paul "agonized over writing this post", so you owe him that.
I feel I have a duty to address Paul's post as an atheist, not...
Revenge.css is a CSS bookmarklet that reports bad html using pseudo content. If the page you use it with has malformed links, deprecated attributes, <div>s inside inline elements, inaccessible buttons, badly nested sections or other errors, you'll see some ugly, pink errors written in nobody's favourite font: Comic Sans.
I use Paragrabbr a lot. It's a lorem ipsum generator I wrote in AngularJS which includes special punctuation — like em dashes — and phrasing elements like <a>, <strong> and even <kbd>. Helps you get your type design detail right.
Auticons is an icon font and CSS set that harnesses the awesome power of attribute selectors. It places resolution independent icons before or after any hyperlink with an href that matches a certain, expected pattern. In other words, it's an automatic icon font.
The name Squib comes from "Square" and "Slab". Squib supports a total of 165 characters, including all the basic punctuation characters and common Western European accents. It also has an eszett!
Hi everybody! I've just done a lot of cocaine on the company expense account and I want to talk to you about navigational action controls called "hyperlinks" and how to design them into your enterprise-level web application portfolio. YEEEHAWWW.
What is a hyperlink?
Back in ...
In case you weren't already aware, I wrote a book. This is an unusual book since it is a whole technical book dedicated to making web applications accessible. Want to understand how to make dynamic, interactive applications that don't alienate and annoy folks? Using WAI-ARIA...
"I guess it all started pretty innocently enough. The UX guys would be asking for a new module or something. You know the sort of thing: a search box or paginator. Whatever. So I'd give that block a class like 'search-widget' or 'paginator'; something to make my stylesheet m...
When I’m done staring with fear-induced catalepsy at the vast array of complex and overlapping app building, testing, integration and deployment tools that are quickly amassing around me, I like to take a little break and try to solve a simple problem. The “current page” lin...
To be really good at CSS, you have to learn CSS. I know this sounds like a tautology but I've become aware of a peculiar attitude that preprocessors such as SASS are somehow successors to CSS. Some SASS and LESS nerds are fond of proliferating the following aphorism. It shou...
For this article, I took a sample of corporate and small business design clients, erased their memories (with a "mind rubber"), then asked them to critique a small selection of highly prolific and famous commercial logotypes.
To them, this would be the first time they had s...
Please note: The following should be considered an experiment. There is rarely a good reason not to use a <button> element for button-like controls, especially if it means loading a javascript resource just to polfill the behaviors that <button> already offers.
...
What if I told you there was a way to radically alter your web pages without using images, javascript, proprietary CSS3 or any extra markup? What if I told you you didn't have to be an experienced typographer, you could do it for little more than 6Kb and that it would work i...
I love the Perch CMS. It isn't crammed with features and plugins to placate each and every type of developer; it just does the Content Management task really well. Nonetheless, every so often I look for a little tool that Wordpress-derived muscle memory tells me should be pr...