Sing and Dance

Her words froze me. I dropped my head because I felt tears coming. This is not ideal for the intensive care unit doctor who must always be composed. She is the mother of a child with cerebral palsy…

Smartphone

独家优惠奖金 100% 高达 1 BTC + 180 免费旋转




Deploy AWS Fargate Clusters with Pulumi

Pulumi makes it super easy to manage AWS ECS Fargate infrastructure

(Quick note: You can get all the code for this article on GitHub)

So this has been weighing on me for some time. I’ll just come right out and say it: I really don’t like Terraform. There, it’s out there now. Let the Terraform fanboys let loose their verbal assaults.

Thing is, I get that Terraform is considered the industry-standard on Infrastructure as Code. I fully recognise how impressive it is that Terraform covers so much stuff, from AWS to Azure DevOps to Google Cloud, and so on.

The problem for me is I’m a programmer. I write code. I use a number of different languages (.NET, Typescript, Javascript, Python are my faves), but in the end, they have the kinds of things which one expects from a programming language: Loops, conditionals, objects, inheritance, interfaces, etc. Those structures in a language make it possible for me to do what needs doing through my own programming, as well as by utilising the nigh-endless package sources available online.

Terraform is NOT a programming language. Terraform is, IMO, a declarative markup language. While some modicum of things like loops and conditionals can be accomplished, it feels tacked on, clunky, and never as clear or clean as a first-class programming language.

Also, if I want to do custom actions, such as call a random password generator, or call a library to run a series of database calls, this is, at best, tacked on in Terraform, or I have to hack my way around it.

I totally applaud Hashicorp for their tremendous accomplishment. It’s just not for a programmer like me.

I love IaC (what’s not to love about spinning up infrastructure in code like some kind of sorcerer?!), but never loved the structure or syntax of Terraform. What’s a brother to do?

Add a comment

Related posts:

VitalEdge Pulmonary Care

Mental health includes our emotional, psychological, and social well-being. It affects how we think, feel, and act. It also helps determine how we handle stress, relate to others, and make choices…

A Short Summary of the Entire Human History

Writing a short summary of the entire human history is a fascinating challenge. With plenty of events to cover (some causal and some coincidences) and theories to dissect (some complicated and some…

There Is No Neutral

The trial of Derek Chauvin, the police officer who murdered George Floyd last year is bringing back many painful and traumatic memories for people, not just in Minneapolis, but around the country and…