@hascat There are cleaner approaches or drastically different ones. Because of legacy AND for sharing reasons, we need Bash. Then you learn either Bash+Cleaner_Approach or just Bash. The only way to break this is by starting from scratch and forcing it as the default. Which is not gonna happen for Linux for a long time. At least according to me.
This has never stuck with me, and I hadn't thought about why until now. I have two reasons why I will always write ${x}_$y.z instead of ${x}_${y}.z:
Syntax highlighting and shellcheck have always caught the cases I need to add braces to prevent $x_ being expanded as ${x_}.
I write a lot of Zsh. In Zsh, braces are optional in way more cases. "$#array[3]" actually prints the length of the third item in array, rather than (Bash:) the number of positional parameters, then the string 'array[3]'.
My reply is to a commenter who said they prefer "${HOME}/docs" over both options in the original image ("$HOME/docs" or "$HOME"/docs). Many people prefer to always include braces around the parameter name out of consistency, instead of only when they are required.
My comment explained why my habit is to only include braces when they are necessary.