Hold up. You’re still using MySQL? That’s hilarious. Droll even. Let me explain all the reasons you should no longer be using MySQL.
Everyone is using other databases like Postgres, Cassandra, Mongo, Redis, the list goes on.
If you want to attract talent, you should be using more exciting technology. Exciting technology brings the talent that can work with it and create scalable systems.
Third parties like Heroku are making it hilariously easy to use these newer, hotter databases.
These other databases obviously outperform MySQL in features, recent market share and sometimes performance.
I know a lot of people that have been successful with things that aren’t MySQL, so you should check them out and dismiss every fact, practice and battle-tested knowledge you have on the technology.
Based on everything I know about software I can definitely make blanket statements about technology and how it applies to your situation. Having seen a few product life-cycles I can say, definitely, that there are global truths with the trade.
People make jabs at the technology or patterns used for projects all the time. Some of it is constructive, some of it isn’t. People who don’t have a stake in the actual project or an understanding of its context provide as much utility as a bloated, orange butternut squash.
Saying something like “wow, why wouldn’t you be using (AWS) Lambda for that,” shows that they have no understanding or respect for the history of the decisions that led to the current state. It also disrespects the fact that not everyone reads Hacker News every morning and evening obsessing over the hottest tech that will be under-supported and disappear in a year. Similarly not everyone has the same background or understanding of “what’s available.”
So talking more constructively is somewhat straightforward. Put half a thought towards how one might receive a condescending remark about the choices made and consider rewording your assertion.
More important than projecting your thoughts onto someone else’s situation, though, consider that perhaps they’ve solved the situation better than you can in a tweet, because of the having-context-and-already-did-it thing. Or perhaps this technology has been around for a few years and they’re using the tools available to them. If that’s the case, some projects reach point where swapping technology or patterns just because its what the kids are doing, would in fact be counter-productive in terms of the business making money.
We Software Engineers have a knack for forgetting about the balance between producing things that return dollars and bickering about the current technology we’d like to work with. As a born and bred Software nerd I can say that I fall victim this all too often, but let’s not forget why we’re here.
Don’t get me wrong I love the new things out of the Tech world to play with and potentially use on my projects: React, Schemaless, Lambda, we’re living in an interesting time and they’re all terribly interesting. I wouldn’t be a Software Engineer if I weren’t the least bit curious to try them and catch some news as things evolve over the years.
No, I love the technology. Perhaps, though, sometimes myself, Tech people, Software people and the like have to remember that a new product out of Amazon, Facebook or Uber doesn’t warrant the distaste of battle-tested systems that already solve our problems for the product that already exists and can (or does) make us money.
Thanks for making it through my mini-rant. Please follow me on Twitter!