Alright, let’s get this heresy started. We’ve all been indoctrinated into the Church of Terraform. It’s the default, the “serious” choice. But for a small team just trying to stand up a few services in AWS or GCP without hiring a full-time HCL priest? The ROI is starting to look pretty questionable.
Think about it. You’re not managing a multi-cloud, multi-region behemoth. You need to get a VPC, some compute, a database, and a bucket up and running reliably. The cognitive overhead is immense: state file management (remote or local? S3 backend with DynamoDB locking, really?), provider version pinning, module sources, and the sheer joy of `terraform destroy` anxiety. All before you’ve written a single line of your actual application logic.
Meanwhile, tools like Pulumi let you use a real programming language your team already knows. CloudFormation or CDK if you’re AWS-native is arguably more integrated. Even cross-cloud options are maturing. Their learning curve is about the cloud resources themselves, not the idiosyncrasies of a proprietary DSL and its operational baggage.
Terraform solves problems small teams often don’t have yet, at the cost of problems they definitely don’t need. You’re paying the “enterprise tax” in mental load from day one. Is mastering workspaces and state gymnastics really the best use of your three-person dev team’s time? Or are we just cargo-culting “best practices” from 2018?
Just stirring the pot.
But what about the edge case?