Appears on
Articles29
Agile for the rest of us
This article was originally written for the Fusionbox blog in January 2015. The Fusionbox process takes many pages from the Great Big Book of Agile Methodology to streamline and modernize the production of web content, etcetera, but for the folks at home, what is agile development? Where did it come from? Who let it in? Should we feed it? Waterfall Software
Bad ux in everyday life: kitchen nightmares
This article was originally posted on the Universal Mind blog in June 2016. It’s come to my attention lately that my kitchen is absolutely riddled with poor experiences. Most of the appliances and apparatus one uses on a day-to-day basis in the kitchen were invented or last revolutionized in the early part of the 20th century, and many of them have seen very
Uses
This is a non-exhaustive list of the tools I use in my day-to-day operation for design, development, and life as a human. If I’m missing something, let me know ! Hardware Main Computer — 2023 MacBook Pro, 14-inch, 16GB M2 Webcam — Onboard Mac laptop camera Logitech C920 Pro HD Microphone — Blue Microphones Yeti Blackout . Got it for streaming, use it for eve
How to make an animated interactive vue.js slider
So, I was looking for a fun example of UI interactivity to prototype on Codepen, and I stumbled upon this really cool shot that Alexsander Barhon shared. It’s a simple enough animation, with a really nice loading effect and staggered timeline that make it feel super fluid. I’ve been really into Vue.js lately, and this seemed like a perfect opportunity to cod
Let’s talk about banning political ads on Twitter
Before you get started, fair warning that this post has “takes”, some of which could be considered “hot”. This post is not about web development. So, Twitter recently stopped allowing political advertising. jack 🌍🌏🌎 (@jack) October 30, 2019 We’ve made the decision to stop all political advertising on Twitter globally. We believe political message reach sh
2019: Year in review
Introduction This time last year, I Tweeted out some goals for the New Year. 🗣️ Speak about CSS at a conference or school 🎓 Take a class a month 📚 Read a book a month ✈️ Go back to SF, go back to Europe 💵 Save enough to buy a house Bring it tf on, 2019. I was determined and inspired by a strong career year, financial independence earned by selling my car
How to convert variable TTF font files to WOFF2
Impetus I’ve been working on a project lately that requires the loading of many, many webfonts. For the main UI font alone, we needed to download over 980 kB of WOFF and WOFF2 files. As it happened, the client eventually developed a variable font version of the UI face, which was a much smaller 225kB file. However, when I received the variable font file, I r
Headless CMS solutions that aren’t Statamic (lol)
Inspiration and research assistance for this article was extremely graciously provided by David Darnes , Robb Owen , and Andy Bell . They're good, grounded folks who care about the right things. So as it turns out, the guy who made Statamic has decided to publicize his extremely unfortunate views that controlling womens’ bodies is the most important thing to
Naming variables in style code
This morning, the atomic design GOAT Brad Frost Tweeted a question about variable naming for colors: Here’s a fun one: what variable name would you define for `rgba(0,0,0,0.9);`? I drafted up a Tweet to answer this, but it ended up being closer to five Tweets, so I figured it might just work better for me to do a tiny blog post instead of a big, noisy thread
How to use the Spotify API and Netlify Functions to build a “Now Playing” widget
I recently* built this really cool feature for my personal website that allows me to use Netlify Functions to show my most-recently-listened-to tracks from Spotify. *It wasn’t recently, it was in July 2020, please don’t look behind the curtain. It’s an easy way to show some personality, and mostly just an excuse to get friendly with Netlify Functions. While
What to say when you don't know what to say
I have this weird relationship with Incredible Amounts Of Grief where, like, I’ve literally been there — I know there’s nothing to say, and nothing will heal but time. When The Bad Thing™ happened, I felt angry so often with people wasting both my time and theirs trying to string together something moralizing and impactful, either to Make It Better, or to ma
How to use Vue to template your Eleventy projects
Okay quick disclaimer before I kick this off — this post does not cover how to use interactive Vue components in an Eleventy project. This post covers using Vue entirely server-side! The client will not receive any Vue code. All of the code for this project can be found in this repo on GitHub. TL;DR If you’re using Eleventy because it’s lovely, but like usin
How to use Contentful with Eleventy
Contentful is an immensely well-featured headless content management system, but the density of its featureset can be daunting to integrate with static site generators. The great news is, Eleventy is so well-designed and modular — it doesn’t have to be nearly so challenging. TL;DR Contentful has a REST content delivery API and a GraphQL API. This post covers
How to distort text with SVG filters
A lot of the SVG filter primitive content out there is some really rad, deep-dive type content (I’ll link some of these at the end!) , so I reckoned it might be nice to do a quick write-up on some effects I use pretty commonly. These are more-or-less plug-and-play; simple filters for making your friends go “ooh how did u do that lmao”. Setup To kick this off
How To Make a Website
I got an email recently from a kind online friend who said they thought my work was swell, and that they’d like to ask about my process or what makes a good website. Aside from that being a really nice email to receive, it’s also good impetus for me to be a little more candid and critical about my practice. Here’s my breakdown on how to make a Good Website.
Can you be a designer if you have no training?
I recently saw an online acquaintance of mine share a Controversial Opinion™ that I found challenging: If you do not have formal training in design you are not a designer. Right off the bat — L take, and I’m trying not to say that just because I am a designer with no training (lol). I think there’s more ways to be critical here than just being like “haha ok
On leaving New York City
This Is That Dreaded Blog Post That Was Foretold Every blog poster fears that one day this post will be upon them — that painfully self-important and -unaware “Why I’m Leaving ${city} ” post. I’m gonna try to do this right; to make this one on the less-obstinate side to some of the other ones I’ve seen, but unfortunately I may make no promises, and you’re on
Using focal points, aspect ratio & object-fit to crop images correctly
Before I even get into the impetus for this blog post, if you came from a search engine and you just want the code, here’s a demo . Pleasure doing business with you. Introduction In a client’s project recently, I found that their Wordpress setup required content editors to upload four separate versions of a blog post’s featured image at varying dimensions to
A one-liner for freeing ports on OS X
TL;DR One of my most-frequently searched dev tasks over the course of my career thus far has been the “how do I find what process is on a port” to “how do I kill a given process” wombo-combo — there’s always some memory-leaky service running that ctrl + c isn’t tough enough for. Figured it’d be good to write a quick shell function for doing just this. Before
How to map a number between two ranges
Often in creative web projects, I find myself having to take a number, which exists in a specific range of numbers, and find the number that would be in the same position if the range were changed. Examples of this type of operation can vary anywhere from converting Fahrenheit to Celsius, to my recent use-case of creating an array of 500 “particles” with 3D

