An operating system burdened withis bound to have an awful lot of inconsistencies and overlapping functions.
This can be awfully confusing even for experienced users. All you have to do is watch the "flame wars" (arguments) onto realize how little understanding and agreement there is among self-styled experts about exactly how things work.
UNIX's checkered heritage shows up most clearly in programs with overlapping functions that seem to do almost the same thing. What's the logic behind the way bothand can be used to set serial line characteristics?
There isn't any. These two programs represent independent efforts to solve related problems. The overlap is entirely unintentional, and in a managed development effort, would have been resolved in favor of a single program with a unified interface.
No one said it would be easy. But no other operating system that I know about is as much fun.