This is my digital gardenβa place where I share thoughts, projects, and ideas in various stages of completion. My philosophy is simple: just get things up. Perfect is the enemy of done, and Iβd rather share something thatβs 80% complete than wait for that elusive 100%.
Some posts are works in progress, marked with their completion percentage. Others are finished pieces, but even those might get updates over time. Nothing here is truly βfinishedβ!
DIGITAL GARDEN π±
Welcome to my digital gardenβa living collection of ideas, notes, and thoughts that grow over time. Unlike traditional blogs with polished, finished posts, this space embraces the messy process of learning and thinking in public.
Some posts are seedlings (just starting), others are growing (being actively developed), and a few reach evergreen status (well-established). TILs (Today I Learned) get posted frequently as I discover new things.
Feel free to wander, explore connections between topics, and watch ideas evolve. Read more about π± digital gardens.
FEATURED POSTS
Building a resume website with eleventy
i share how i built a fully customizable resume website with eleventy, complete with seo-friendly features and pdf generation.
Deploying this site+and many others easily
EasyPanel gives you a cPanel/Heroku (retro!) way of managing sites, but self hosted. Click to deploy a template, which is thousands of self-hosted services.
How to Information at Work
How to listen and process information at work, leading to stronger relationships and less checkins
GROWING IDEAS
TODAY I LEARNED
TOPIC COLLECTIONS
RECENT LINKS
ALL POSTS
JoCo Cruise 2025
A week-long cruise with a bunch of nerds!
Blog CLI tool: my secret weapon
My small typescript CLI I use to automatically scaffold blog posts
Using :has() for parent selectors
How to use the new :has() selector in CSS for parent element selection
CSS Grid Techniques
A growing collection of CSS grid techniques and examples