Over-Optimizing
There is such thing as putting too much effort into making something the best it can be.
Sun, 15 Aug 2021
I find myself thinking too much about my projects; I want anything I make to be the best it can be. The sentiment is nice, but takes a lot of time in practice. Time, patience, mental energy, etc. - you name it. To be on a journey of perfection means to never end that journey.
Everything I make and put on the internet is a representation of me in one form or another, so the goal is that everything's always amazing. That said, there comes a time when I have to convince myself enough is enough and walk away.
Take either of these two projects: Abandoned Website or NotSocial. Both were ambitiously made using new tools for the sake of practice, but also to prove whatever worth I had at the time. I've gotten much better at this whole web thing since both were published and I'm constantly fighting the urge to make them better to show that I've improved.
Doing so would be a waste of time and I know that. My time is better spent elsewhere. It isn't only those projects though. It's also this very website or any other mini site I've created. When I learn a new optimization method, CSS enhancement, or literally anything else, then I want to use it everywhere. It'd be one thing if every site I made was a core component of my life, but they aren't.
I remind myself every day that old projects can remain old projects, left alone to exist. I also remind myself that it's okay for my personal website to be messy sometimes, or if not messy then not fully optimized for performance. I like keeping things simple, which means I spend a lot of time looking at my code to see where I can get rid of fluff.
That time spent trimming down almost every site I make is time I could've spent reading, or writing (which I am doing to make this post), or recording music. I want to admit that I've gotten better at letting things go - I've been recording my next album! But there's still room for improvement.
I have a handful of websites I've reserved for dedicating my time to:
- This one,
- Front Royal's,
- This is a Band,
- and my solo project - troy.
A couple other sites use Python programs or shell scripts that populate content into a given template, so tinkering with those is often near-impossible. Anything else - specifically anything I've coded and have access to the source of - is supposed to be off limits.
I've recently started archiving GitHub repositories as a way of showing myself they shouldn't be touched; we'll see how that goes.
What's the moral of the story? Maybe it's that CSS and JavaScript don't have to be perfectly minified or fine-tuned to the narrowest of details. Or maybe it's that the web is an evolving platform built on the legs of backward compatibility and any site that can stand now will continue to stand without constant care. Both of those are great points.
More important than those though is that the reward received from spending countless hours relentlessly trying to make something perfect is never as good as you expect. In the end, you should've picked up that book or recorded that song.