←back to thread

412 points conanxin | 7 comments | | HN request time: 0s | source | bottom
Show context
mg ◴[] No.41085093[source]
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 is what you type, output is what you see. Using pipes to redirect it comes naturally.

Not being natively connected to context, input and output is often at the core of problems I see even senior programmers struggle with.

replies(16): >>41085138 #>>41085178 #>>41085239 #>>41085304 #>>41085362 #>>41085446 #>>41085493 #>>41085513 #>>41085614 #>>41085677 #>>41085897 #>>41086268 #>>41086743 #>>41086819 #>>41087168 #>>41097209 #
dakiol ◴[] No.41085178[source]
The more experience I accumulate, the more I rely on GUIs. Explanation: when I was younger I used exclusively the CLI and underestimated GUIs. Now I tend to appreciate GUIs and use them more.
replies(3): >>41085266 #>>41085890 #>>41086069 #
1. lucianbr ◴[] No.41085266[source]
If you're experienced with the command line, it's easy to use GUIs and get good results.

If one starts with GUIs and doesn't really understand what is behind, then all kinds of trouble happen.

So I guess, as with any tool, understanding is key.

replies(1): >>41085620 #
2. lukan ◴[] No.41085620[source]
Not all GUIs are just a graphical wrapper for a CLI. But in general sure, understanding the tech behind helps.
replies(1): >>41086223 #
3. lucianbr ◴[] No.41086223[source]
No doubt, if you're working in AutoCAD, there's no command line that you need to understand first.

But then again, if you're working in AutoCAD, you'd never say "I used to work in CLI only, now I use GUIs more and more".

Clearly they meant GUIs that have CLIs behind, or at least CLI alternatives.

replies(1): >>41086448 #
4. kalleboo ◴[] No.41086448{3}[source]
AutoCAD is an unlucky choice of example here, because it's one of the few GUI drawing tools that actually does have a command line behind it that you have to understand sometimes! Look up a screenshot of AutoCAD and you can see the command prompt at the bottom of the window.

And if you were using AutoCAD in the 80's you can say exactly that you used to use the CLI only!

replies(1): >>41102718 #
5. lucianbr ◴[] No.41102718{4}[source]
CorelDraw? Word? Audacity?

Or maybe it will turn out that all GUI software has command line somewhere inside. I think my original point stands even better in that case.

Yay for hair-splitting, I guess.

replies(1): >>41118482 #
6. lukan ◴[] No.41118482{5}[source]
"Or maybe it will turn out that all GUI software has command line somewhere inside"

Not at all. Most maybe, but since I wrote GUIs without a CLI I can say for sure that not all have them.

replies(1): >>41124456 #
7. lukan ◴[] No.41124456{6}[source]
I mean, every web GUI, which are now probably the majority of GUIs do not have a CLI anymore..