August 14th, 2025

You do the best you can

I just released a new update (1.0.0-rc.3) to my JavaScript framework, Joystick.

It’s been a long, long time coming. About a year and change at this point.

Over the past year, my perspective on how I think about my projects has shifted quite a bit. I used to get very anxious about releasing new stuff. Panicking about the details. Not because I had to, but because I felt compelled to rush.

This time around, though, I just didn’t give af.

Instead, I decided to focus, take my time, and really get the release dialed in.

And I’m glad I did! The framework as a whole now is far more performant, far more stable, and includes quite a few of my “wishlist” items.

But even though I invested all of that work, I made a mistake.

Excited to get the release out knowing I had really spent my time honing the details, I forgot a tiny detail: replacing the bin path for the @joystick.js/cli package in the framework (this is what you use to create new apps and run your development environment).

I published all of Joystick’s packages against the 1.0.0-rc.2 version, installed them to test, and...got a binary error.

“Ah, shit. I missed something.”

I immediately thought “it seems like something small, I can just fix it and republish.”

Yeah, no.

I either forgot or didn’t know that NPM (the package manager where Joystick’s packages are published) doesn’t allow you to delete and republish the same version number. Instead, they force you to move to the next version.

Cute, Microsoft.

So, mildly defeated, I realized “you know what man, you can only do the best you can do within the limits imposed by the external world.” That NPM version stuff was just the latest limit outside of my control.

My choice? I can either have a meltdown flip out, panic, and go bananas worrying about a fucking version number, or I can just take the more calm, obvious approach: not care.

And that’s exactly what I did.

Nobody’s perfect. I turned it into a joke. I accepted my humanity and now? I’m moving on.

If anything, this experience motivated me to get to a more normal version track for Joystick (e.g., 1.2.3 vs. 1.0.0-rc.x). After that, stuff like this is really a nothing burger.

This moment has also helped me to realize just how many little hobgoblins we create in the mind about how something has to be, why it can only work this way and not that way, and generally stir ourselves up into a perpetual, 1800’s Jane Austen drama.

Conclusion: into it -> over it.