Enjoy simplicity
“I would better have an app, which does one thing good, than a thousand badly.”
When I have trouble falling asleep I usually watch some random stuff on YouTube (video games, tech stuff, whatever, tbh). Recently, during one of such nighttime sessions, I encountered a video of a dude, who decided to showcase building of a personal blog. He doesn’t speak much, uses NeoVim, and just planned to make a blog. I thought that’s cool, ASMR, but with NeoVim and typing. I was excited in the beginning, but I started feeling something fishy when he started installing React, typescript, and Astro.
That made me think, in many cases, we would overcomplicate things for the sake of complication and nothing more. We build skyscrapers in our software, start projects, which has more “micro”-services, than users, add React and GraphQL for a project, which just getting started. And don’t get me twisted React, GraphQL, and micro-services are all good use for a right project. If you’re a Facebook you do need GraphQL, if you are Netflix it’s on you to create a ChaosMonkey, but most of us neither.
I am a Ruby developer and as far as I remember there has always been an ongoing discussion if Ruby is performant enough for a proper web application. Should we replace it with Node? Elixir? Go? Rust? But the real question always was “Will we have enough customers, so, performance will become a problem for us?”. I’ve seen applications, which were big and small, with great and bad performance, and in many cases, it wasn’t Ruby, that stood in the way, no matter how fast is your programming language if you have no indexes in your SQL database, no matter how fast is your programming language if your GraphQL queries load thousand of unused objects along the way.
We all like code, that looks cool, which makes us feel like we are engineers for writing it, but it’s not necessary, that it will be with the same ease to support that code. At the end of the day, all I want to say is “Do not overcomplicate things”. Keep it stupid, simple.