“What is this s#*t?!”

19th January 2019
A few days ago, Caleb Porzio demonstrated some work he’s been doing to replicate Phoenix LiveView in Laravel. I’ve been building PHP preprocessor stuff for a long time, and this really inspired me to try the same thing.
Read this article

Making a podcast app

14th January 2019
I love listening to podcasts, but I can’t find an app to play them in that I really enjoy using. When you think about it, there are a lot of moving parts to making on of these apps. Let’s explore them.
Read this article


25th November 2018
One of our goals, with Gitstore, is to make it as easy as possible for folks to sell their stuff. Today that meant I had to create a page where maintainers could go; to copy the code required to display a dynamic badge. The purpose of the badge is to click through to another page, where customers can immediately buy stuff.
Read this article

Better components in Laravel

16th November 2018
One of the things we’ve started doing in Gitstore is designing everything as components. That way, it’s easier to see what they look like on their own, and to compose interfaces our of pre-built components.
Read this article

Building a blog: RSS feed

4th November 2018
There aren’t a lot of ways to “subscribe to updates” on this blog. It’s a combination of me trying to keep things simple, and not having enough time to implement anything I like.
Read this article

My boss won’t let me do this!

2nd November 2018
I have been in many discussions, usually about testing, which begin with these words. “They’re short-sighted”, and “They don’t understand the cost to their business” usually follow. Maybe the boss is right…
Read this article


31st October 2018
If you’re been following me on Twitter, you’ve probably seen a bunch of tweets about this thing I’ve been working on; called Gitstore. I’ve grown fond of describing it as a way to sell code that doesn’t entirely suck.
Read this article

Building a blog: Posts

28th October 2018
This blog doesn’t have a database yet. It may look like it is dynamic – may adjust as I add blog posts – but it is more like a flat file CMS. Only without the CMS…
Read this article

Building a blog: Introduction

24th October 2018
I’ve been building this blog, for a few days now, and it’s been a fun experience. This is partly because it’s an asynchronous application, and partly because it uses a lot of preprocessing.
Read this article

Hello world

22nd October 2018
It’s customary, when launching a new ship, to smash a bottle of champagne over the bow. Apparently the wasted bottle is meant to invite good luck. Perhaps it’s because there will be less alcohol for the captain to drink on that first voyage…
Read this article