The Why
A theme I have noticed while applying GitOps practices is a lack of justification. What problem does your recommendation solve? I think this is applicable to a lot of different areas within tech but as I was comparing some tools within the GitOps sphere recently, I was taken aback at how uninformative communication on technical opinions could be.
Start searching the keywords ‘helm’ and ‘secrets’ and you’ll find a lot of context-ignorant Reddit (generally good advice: don’t look for advice on Reddit) posts along the lines of:
"we used sops, now we use kops/skops/mops"
"Start over, run Flux"
"Just run Vault lol"
Evidently, there are a range of great solutions out there. There’s a hundred ways to accomplish what you’re looking to do. But what makes that choice? Why would we use this tool over another? Make your case. Empathy is at the root of almost everything. Put yourself in the boots of your target audience.
I suspect the people who make these sorts of posts either had the decisions made for them and they live under that decision, every day on production a new opportunity to proselytize, or they themselves based their decisions on little more than intuition, legitimately lacking solidly backed reasoning.
But this happens everyday. Sometimes a new tool gains traction because it solves an immediate problem and you have to accept its limitations for years to come. And sometimes a colleague decides to move from Gradle to Maven and no-one questions the PRs. Make sure you know why you’re doing what you’re doing and make it explicit.