Side projects should be fun

28 Apr 2024

Connell McCarthy's post about "overengineering everything at his wedding" was a fun read: https://connellmccarthy.com/article/wedding/

I can relate to “this wedding would be a great opportunity to build everything bespoke”, as I:

  • live-streamed our wedding on an alpha build of Owncast
  • built a custom photo booth from a Raspberry Pi
  • built our website and RSVP system with a Firebase and Airtable backend (probably should have blogged about that too!)
  • crafted, painted, and stained the welcome signage

Wedding Signage

By most objective measures, this was a colossal waste of time.

Some advice I received after getting engaged was to accept that you won't be able to maintain focus and attention on every aspect of the wedding. Trying to "make your mark" on decorations, seating order, invitation typography, etc. was a recipe for spreading yourself too thin, and doing none of them well. A more prudent approach is to drill into a few things you really care about, and make those great.

Most aspects of the wedding-industrial-complex have been fully commodified and are an easy thing to purchase and check off your to-do list. Even if you don't want to use a wedding-branded website builder like The Knot, you could also knock it out in an afternoon with Squarespace or one of a thousand WordPress templates.

So why build your own, less efficiently? One potential reason might be that the scope of your event dropped by an order of magnitude, due to having scheduled your wedding during a global pandemic. With essentially no in-person attendees, we were free to focus on the purely digital aspects.

Another reason: we both like to program, and it seemed like this would be a fun way to spawn a bunch of side projects.

Some of my favorite memories of the early part of the pandemic were pairing with my fiance on building a simple carousel with silly photos of us. Or testing the live stream software by using it to host a bad movie night with friends. Or learning just enough Python to make a custom NeoPixel ring for the bespoke photo booth.

I was reminded of these fun projects after seeing this post from Foone:

the world needs more recreational programming. like, was this the most optimal or elegant way to code this?

no, but it was the most fun to write.

There's plenty of reasons to work on a side project: maybe you want to learn something new to make yourself more marketable. Or perhaps it's a ritual you do each year to see how the ecosystem has changed. But my favorite kinds of projects are the ones that are just for the fun of it.