Since 2009, this has been the place for me to write about the work I do.

  1. 2022

  2. Visualizing CSS color-mix

    An MVP UI for seeing the results of CSS color-mix

  3. 2021

  4. Realign 2020: Realigned

    A year of web design and progress and trauma and trying.

  5. 2020

  6. How to Get All Custom Properties on a Page in JavaScript

    A detailed dive into a niche topic published on CSS-Tricks.

  7. Realign 2020: Color

    After almost a decade, this site now has a light mode. Also just more colorful.

  8. CSS: Flexible Repeating SVG Masks

    This started with a literal dream about CSS, then a Sunday morning of messing around.

  9. Realign 2020: Logo

    Letting the letters push, kick, and stomp on each other.

  10. Realign 2020: Typography

    Updating this site’s typography during the 2020 realign.

  11. Realign 2020

    Starting another content and design realign for this site.

  12. 2019

  13. Using a Custom OAuth Provider with NetlifyCMS

    An example of using a custom GitHub OAuth provider with NetlifyCMS.

  14. Good Things

    A non-exhaustive list of good things.

  15. A Library

    I’ve started tracking all the books I read at /library.

  16. No More Google Analytics

    This personal site doesn’t need it. And everyone could use one less website tracking them.

  17. 2018

  18. Designing Anthologies: Initial Concepts

    A look into my thought process while desiging a new project, Anthologies.

  19. Jribbble Three and Helping People OAuth

    Jribbble 3.0 is a rewrite for Dribbble API v2 and I'm doing what I can to help people with the new required OAuth process.

  20. Dynamic Redux Reducers

    A detailed approach to a solution for adding Redux Reducers after initial store creation.

  21. 2017

  22. Building My First PWA

    A probably-too-long post about the process beyond building my first Progressive Web App. Including a yarn about caching dynamic, fingerprinted filenames.

  23. Starting Something New

    On September 13, 2017 Chris Dary and I launched our new business, Limbo.

  24. The Impact of Flash

    An exchange with a fellow designer about the end of Flash has me waxing nostalgic about the technology’s impact on me and the Web as a whole.

  25. New ColorMe Features

    After two weeks of usage and great feedback, I made a handful of bug fixes and feature additions to the tiny color tweaker that could.

  26. Introducing: ColorMe

    ColorMe allows you to visualize The CSS Color Function.

  27. 2016

  28. From Sass to PostCSS

    Making the switch from the long time go-to Sass, to a new PostCSS/cssnext styling setup.

  29. Rewriting Day Player for Sketch 40+

    An account of rebuilding the placeholder image Sketch plugin.

  30. 2015

  31. Overawe

    For a few months in 2015 I spent my nights and weekends building a strange little art project. I used HTML/CSS/JS to create a world where narration is unreliable, messages are inconsistent, and sometimes it’s all just a joke.

  32. 2014

  33. Building OS X Apps with JavaScript

    OS X Yosemite introduced JavaScript for Automation. This makes it possible to build native OS X apps using good ol’ JS. This article covers the basics and walks through building an example app.

  34. Media Seek from URL

    This is a quick bit of JavaScript to control the time position of audio and video elements via a URL query string.

  35. How I Manage Nginx Config

    NGINX site configuration is fairly straightforward, but managing the files for it can be a bit cumbersome. I use git and Github to make the process quicker and more comfortable.

  36. A Logo Design Process

    I wanted a new logo/branding for a redesign of this site and for other promotional crud. Here's a look into the creation process.

  37. How I Start

    Starting a new design is an exciting, weird, and sometimes frustrating process. No two designs start the same way, but for me, they tend to follow similar paths. This is a look into how I'm starting a redesign of my site.

  38. CSS True Titles

    The opening titles of the show True Detective are incredible. I wanted to see if I could create a similar style title sequence using CSS.

  39. 2000 Days

    After an incredible 5+ years, I made the difficult decision to move on from my position at Arc90 and Readability. This is an account of my time there.

  40. Papersaver

    I love drawing goofy things with Paper. I wanted a quick way to put all those goofy drawings on the Web.

  41. 2013

  42. Slenderman

    Branching out and trying something new with this one. I walk through the work that went into creating my first typeface.

  43. WebVTT Cuemarker

    The Web Video Text Track format is easy enough to work with, but marking cue times can be a bit of a chore. I wrote a small tool to make it a little easier.

  44. 2012

  45. Get Together. Get Excited. Get to Work.

    Brooklyn is the place to be the second week of October 2012. If you're looking to meet new folks and build an awesome project, we have just the event for you.

  46. Reacting to Media Queries in JavaScript

    I was looking for a way for Javascript to know when a media query condition was met or not met. While window.matchMedia provides the main functionality, I wanted something that was a little more automatic.

  47. 2011

  48. Fun with HTML Form Validation Styles

    HTML form validation is evolving in a big way. In this little ditty I lay out a process for making browser generated validation errors super cool!

  49. A Small Redesign with a Little Sugar

    Side projects can be great opportunities to flex some muscle on new skills. In this article I discuss doing just that with a side project in need of a facelift.

  50. 2010

  51. All Talkie Talkie

    I've been attending the Refresh NYC meet-ups as of late. At our last meet-up I volunteered to do a presentation on some new and exciting things happening with CSS.

  52. You Did What with What?

    It was a silly "pop-in-your-head-in-the-shower" idea. Kinetic type with CSS. Is that possible? Will browsers just die under the stress? I had to find out.

  53. 2009

  54. I Less Than Three IE6

    Web design is hard, that's why it's fun and why not everyone does it. With this I'll explain why I take some joy in dealing with the sticky situations that "that" browser gets me in.

  55. Ch-ch-ch Changes!

    Version 2 of carried me through a year of freelancing and helped me land my current gig at Arc90. But after two years it's starting to show its age. Version 3 is a step in a new direction and as always a challenging and fun undertaking.