The other day I was doom-scrolling twitter, and I saw a delightful article titled “The Case for Fussy Breakfasts.” I love food and especially breakfast, and since the pandemic hit I’ve been using my breaks in between meetings (or sometimes on meetings, shh) to make a full bacon, poached egg, vegetable plate, so I really got into the article. This small joy of creating a bit of space for myself for the most important meal of the day has been meaningful to me — while everything else feels out of control, indulging in some ceremony has done a tiny part to offset the intensity of our collective situation.
It caused me to think of this “fussiness” as applied to other inconsequential joys. A walk. A bath. What about programming?
While we’re all laser-focused on shipping the newest feature with the hottest software and the best Lighthouse scores, I’ve been missing a bit of the joy on the web. Apps are currently conveying little care for UX, guidance, richness, and — well, for humans trying to communicate through a computer, we’re certainly bending a lot to… the computer.
I’m getting a little tired of the web being seen as a mere document reader, and though I do love me a healthy lighthouse score, some of these point matrixes seem to live and die more by our developer ego in this gamification than actually considering what we can do without incurring much weight. SVGs can be very small while still being impactful. Some effects are tiny bits of CSS. JS animations can be lazy-loaded. You can even dazzle with words, color, and layout if you’re willing to be a bit adventurous, no weight at all!
A few of my favorite developer sites lately have been Josh Comeau, Johnson Ogwuru and Cassie Evans. The small delights and touches, the little a-ha moments, make me STAY. I wander around the site, exploring, learning, feeling actually more connected to each of these humans rather than as if I’m glancing at a PDF of their resume. They flex their muscles, show me the pride they have in building things, and it intrigues me! These small bits are more than the fluff that many portray any “excess” as: they do the job that the web is intending. We are communicating using this tool- the computer- as an extension of ourselves.
Nuance can be challenging. It’s easy as programmers to get stuck in absolutes, and one of these of late has been that if you’re having any bit of fun, any bit of style, that must mean it’s “not useful.” Honestly, I’d make the case that the opposite is true. Emotions attach to the limbic system, making memories easier to recall. If your site is a flat bit of text, how will anyone remember it?
Don’t you want to build the site that teams in companies the world over remember and cite as an inspiration? I’ve been at four different companies where people have mentioned Stripe as a site they would aspire to be like. Stripe took chances. Stripe told stories. Stripe engaged the imagination of developers, spoke directly to us.
I’m sad acknowledging the irony that after thinking about how spot on Stripe was, most of those companies ignored much of what they learned while exploring it. Any creativity, risk, and intention was slowly, piece by piece, chipped away by the drumbeat of “usefulness,” missing the forest for the trees.
When a site is done with care and excitement you can tell. You feel it as you visit, the hum of intention. The craft, the cohesiveness, the attention to detail is obvious. And in turn, you meet them halfway. These are the sites with the low bounce rates, the best engagement metrics, the ones where they get questions like “can I contribute?” No gimmicks needed.
What if you don’t have the time? Of course, we all have to get things over the line. Perhaps a challenge: what small thing can you incorporate that someone might notice? Can you start with a single detail? I didn’t start with a poached egg in my breakfast, one day I made a goofy scrambled one. It went on from there. Can you challenge yourself to learn one small new technique? Can you outsource one graphic? Can you introduce a tiny easter egg? Say something just a little differently from the typical corporate lingo?
If something is meaningful to you, the audience you’ll gather will likely be the folks that find it meaningful, too.
I loved this article (almost as much as I love breakfast). Taking care and expressing yourself while keeping things functional and useful is software engineering (really all engineering) at its best.
It reminds me that the “best” website I’ve seen recently is for a local cafe: http://www.gallerycafesf.com/
Written over 20 years ago but the warmth and playfulness shines through, without obscuring the usefulness.
You should check Wiby.me :)
I really ❤️ Josh W. Comeau’s work. Indeed inspirational.
Nice read. Caught my attention. I thought, ‘Fussy? Never good’ but got the gist after delving into your words. I must commiserate to your angst of the moment in many respects. As we are in changing times, so must design and code change. A bit of development fatigue can inspire some redirection. When you’re designing the interface you can’t help a running question log in your mind, it might even slow you down not because you’re learning or practicing skills but because you’re wondering if it can be different, simpler, better. And finally your breakfast sounds perfectly divine.
Now if only I could get disciplined enough to set aside the time to actually build my personal site! I have four folders named “Personal Site 2016”, “Personal Site 2018”, “Personal Site 2019” and “Personal Site 2020”, each with a handful of Photoshop files and a folder where I ran “vue create .” (or whatever tech stack I was into at the time).
The latest one actually made it online thanks to Sanity and Netlify making it so easy, maybe I’ll just design it straight in code and blog about it as I go.
Or maybe I’ll just add another folder to the pile in 2021…
Flash was a bad thing for many reasons. Sadly when we decided to move on we seem to have moved on from emotive or playfully conceived sites too. As though playfulness or high concept constitutes a security risk or can’t be made accessible. Thank you for writing this.
I find the opposite to be true. I love the sites you listed but think sites aren’t viewed as mere document readers.
Too many sites look like dribbble spin offs. A lot of sites are very beautiful and difficult to use (most awwwward sites)
I agree that many sites put too much emphasis on design. It’s a balance though, because I can barely read the text on sites like http://paulgraham.com/.
The term “visual design” reminds us that most design is intuitiveness, not aesthetics.
In terms of quirky developer sites, KIRUPA is fantastic as well. Lots of little quirky details.
Lighthouse score are the weird rules Google wants you to follow. Google is not the defining source on how the web has to be. I really hate the deferred loading of images, it adds no value for a user. HTML provides the picture tag, you can use
I am not a designer, but i can see the art in it when it’s done creatively. The only rule I kept in all my years of making websites is, make websites for people not for machines. If people want to get data make a text only website. If people want to escape on a website make it as heavy, code an byte wise, as it needs to be. There is not one template for a website.
And now i will step off my soapbox before the police arrives.
I was watching the guitarist Steve Vai on Youtube, explaining his craft: he was talking about putting your intention into the (musical) note.
He also mirrored what you said about if you enjoy something you’ve created, chances are that others will, too.
Josh’s site is probably the only site that I visit every single day. Apart from the truckload of invaluable content on there, you can tell at first glance that Josh really determined to put his stamp on it. Yes, I am eternally envious and hope to one day communicate the same care, patience and creativity such site ooze.