2 ms·
Both outputs are for the user, even if the user redirects them. Standard user stream doesn't seem like a differentiating name. Standard error stream makes more
by jolmg 5y ago
Both outputs are for the user, even if the user redirects them. Standard user stream doesn't seem like a differentiating name.
Standard error stream makes more sense when you consider the Unix philosophy[1]: "Don't clutter output with extraneous information." It's not just about stdout. The more you output, the more you obscure the important data, and the more likely the user is just going to ignore it. Ideally, there should only be regular output and errors. The names are a good guideline for that.
When you're talking about stuff like progress indicators, you're already breaking from the mold, just like TUIs also do. You have little choice but to break Unix conventions and guidelines then. TUIs like vim don't output errors to stderr, you know. They include them in stdout.
This doesn't mean that stderr isn't a good name. It fits very well for regular Unix utilities that stick to the guidelines of the Unix philosophy.
[1] https://en.wikipedia.org/wiki/Unix_philosophy#Origin https://en.wikipedia.org/wiki/Unix_philosophy#Origin