
-
posts
-
The team member helping you just clocked out
-
Shopify Kills the $1M Exemption: The Platform Grew Up and We're Surprised?
If you build Shopify apps, you probably got The Email.
The one that said your annual $1M revenue exemption is now a lifetime $1M exemption. As in: once you’ve made a million total, you pay 15% on everything, forever.
The developer community lost its mind. I read the threads, the hot takes, the LinkedIn outrage. And I kept thinking the same thing: this is a small ask.
-
The 100-Hour Gap Between a Vibecoded Prototype and a Working Product
I had a working scheduling app in three days.
Recurring events rendered on screen, synced to Google Calendar, the whole thing. I called it Claro. It looked like a product. It felt like a product. Then the app started putting fourteen events on a Tuesday morning, some of them in the past. It took months to fix.
The prototype was the easy part. It’s always the easy part.
-
The Worst API Integration I Ever Built: A Horror Story in Three Acts
The reason I learned to code was a TV on a wall.
Shopify’s support team in Ottawa had these leaderboard dashboards: who closed the most tickets, who had the best Smiley scores, who was winning. I wanted to put my own data on those screens. I wanted to integrate with the internet, build things, display information my way. So I taught myself Ruby, started deploying little apps to Heroku, and eventually someone noticed.
The default Dashing dashboard. Shopify open-sourced this framework and every team ran their own version. It’s defunct now, but in 2013 these screens were everywhere. -
CLI Tools Beat MCPs Every Time
Here’s my hot take after a year of experimenting with AI agents: MCPs are mostly a solution to a problem that doesn’t exist.
-
Vibe Coding Is Real, But It's Not What Twitter Thinks
AI is your copilot (aptly named, GitHub) and you should always be ready to take over command of the aircraft.
-
The Human in the Loop Isn't Optional
Intel had a great marketing trick: they made you care about a chip you’d never see. The sticker was on the outside of the laptop. The processor was sealed inside. You had no idea what it looked like or how it worked — but “Intel Inside” meant something. It meant the thing was engineered well. It meant someone was accountable for the core.
-
Zen and the Art of Infinite Support Loops: My 17-Day Battle to Cancel Zendesk
They say irony is dead, but I’m pretty sure it’s just stuck in a ticket queue somewhere at Zendesk.
-
Where Background Agents Are At Today (And How They Shaped Claro)
When I first started experimenting with background agents in Cursor, I’ll admit: I wasn’t sure what to expect. The idea was ambitious: let an AI quietly work in the background, tackling tickets, cleaning up code, maybe even handling the chores that developers usually push off until “later.” For a long time, “later” meant never. Background agents promised a world where those small but necessary changes actually happened without me lifting a finger.
-
Heroku Scheduler style rake tasks on fly.io
This year I’ve started migrating many of my personal software projects from Heroku to fly.io to try and keep my costs down. One of the major pain points with Heroku is the pricing of their managed database service Heroku Postgres. Don’t get me wrong, its great but it also adds up quickly. For example a tiny, anemic instance is available for $5/month and a slightly more moderate basic instance is available for $9/month. This adds up quick if you’re like me and launch a few apps every month.
-
Scraping Marketing Leads using Ruby and Selenium
Over my life I’ve started (and stopped!) dozens of small businesses and side hustles. Central to each business venture is finding marketing leads. In some cases this is simple. For example when I was a magician I would market locally in party supply stores and online. By forming a relationship with this business I was able to leave business cards, and this would do two things. First I would hopefully get phone calls for magic shows and second to date me today. But how would I do this for a local business that needs to actively reach out and market themselves online? There are some very clever things we can do.
-
Welcome!
Here is the first post of my blog. Over the years I’ve had various blogs on various platforms, mainly to promote my businesses. The latest was my record label homepage (last updated in 2017), and before that I was promoting my magician business (last updated in 2015) so this will be my first writings in a long time!