What I am advocating is having a toolbox full of tools, not necessarily using ST over LL in a particular situation. Learn all of the PLC languages and then pick the language that best fits the application. Most of my CLX programs use a mix of LL, ST, and FB.
I mentioned taking an object oriented approach. One of the most powerful tools IMO of the CLX is the UDT (user defined data types). UDTS enable the PLC programmer to develop an object oriented program. I'm a big fan of object oriented programming, which if carefully structured can eliminate the need to view the program code in some cases. The maintenance tech can open the tag, inspect the values of the components in the UDT, and determine what the problem is.
As someone else here wisely pointed out once, the PLC program "knows" why it isn't working.
Here is a sample UDT that defines an object for a solenoid valve output. In this paticular program there are about a dozen instances of the solenoid output object. A single HMI pop-up screen can be used to view all of the information embedded in the UDT for each of the valves, as well as safely (with interlocks) force the valve on/off - which should be enough in about 99% of the cases for a maintenace tech to determine what is wrong without having to look at the actual software.
Ron's advice is very timely. If you are writing for a customer you need to meet you customers specs. But just as customer A may spec ladder only, customer B will spec ST or FB for certain tasks, so develop your tool box - that means not shying away from ST because it is difficult at first. Trust me, it will get easier.