Interesting take. However, I feel different. My terraform experience is really good.
At first, we use to manage deploys manually in the command line. With several services.
After a while, it got complicated, so we ended up using Atlantis to manage the locks and apply the plans (and creating the plans) - it allows you to do so via GitHub comments.
The main point is that if you start using Terraform, you have to use it for everything. If half of your stuff is on terraform and half is not, you're going to have some pains, indeed.
A good way to manage that is to add tags to identify resources that are managed by terraform.
About IDE support - VSCode has an extension that helps you, with syntax highlight and some auto-complete.
Cool article, always good to learn different points of view.