4 ms·
I don't know. Why did it take so long for touch screen interfaces to become huge when almost everyone loves them? On the other hand, why are command line inte
by DannoHung 16y ago
I don't know. Why did it take so long for touch screen interfaces to become huge when almost everyone loves them?
On the other hand, why are command line interfaces still the most efficient way for experts to interact with a system?
- bad_user 16y ago> why are command line interfaces still the most efficient way for experts to interact with a system? That's an easy one to answer. It's for the same reason humans developed natural language by sounds emitted by vocal cords, with a pretty simple mechanism ... you've got a vocabulary of words that describe something, like an action, or an attribute or a physical object, and then you can mix them together to form phrases, with multiple phrases used to describe entire plots. So you're not limited in any way, being able to communicate designs, strategies, emotions, just with words ... and the combinations you can come up with are infinite, the more you talk and write, the more skilled you get in communicating. It was the most efficient way it could happen ... there's only so much you can describe with hand gestures without the movements becoming unintuitive. So it is with command-line interfaces ... you've got commands you can issue perfectly described by words. And you can mix and match them however you like in totally unpredictable ways. It's not natural language, but it's a lot closer then graphical interfaces. And a lot of the work programmers or sysadmins do is just story-telling. Personally I don't see any way around that unless we are talking about very limited niches. The question is why don't normal people do it? Well, 10 years ago very few people could type. Now 12 year-old teenagers do it efficiently, and typing on a computer is quickly replacing hand-writing. I believe that in the future most people will be familiar with a programming language / CLI interface (while also having more advanced graphical interfaces). Sooner or later everyone will for the same reason humans learned how to speak ... evolution didn't favor those who didn't. And learning a natural language is the hardest thing humans do ... we just don't notice it anymore since we're learning it since birth and it's in our genes already.
- euccastro 16y ago> there's only so much you can describe with hand gestures without the movements becoming unintuitive. Even more so for sounds. Most spoken words are no more intuitive than arbitrary gestures in modern gestural languages (which can similarly be articulated in powerful systems just like spoken languages). Aural, visual, tactile and chemical channels each have advantages and disadvantages for different applications. I'm not convinced intrinsic 'intuitiveness' is one of these factors. In communication, intuition is mostly hardwired convention. Lowering ears and wagging tail has a different (and quite opposite) instinctive meaning for cats and dogs.
- Scriptor 16y agoCommand-line interfaces seem to involve two main parts. The commands themselves (ls, mv, rm, and so on) and the arbitrary parameters supplied to them (all files with the .txt extension or compiler flags). For the former hand gestures would work well since there is a limited and well-defined set of commands, the latter would be better served with a regular text input. Even here the distinction gets blurred by commands created by applications you install yourself. A combination of the two with instant switching between the two modes would be nice. But that still seems like an uncreative solution.
- bad_user 16y ago> Aural, visual, tactile and chemical channels each have advantages and disadvantages for different applications I wasn't talking about the method of delivery. A wagging tail may not be intuitive, but moving a physical object from A to B by picking it up and dropping it is very much intuitive, not just by hardwired convention (both cats and dogs do it in the same way). And the only rationale for the futuristic graphical interfaces we see demoed (including stuff like multitouch in iPhone/iPad) is based on the implicit intuitiveness of handling physical objects with your hands. But that's just a niche ... beyond that you need a language for building stories out of composable phrases, and the demos of futuristic graphical interfaces I've seen just don't cut it.
- hernan7 16y agoGreat post. You bring a tear to this old Unix hand's eye.
- jacobolus 16y ago> why are command line interfaces still the most efficient way for experts to interact with a system? This is far from generally true. I defy you to make a command line interface for performing a piano concerto, painting a landscape, or flying an airplane.
- alain94040 16y agoTrue. I also don't really feel the need for a command line on my iPhone. My point being that yes, command line interfaces are the most efficient way to interact with Linux, but elsewhere, not so much. Maybe it means that Linux was designed for the command line. The fun fact is that is that deep inside, the iPhone runs some variant of Unix.
- hernan7 16y agoWell, if we are talking about computer interfaces, the more sophisticated graphic and music programs have some kind of scripting capabilities. Think Photoshop, AutoCAD, C-Music... If you are talking about computer vs non-computer interfaces, yes, you are not going to play a piano concert with a mouse either.
- jacobolus 16y agoWho said anything about a mouse? The three interfaces I was thinking about were (a) a piano (that is, the keys and pedals), (b) a brush, a canvas, and some tubes of paint, and (c) a joystick and a few walls of dials and switches and buttons. If you want to put things directly in a computer, you probably want a digital piano keyboard, a graphics tablet, and a joystick + keyboard. Scripting it is an alternative way to interact with, e.g., Photoshop, but you wouldn’t want to “paint” a digital picture by typing in some JavaScript to direct it.
- bad_user 16y ago> but you wouldn’t want to “paint” a digital picture by typing in some JavaScript to direct it A painting you cannot, but the architecture of a building is better if it's built by using a CLI interface ... because you need control over every detail of your construction. Just look at AutoCAD sometimes. Also, for playing on a piano you first need to read a sheet of music that describes your melody.