I’m a minimalist at heart, so keeping things as simple as possible tends to be my thing. I love tinkering with an idea or product feature while trying to reduce my reliance on dependencies or purposely constraining personally set limits (maybe this is bandwidth, resource usage, etc.). I almost prefer ugly “hacks” in favour of something slightly less performant, just to win the tiniest of savings. It’s silly, but my brain won’t let me escape it. This doesn’t mean it’s always the “correct” way to approach both design and development, but it’s what works best for me.
An issue I tend to see in my travels through the world of software engineering is over-engineering. Shocking, I know. I’m not the first developer to point this out, nor will I be the last. Even still, I believe it deserves being repeated as often as possible. An unoriginal mantra of mine is:
Notice the word: “reasonably”. This is important because simplifying any software task shouldn’t be taken as a blanket statement. Sometimes your hands are tied. That’s fine.