Thoughts about web and web-related things
Planet of the Apps: where are they now?
Looking back on everyone’s favorite cursed Shark Tank ripoff.
Why aren’t you using Vitest for testing yet?
Throw away whatever you’re using already and use this for testing.
Playwright for visual regression testing in Storybook is stupid easy
It will exceed your wildest expectations, or your money back.
A handbook to animation easings
If you use default easings for your animations you might as well not even bother animating it.
Don’t use HSL
HSL is great in theory, but worse than you realize in practice
How to get a job coding in 2022, part 2
Go read part 1 first if you haven’t!
How to get a job coding in 2022, part 1
It’s tough to get started, but the rewards are worth it.
Did we fuck up the internet? part 2
As the philosopher Thom Yorke once said, “where do we go from here?”
Did we fuck up the internet? part 1
The principal designs of the internet were made a long time ago, for different uses than what we use it for today. Are keeping those old designs hurting the internet long-term?
How to handle responsive font sizes in css
Get perfect, easy-to-use font scaling with < 1kB of CSS. Sound too good to be true? It’s not!
Is it time to retire HTML?
HTML was designed for basic text editing. How is it still holding up in a world where we’re building rich interactive experiences?
Not enough people are talking about ES Modules
The great(er) divide in front-end
A year of reflecting on Chris Coyier’s “The Great Divide” post. I think it holds up, but requires a little more nuance.
Media queries are (still) a hack
Media queries are janky. No, it’s not just you.
4 tips for setting a playfulness budget
At what point does whimsy and “delight” turn into user frustration?
CSS puzzles: a mentorship program for better styling
How a 12-week program resulted in open-source education
Secure runtime variables in IronWorker with Manifold
Docker secrets with minimal code & configuration
We migrated to Next.js to serve our home page 7.5× faster
server-side rendering by the numbers
Cloud-jumping: swap hosted services easily with Manifold
how to take back full control of your cloud services in one afternoon
Stylable: the good, the bad, the weird
taking the new CSS preprocessor from Wix for a spin
Envy Labs’ 2017 rebrand
rediscovering meaning, returning to form
Anger can be a force for good
if expressed right—a huge, ginormous “if”
All the answers to “should designers code?”
the eternal war rages on
Dribbble is a painkiller, not a vitamin
how instant gratification can curb growth
Responsive modular typography scales in css
a time-saving type system with little config and lots of flexibility
great for beginners, great for experts
Web design isn’t becoming more boring, and isn’t losing its soul
don’t listen to the haters
webpack + postcss + cssnext
writing future CSS in a modern JS setup
VIM setup for a designer/front-end dev on macOS
when you want to use vim but don’t want your eyes to bleed
Error handling like a three-prong outlet
the hidden part of programming
How to optimize images for web
not all optimization techniques are equal
check out these foundries for new fonts
designs looking a little stale? it’s probably your weak fonts
Build your own touch slider with hammer.js
high-performance touch events for demanding jobs
The distributed web part 2: …or do you?
when is it time to pony up for custom development?
The distributed web part 1: you don’t need a website
when to not get sold by marketing speak
Are images your slow-down?
the secret to optimizing images