I’m a technologist in Durham, North Carolina, USA. I write about adventures with my family, stuff I make, and interesting things I find on the web. More about me.
Journal
Dispatch #25 (March 2025) (2025-03-04)
My family popped down for an unplanned visit, just in time for another big snow – felt like Christmas in February. Claire headed to Mexico with some friends, and it was great to have help with the kids, but it was also pretty special to be Nico’s guy for three days. A lot of the primary parenting duties fall to Claire, and he’s not going to be a baby much longer, so I’m glad we got that time.
Dispatch #24 (February 2025) (2025-02-05)
We actually got some snow here in Durham, which is not something that happens every year. We took the kids out sledding, and, well, I had a good time; they’ll grow into it. Nev and I built a wagon out of scrap lumber and some casters that roll a little bit too well. We let Nev pick the paint colors and so it’s three shades of pink. We built it for her to wheel her toys around, but you know we plopped that boy in there within the first hour.
Dispatch #23 (January 2025) (2025-01-03)
Happy new year! Nev turned three this month, and somewhere – not from us, as far as we know – she’s added the word “sucks” to her vocabulary. “This juice tastes like bananas … and it sucks.” This is, in my estimation, the hardest thing about parenting: how to raise a well-mannered child when there’s nothing funnier than a toddler being crass.
Dispatch #22 (December 2024) (2024-12-04)
I lost my notebook. I’ve been keeping a Bullet Journal-style notebook for the last several years. It’s got everything in it: my daily log, journal entries, short- and long-term todo lists, all my upcoming events, meeting notes, woodworking plans, everything. And I lost it. I brought it to a 1-on-1 meeting with one of my guys at a local bar, and then rushed out to make it to daycare on time, and somewhere along the way, I misplaced it.
Spellcheck Your Hugo Site With CSpell (2024-11-20)
I edit these posts pretty carefully before publishing, but I inevitably find a misspelling or two after the fact. In the spirit of continuous improvement, I decided to see what kind of automated solutions are out there for spellchecking Markdown files, and found CSpell. It works well, but its default configuration found a ton of false positives that I had to scroll past to find the actual errors.
Elsewhere
Local Docker Best Practices (viget.com, 2022-05-05)
Here at Viget, Docker has become an indispensable tool for local development. We build and maintain a ton of apps across the team, running different stacks and versions, and being able to package up a working dev environment makes it much, much easier to switch between apps and ramp up new devs onto projects. That’s not to say that developing with Docker locally isn’t without its drawbacks1, but they’re massively outweighed by the ease and convenience it unlocks.
“Friends” (Undirected Graph Connections) in Rails (viget.com, 2021-06-09)
No, sorry, not THOSE friends. But if you’re interested in how to do some graph stuff in a relational database, SMASH that play button and read on.
Making an Email-Powered E-Paper Picture Frame (viget.com, 2021-05-12)
Over the winter, inspired by this digital photo frame that uses email to add new photos, I built and programmed a trio of e-paper picture frames for my family, and I thought it’d be cool to walk through the process in case someone out there wants to try something similar.
Why I Still Like Ruby (and a Few Things I Don’t Like) (viget.com, 2020-08-06)
The Stack Overflow 2020 Developer Survey came out a couple months back, and while I don’t put a ton of stock in surveys like this, I was surprised to see Ruby seem to fare so poorly – most notably its rank on the “most dreaded” list. Again, who cares right, but it did make me take a step back and try to take an honest assessment of Ruby’s pros and cons, as someone who’s been using Ruby professionally for 13 years but loves playing around with other languages and paradigms. First off, some things I really like.
Links (from Pinboard)
The Outsider Option: Why I Sold Half my Company to Tiny (2025-04-01)
I very intentionally capitalized and bootstrapped Norbauer & Co. in such a way as to never need outside investors, and at no point (now or in the past) have we ever been in want of cash. Indeed, I have spent my entire entrepreneurial life resisting investor-oriented management. So, as I now find myself more tranquil and satisfied than I have ever been in all my working life, I’m reluctant to admit what made it all possible. I sold nearly half of my company to a publicly-traded investment fund run by a Canadian billionaire.
Posting – The API client that lives in your terminal (2025-03-20)
The API client that lives in your terminal. Posting is a beautiful open-source terminal app for developing and testing APIs.
Our interfaces have lost their senses (2025-03-18)
We've been successfully removing all friction from our apps — think about how effortless it is to scroll through a social feed. But is that what we want? Compare the feeling of doomscrolling to kneading dough, playing an instrument, sketching... these take effort, but they're also deeply satisfying. When you strip away too much friction, meaning and satisfaction go with it.
If it is worth keeping, save it in Markdown (2025-03-04)
The most durable solution would be carving things in stone - it would last for millennia. But that's hardly practical, and it wouldn't make things easily searchable or shareable. The second best option is plaintext files with UTF-8 encoding and Markdown formatting3. As long as computers exist, we'll be able to read plaintext files with ease.
The Imperfectionist: Reality is right here (2025-03-03)
But there’s one piece of advice I’m confident applies to basically everyone: as far as you can manage it, you should make sure your psychological centre of gravity is in your real and immediate world – the world of your family and friends and neighborhood, your work and your creative projects, as opposed to the world of presidencies and governments, social forces and global emergencies.
Parker Glynn-Adey | Alan Lakein Life Goals Exercise (2025-03-03)
To summarize the exercise: Free write about each of these questions for two minutes, and then take an additional two minutes to review and revise your answer. What are my lifetime goals? How would I like to spend the next five years? If I knew now that I was going to suddenly die in six months, how would I live until then?
Choosing my pace by shaping my thinking spaces (Part 5) – Tracy Durnell's Mind Garden (2025-03-02)
Some of these are fast spaces, some slow; many let me set my own pace. I’ve corralled most of my media exposure into my feed reader, which helps because I must choose to open it, and have removed access from my phone. But while I generally feel RSS is a healthy way to follow writers, it’s still a feed. And feeds, whether self-curated or assembled by a corporate algorithm, are designed to be an efficient information delivery mechanism. Their function is to provide easy, immediate* access to new information.
A Taste of Vanlife (2025-02-25)
Camping has always been one of my favorite hobbies, but I've always wondered what life might be like on four wheels. It's difficult to think about living on the road indefinitely—and understandably so. I'm not really into the idea of getting rid of all of my posessions and living out of a van, constantly on the move. But surely, there's a way to try out that lifestyle without making such a drastic commitment?
My LLM codegen workflow atm (2025-02-23)
My hack to-do list is empty because I built everything. I keep thinking of new things and knocking them out while watching a movie or something. For the first time in years, I am spending time with new programming languages and tools. This is pushing me to expand my programming perspective.
I'm a feminist and I think it's harder to be a man than a woman. (2025-02-20)
Very earnestly I believe that despite greater access to power and resources, the box labeled “socially acceptable ways to be a man” is much smaller than the box labeled “socially acceptable ways to be a woman.”