Here's something I learned the hard way so you don't have to.
I have been working with Infrastructure as Code for several years now, and my perspective has changed significantly. What I thought was important at the beginning turned out to be secondary to the fundamentals that truly drive results in this area.
The Environment Factor
If there's one thing I want you to take away from this discussion of Infrastructure as Code, it's this: done consistently over time beats done perfectly once. The compound effect of small daily actions is staggering. People dramatically overestimate what they can accomplish in a week and dramatically underestimate what they can accomplish in a year.
Keep showing up. Keep learning. Keep adjusting. The results you want are on the other side of the reps you haven't done yet.
And this is what makes all the difference.
Beyond the Basics of tree shaking
One thing that surprised me about Infrastructure as Code was how much the basics matter even at advanced levels. I used to think that once you mastered the fundamentals, you could move on to more 'sophisticated' approaches. But the best practitioners I know come back to basics constantly. They just execute them with more precision and understanding.
There's a saying in many disciplines: 'Advanced is just basics done really well.' I've found this to be absolutely true with Infrastructure as Code. Before you chase the next trend or technique, make sure your foundation is solid.
The Long-Term Perspective
Environment design is an underrated factor in Infrastructure as Code. Your physical environment, your social circle, and your daily systems all shape your behavior in ways that operate below conscious awareness. If you're relying entirely on motivation and willpower, you're fighting an uphill battle.
Small environmental changes can produce outsized results. Remove friction from the behaviors you want to do more of, and add friction to the ones you want to do less of. When it comes to static analysis, making the right choice the easy choice is more powerful than trying to make yourself choose correctly through sheer determination.
The Practical Framework
I want to talk about query caching specifically, because it's one of those things that gets either overcomplicated or oversimplified. The reality is somewhere in the middle. You don't need a PhD to understand it, but you also can't just wing it and expect good outcomes.
Here's the practical framework I use: start with the fundamentals, test them in your own context, and adjust based on what you observe. This isn't glamorous advice, but it's the advice that actually works. Anyone telling you there's a shortcut is probably selling something.
There's a counterpoint here that matters.
The Bigger Picture
Something that helped me immensely with Infrastructure as Code was finding a community of people on a similar journey. You don't need a mentor or a coach (though both can help). You just need a few people who understand what you're working on and can offer honest feedback.
Online forums, local meetups, or even a single friend who shares your interest — any of these can make the difference between quitting after three months and maintaining momentum for years. The journey is easier when you're not walking it alone.
Measuring Progress and Adjusting
Let's address the elephant in the room: there's a LOT of conflicting advice about Infrastructure as Code out there. One expert says one thing, another says the opposite, and you're left more confused than when you started. Here's my take after years of experience — most of the disagreement comes from context differences, not genuine contradictions.
What works for a beginner won't work for someone with five years of experience. What works in one situation doesn't necessarily translate to another. The skill isn't finding the 'right' answer — it's understanding which answer fits YOUR specific situation.
Working With Natural Rhythms
Seasonal variation in Infrastructure as Code is something most guides ignore entirely. Your energy, motivation, available time, and even database migrations conditions change throughout the year. Fighting against these natural rhythms is exhausting and counterproductive.
Instead of trying to maintain the same intensity year-round, plan for phases. Periods of intense focus followed by periods of maintenance is a pattern that shows up in virtually every domain where sustained performance matters. Give yourself permission to cycle through different levels of engagement without guilt.
Final Thoughts
Don't let perfect be the enemy of good. Imperfect action beats perfect planning every single time.