The point is, the function shell-command does not use this variable because it only affects interactive use. So indeed, writing a command that invokes shell-command is an option, but it does make a use case for the existence of this variable.
My POV is splitting standard output and standard error (maybe on demand) is a basic usability requirement and should not require writing custom commands.
The problem is not with using setq by users, it is with getting non-developers to write and execute Lisp scripts to accomplish basic tasks, including scripts that just invoke setq. The latter obviously is not a problem when you are a scientist, but I imagine that the front end would be much cleaner if operable cleanly without scripting (again, this concept limited to basic tasks obviously).