6 ms·
These rants always seem to miss something important. Not everyone thinks like you (seasoned terminal users) do. There are different kinds of intelligence. The
by sixo 8y ago
These rants always seem to miss something important.
Not everyone thinks like you (seasoned terminal users) do. There are different kinds of intelligence. The only way to get good with a terminal is to RTFM and _play_ with it, until you're used to it and have constructed a mental model of its internal "types", their logic and composability.
Software developers are as a group highly predispositioned to construct mental models of this sort, and to learn by reading the docs. Most people aren't. Many more people are very good at building a _spatial_ model of something, and remembering how to do things by _where they are_. Animations, different screens, various OSX ui components, etc, tabs, all do this. For discovering features and learning to do new things, rather than read the manual, you explore of the environment presented to you. While working, instead of writing intermediate state to buffers somewhere (like the pushd stack) you _put_ it somewhere, and when you want to find it again you go look where you put it.
I'm personally better at this than at the software way of thinking and generally find that if things move too fast I just get stuck and have to wait for my brain to catch up. This is probably a fault but it's not going to change overnight. I'm also bad at reading manuals, or at least, I don't like to put the time in to read the manual for everything I do, and am very annoyed when an interface exposes its internal model and complexity non-uniformly, ie to do something that I can _think_ about quite simply I have to absorb and model a lot more of how it works than it feels like should be necessary. (That sentence was about git, also a favorite of these advocates. But also bash, and honestly most CLI tools.)
- worldsayshi 8y ago> Not everyone thinks like you (seasoned terminal users) do. There are different kinds of intelligence. The only way to get good with a terminal is to RTFM and _play_ with it, until you're used to it and have constructed a mental model of its internal "types", their logic and composability. Yes, and here's the point I would like to stress that is completely lacking to make the idea of user friendly terminals work: GUI:s are more user friendly than Terminals because of discoverability and limiting affordances. User friendly Terminals might just be possible if you allow users to explore what is possible with clever search and query completion. It should be able to recognize what entities you are likely typing about and suggest commands that use them. Let's call it "Semantic terminal"?