Wasps of the genus Sphex nest underground and prey on crickets. When one of these wasps brings a cricket back to its nest, it does something uncharacteristically thoughtful: the wasp conducts a nest inspection, leaving the cricket outside. Once the wasp finishes, it reemerges to retrieve the cricket.
Now for the kicker: if you — a prankster god of insectkind — move the cricket during the nest inspection, the wasp’s behavioral program reboots. The wasp knows only that the cricket wasn’t where it once was, so the wasp relocates it, drags it back to the nest entrance, and inspects the nest again.
Scholar Douglas Hofstadter coined a word from this behavior: sphexishness. When we say something is sphexish, we’re describing highly deterministic, preprogrammed behavior with the appearance of thoughtfulness. I often grumble to myself about our industry’s sphexishness and the effect it has had on the collective usability of the web.
I’m not implying that most web developers are drones incapable of critical thought — and that’s certainly not the case. We all strive to do our work the best way we know how. Yet we do many small, almost ceremoniously repetitive things as web developers that are definitely sphexish.
Consider our relentless adherence to best practices, even when they result in poor user experiences. We
npm install packages without considering potential downsides or alternative methods. We chase new tools in the hope that they’ll increase our productivity — even though that constant churn invites its own insidious productivity cost.
If we truly want to deliver a great experience to our users, we must be better stewards of usability and performance — which is exactly what Jeremy can teach us. With over fifteen years of experience developing websites and applications for projects large and small, Jeremy has a sharp understanding of how to strike a balance between business requirements, user needs, and developer interests.Estelle Weyl
Frontend architect and organizer of #PerfMatters Conference
Senior Software Engineer for Developer Tools at Stripe
Jeremy breaks down the technology that powers the modern web, and offers reliable techniques for creating robust, resilient user-facing experiences — experience that could be the difference between someone getting what they need, or being left out in the cold.Eric Bailey
Designer and The A11Y Project maintainer
Get notified when preorders start
If you want to know when the book can be preordered, enter your email below. We’ll only ever send you one email when preorders start, and that’ll be it!