The command line is still king. Whenever I see new coders struggle, it usually is because they: - Don't know the context of what they are executing - Don't know about the concept of input and output On the command line, the context is obvious. You are in the context. The working dir, the environment, everything is the same for you as it is for the thing you execute via ./mything.py. Input and output are also obvious.…
Input maybe, although realizing that instead of typing, you can pipe, is a major conceptual breakthrough when new users are learning to work the command line.
But output? The existence of stdout and stderr as two sources of text with no visible distinction is highly nonobvious and continues to trip me up in practical situations to this very day.