A Brief Message...Turned into a Reflection on Friendship
2026-09-08
I spent most of an evening this week chasing a notification that wouldn't show up. Not a big one. Not even an important one, really, just a test message I'd rigged up myself, sent to myself, so I could watch it arrive. It should have taken two minutes. Instead I ended up three layers deep in browser developer tools, watching a log stream scroll past in a terminal window, staring at a status code that said everything had gone exactly right while my screen sat there doing nothing at all. That's most of what building this site actually feels like, if I'm honest about it. Not the parts anyone sees. The parts where something works perfectly in one browser and vanishes into nothing in another, on the same machine, from the same click, and you have to go find out why one specific delivery service on one specific operating system decided not to bother telling you your friend just invited you to game night. I added push notifications to the Game Shelf this week. If you've got an account and a game or two logged, you can now get pinged the moment someone sends you a friend request, hands you a trophy after a session, invites you to a game night, or RSVPs to one you're hosting. Nothing else. No pings for comments, no pings for reactions, no notification for every small ripple somebody makes moving through your friends list. Just the handful of moments that actually ask something of you, where a response matters and waiting until you happen to open the tab again doesn't really serve anyone. There's a walkthrough of the whole thing, and everything else the site does, in the user guide if you want to find where the toggle lives. I keep coming back to why that particular list of four things. A friend request is someone reaching toward you. A trophy is someone marking that a game happened between two people and it meant enough to commemorate. An invite is someone building a shape in the calendar with a chair saved for you in it. An RSVP is you finding out whether that chair gets filled. None of those are content, exactly. They're not posts or updates or activity for its own sake. They're the actual infrastructure of showing up for each other around a table, and I think that's the only kind of interruption worth earning a buzz in someone's pocket. Aristotle put forth the idea that friendship isn't really a feeling you have about someone, it's something built out of doing things together over time, out of shared activity, and it struck me while I was working with the trigger logic that I was, in a very small and unglamorous way, coding infrastructure for exactly that. Not the friendship itself. Just the plumbing that lets people find their way back to the table. This Aristotelian reflection on friendship is mostly about my friend Jerry, whom I miss dearly and would give up a lot in order to receive a notification from the big dummy to play a game. The debugging saga, in case anyone's curious how it resolved: Edge on Windows routes notifications through Microsoft's own delivery service, and on my machine that service accepted the message, said everything was fine, and then just never finished the handoff. Chrome, using Google's instead, delivered it in under a second. Nothing wrong with the site. Nothing wrong with the account. Just one specific pipe, out of several that all claim to do the same job, quietly not doing it. I don't know that there's a grand lesson in that beyond the obvious one, that a thing can be built correctly and still fail somewhere you can't see from where you're standing, and the only way to actually know is to ship it and watch it fail in front of you. Which gets me thinking about where this thing sits next to what's already out there. There are real, established board game trackers with bigger feature lists than mine, achievement systems, cloud sync you pay a few dollars a year for, apps that have been refined across thousands of users. I looked through a handful of them recently, comparing what I'd built against what people are actually shipping and charging for. And the honest answer is some of them do more than my site does, in the narrow sense of raw feature count. But almost none of them were built the way this one was, which is to say built because I wanted to know who was going to the same convention I was, built because I wanted a trophy card to send a friend after they beat me fair and square, built one feature at a time in response to an actual person actually asking for an actual thing. It's not trying to capture a market. It doesn't need thousands of users to justify its existence. It needs the handful of people who put dice in this collection to find it useful, and everything gets measured against that instead of against a competitor's roadmap. I don't know if that makes it better. I think it makes it a different kind of object entirely, closer to something handmade than something manufactured, and I've been sitting with whether that distinction actually matters or whether it's just a story I tell myself to feel good about the hours. Probably some of both. Anyway. The notification eventually showed up. A small brown and brass rectangle in the corner of the screen, there and then gone, saying almost nothing. It took an evening of real effort to make that unremarkable thing happen reliably, and nobody who ever receives one will think about any of it for even a second, which might be exactly the point of building something meant to disappear into use rather than announce itself. By Norman, BigGame on BGG Tabletop. Photography. Philosophy. The spaces where all three live.