Matthew Lang avatar

Matthew Lang

Products

Posts about product building for the web.

Say hello to Hooknook

Yesterday, I mentioned that I had created a Slack account just to send webhooks to and that perhaps there was a better way of doing this. After a few hours, I have managed to put together a tool for consuming and monitoring webhooks.

Hooknook (working title) allows me to create channels and send webhooks to different channels. I’ve still got some details to sort out, but the basic application works. Users and channels are made through the Rails console at the moment, and a single endpoint accepts all webhooks coming in. It’s the absolute minimum I could do to get it to work, and now it’s happily accepting webhooks from my Hatchbox deploys.

I used Anthropic’s Claude to flesh out the structure of the application to begin with, and once I had it working, I used Claude again to add some TailwindCSS styling to the screens. These screens are definitely going to get a once-over again, as the purple is a bit garish, but my wife seems to like it, so it might stay, but be a bit more subtle.

It’s been a welcome change of pace to be able to build something in a short space of time, and even better to be able to use it.

Over the next couple of weeks, I plan to explore adding more functionality for Hooknook and being able to handle more webhooks from different sources, including GitHub.

A user interface displays a Releases page with messages about deployment statuses, including both successful and failed updates.

What to build vs how to build

There’s a difference between what to build and how to build. I hadn’t given it much thought until today, when I started to realise that I could improve the time it takes me to make an image template for a product of mine by automating the creation of the different classes and modules needed for each image template.

I spent an hour tonight working on a script that generates all the necessary code I needed. In addition to creating each code file, it also generated the absolute minimum amount of code required for each file to run successfully.

When building products, I’ve always prioritised what to build over how to make, but I need to start splitting my time more evenly between the two. Spending time on one can have some profound benefits for the other.