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

Having recently picked up Rust (yes, sorry for mentioning it, I promise it's relevant), I picked up Terraform the other day. I was shocked by how weak its language-level developer experience story is.

I am working in VSCode, which by and large tends to be the editor supported best, with the most mindshare. Terraform has static and mostly strong typing, yet some testing revealed I was able to pass an argument of the wrong type to some variable I declared. This is type safety 101: variable declared `str` shouldn't accept `int`, ever. Yet `tf validate` was silent, so was all IDE-integrated tooling (whatever the VSCode TF extension does).

Jumping to/from symbol definitions/usages was also flaky (but not entirely absent).

Really disappointing! My excitement of diving into TF went poof. Maybe I'm overly sensitive, but I was so excited to escape YAML hell (Ansible).

Now I'm even firmer in the boat of just using a regular old language, like Pulumi with Python (with full typing).

Did I do something wrong or can anyone confirm my findings?



No need to be sorry about mentioning Rust :)

Yes, can confirm the terraform language server is kinda unreliable. We could both be doing something wrong, but it seems like that's a common outcome.


The IntelliJ support for Terraform is far more complete.

FWIW, the Rust support is also better in CLion than VS Code.




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

Search: