This may not be what you want to hear, but the answers to your questions are… Yes, yes and yes. ![]()
There are several ways of doing most things - you need to find the one that makes most sense to you, both from the writing and the maintenance point of view.
I personally prefer lots of short automations, with liberal use of labels to group them and notes in the description field about how they fit together. There is a recent integration which allows you to add notes to entities as well - the more the better.
Having said that, there is a motion activated lights automation in the Cookbook which does both on and off in just a dozen lines. Hard to argue with that.
The important thing is, does it work and can you fix easily it when it doesn’t?