Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

CloudFormation covers all AWS features in full detail. OTOH, you end up reading and editing tons and tons of JSON that were never meant for human consumption. I don't know what goals Amazon had when they came up with CF, but if human readability was one of them, then they've failed that goal.

I've seen a lot of people start writing their own CF management systems, in Python or whatever, and end up with a lot of infrastructure defined in the logic of the homegrown management tool - like a badly written PHP page where presentation and logic are all mixed up. You see that once, you never want to go there again.

Terraform does not cover all AWS features, but the exceptions are few and tend to be lesser used features. The file format is human readable (this is subjective to some extent), and can be composed and modularized easily.

https://opencredo.com/terraform-infrastructure-design-patter...

https://github.com/hashicorp/best-practices

https://atlas.hashicorp.com/help/intro/use-cases/multiple-en...

https://www.terraform.io/intro/getting-started/modules.html

https://www.terraform.io/docs/state/remote/index.html

I'm not a big fan of buzzwords and soundbites, but Terraform comes pretty close to fulfilling the ideal of "software-defined infrastructure" in a way that is accessible, easy to use, easy to expand, and just makes sense - in the way a good programming language just makes sense.



Just a note, even Cloudformation is not covering all AWS features. It's more complete but not 100%.


Have you seen https://github.com/bazaarvoice/cloudformation-ruby-dsl and do you consider it an instance of this PHP-like stuff?




Consider applying for YC's Summer 2026 batch! Applications are open till May 4

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: