Let's implement dynamic DNS using Crystal and Cloudflare

03/12/2024

My dyndns client was broken, and they keep getting me to choose pictures of buses to renew my free domain, so I've taken matters into my own hands.

Shortcuts is nearly good

03/09/2024

Shortcuts is such a good way to dip your toe in the water if you're potentially interested in programming in any way but have zero experience. But I'm still not really sure who it's actually intended for.

Learning the fretboard

06/01/2022

I made a thing. I have played guitar on-and-off for over 20 years and I still can't easily identify notes on the fretboard. I had just accepted that it was never going to happen. I've now changed my mind.

Name badge

05/06/2022

No, I don't need this. No, that doesn't matter; I have tonnes of things I don't need. That sounds like a brag but it's not meant to.

Solve Wordle

01/09/2022

It's completely pointless to cheat at this game, which is why I've done it.

Details

05/07/2021

This week I needed to make a really big form. It’s really big. Most people don’t like forms, but I’ve always been a bit of a contrarian, and my approach for saving user input on this form got me thinking about how much effort goes into things people take for granted. In code, I mean. Life is way out of scope for a blog post.

Game Boy Camera

11/29/2020

That Game Boy Color image was bothering me. We can do better.

Shortcuts for GIFs

07/02/2020

I love GIFs. I use them all the time. On my laptop, I have a LaunchBar custom bookmarks index that lists them all so that they're searchable and I can access them easily, but that's more difficult in iOS. I decided to see if I could use iOS' Shortcuts app to give me some sort of search UI for them, and it turns out I can!

Context-specific aliases with fish shell

06/12/2020

We're using Docker for everything now, which is great but it's a big ask of some of our frontend devs who aren't as comfortable with a CLI as others. Fortunately, there is a way!

I hate XML

05/06/2020

The above screenshot is the difference between an XML product feed that Facebook can't be parsed (top) and one that can (bottom). A default namespace declaration. Why does this matter?

I love GraphQL

04/19/2020

I've been using GraphQL with Craft since I redeveloped this site, which is quite a while now. But running someone else's GraphQL API is like training wheels.

Get Computers To Solve Your Problems

03/27/2020

The world is in a bit of a state at the moment. People are panicking and they're scared. Far be it for me to suggest that poor leadership might be at least partly to blame. I never learn lessons from other people's mistakes so how can I expect the people who run the country to do it?

It's good to have a development platform again

02/29/2016

I'm enjoying coding again. And it's a little weird.

Hits from the Pong

08/15/2015

I wrote a blog post over on our highly corporate company blog which has two whole posts on it. It's

Think before you buy Coda for iOS

07/17/2015

Panic released Coda for iOS yesterday, and it looks pretty excellent (Panic are very skilled at making things look good). However, for a lot of people, it will be missing something huge - any kind of environment.

Tessel

07/13/2014

Next to the rpi for a size comparison Tessel finally arrived. I say "finally" but I believe it

An Automator Folder Action for Screenshots and Dropbox

09/01/2011

Photos of dogs and cats and leaves and horizontal lines will be back soon.

yet more effort toward keeping config out of git

03/01/2011

It seems that I spend most of my waking life concerned about keeping usernames and passwords out of

bit tumblr-y, but a quote

10/22/2010

Non-developers often assume an application is invariably more valuable with a feature than without i
Next