Disclaimer: This is NOT one of those “Terraform bad” posts. I loved Terraform and wonder about its future, but by no means do I think Terraform ha

Why the AWS CDK won the war (inside my head)

submited by
Style Pass
2024-05-09 08:00:06

Disclaimer: This is NOT one of those “Terraform bad” posts. I loved Terraform and wonder about its future, but by no means do I think Terraform has lost its shine and place in this world. This is an opinionated piece about the AWS CDK and me.

It naturally happens that the first thing someone asks about the AWS CDK is, “Why don’t you just use Terraform?” (and someone else may add, “Why don’t you use Pulumi?”). It is multi-cloud-compatible, and you will not be vendor-locked in. The vendor lock-in will happen no matter the tool you use and what you do, so don’t worry about that.

I am assuming that if you are considering using the AWS CDK, it means you are already stuck for life with AWS. And that’s ok, if used in the right way, AWS is immensely powerful. Yes, it is expensive as hell (on paper). Still, the surcharge easily translates into not having to maintain a 20-person infrastructure team that only keeps servers running and instead having a way smaller DevOps team that provides the rest of the organization with ready-to-use tools to improve their jobs and smoothen their lives. While someone else takes care in your stead of keeping the servers running and updating the software, all you have to use is an SDK to interact with all the components.

I want to talk about what I like and what are some common complaints I hear. As a premise, I use the TypeScript variant of the AWS CDK, which means my comments apply to this environment and no others.

Leave a Comment