So much this. If you hate cloudformation, have a look at CDK, which allows you to programmatically define a stack in a language of your choice, instead of trying to use unreadable huge yaml to write code.
I really wish terraform will one day reach the same features and maturity as cloudformation.
I really wish terraform will one day reach the same features and maturity as cloudformation.