What’s wrong with UNIX people?

From #zsh @ freenode.net

<xxx> I wouldn't ever want to position a cursor using a mouse.
      not even in an editor. a mouse has its uses.
      but that isn't one of them.
<yyy> yes i agree

(yes… it has been taken out of the context, but the message is pretty clear)

I don’t want to flame here, but the argument that one should not position a cursor using a mouse reflects either total 1) ignorance 2) stupidy 3) lack of vision. What do you think all normal 99,9999% users out there would like to do?

This attitude of UNIX community holds back the technology and usability. As long this kind of visionless, all good technology was invented in 70s technology mindset stays around, UNIX command line and shell cannot really progress. And it hasn’t. No mouse positioning. No tooltips for commands. Not even a way to copy file to local from the remote shell.

Should one compare this kind of communities to ultra-orthodox religious communities? All change is bad, you are bad, do like the grandpa says?

The correct answer is that

  • It’s natural to position cursor with mouse
  • People do it with all other programs out there, including other single line text widgets
  • There is no excuse or technical reason why one shouldn’t be able to do it in a shell
  • If the software stack and terminals don’t support it then we should fix them and update them to reflect the modern human interface paradigms

and you can have cursor positioning by mouse support for zsh.


\"\" Subscribe to RSS feed Follow me on Twitter Follow me on Facebook Follow me Google+

9 thoughts on “What’s wrong with UNIX people?

  1. Ugh, don’t get me started.

    If there was one sentence that would resume the UNIX community, it would either be “why do you want to do that” or “did you read the manual”.

    The first is because they completely refuse to accept that in this day and age, some people prefer to have the options displayed to them in a GUI rather than reading a manual to later configure it in the command line.

    The second is because they can’t bring themselves to learn a thing or two about usability and intuitiveness.

    I really like the convention over configuration approach. You go with the common expectations (like OSX does), then allow configuration if need be. OS X allows me to have the shell, but works out of the box, unlike everything on linux, ever.

  2. Can’t agree with you both… While it is generally good to be able to do things the way one likes, demanding a GUI for everything isn’t going to lead you very far. I, for one, am glad to be able to do things the old-school way, which comes in very handy in adverse circumstances, and often is just so much faster. Yes, I use bells and whistles, too, if they are available and actually work, but often, the restictions in GUIs are imho much worse than the restrictions in text-based apps. Like popup forms that should be re-sizeable, or which are otherwise hard to use… but of course, nobody thought about it. If you are lucky, there are scroll bars around the form, and if you are not, half of the form is simply cropped. Also, can you please show me a decent app with a GUI that features something like a command history? So I can enter powerful, but complicated commands with just a few keystrokes by pulling them out of my history? Or what about the mnemonics of text commands, which are much less so available in GUI applications?

    Btw, did you look at sshfs as an alternative to hacking up mosh, for your file transfer problem?

  3. @toni The real bottleneck is the creativity of the programmer and not his tool of choice , unless we’re talking about hackathons and algorithm tournaments where people pick the optimal choice for the fastest route.

    For what it’s worth, the screening of competence as a developer in any company focuses mostly on education, algorithmic thinking, design principles and less about “which text editor you use”. This is something that GNU/Linux nerds discuss among themselves in the same way every man is obsessed with the size of his junk when it literally matters less when a girl picks you for her long-term boyfriend or husband.

    My 0.02 cents.

  4. Why do you need a cursor ? Aren’t your fingers enough ? Watch out, the’re will be interfaces for your brain, so I hope I will have my ubuntu brain powered interface.

  5. I use a Mac. I love it.

    I’m an old Unix Guy. When I fire the Mac’s bash shell up, or ssh to my Ubuntu box (which is headless), or onto one of the boxes at work (definitely headless), I want the *shell*, for reasons particular to it.

    There’s also a reason programming editors tend to have almost everything available to keyboard commands. A very good reason.

    Lets face it, Unix is a thing for programmers.

  6. Unix is for programmers? I’ve never programmed on a Unix (or Linux) box. I deploy to *ix. I think Unix is for sysadmins. Good programmers know that is how you wield your sword, not how big it is (nor the brand or …).

  7. “UNIX command line and shell cannot really progress. And it hasn’t. ”

    Really? You think terminals and shells haven’t improved since the 70s? Did you actually use any Unix terminals in the 70s? From your post it seems like you haven’t used them much ever, never mind from 35 years ago. I’ve only used them for the last 20 years or so and I’ve seen a lot of improvements in that time.

    “No mouse positioning.”

    That’s simply factually incorrect; plenty of terminals support mouse use.

    “No tooltips for commands.”

    !? See my comment about your use of terminals above.

    Terminals are essentially empty boxes which you can use to invoke practically any functionality of the underlying OS (at least, on *nix systems); this is possible because they’re “empty” until “populated” by user action. Tooltips don’t make any sense in such “empty” environments because there are no tools present to provide tips on until the user chooses one. You seem to be confusing terminals with mouse-driven GUIs – the 2 can easily co-exist, but they’re very different things with different strengths and use cases.

    “Not even a way to copy file to local from the remote shell.”

    Like I said, you don’t use terminals, or *nix for that matter, much, do you? Again, this has little to do with terminals (a way to invoke commands and display information) and more to do with functionality (which may be invokable from said terminal). Unix has a myriad of ways to copy files from A to B, the vast majority of which can be simply invoked (config permitting) from a terminal.

    Terminals are not an entire OS, and they’re not meant to be. They’re not text-only File Explorers, or simply basic text editors, as you seem to think they should be. They’re terminals, they’re incredibly useful tools on any OS (but especially *nix systems where they tend to be most powerfully implemented), but like any tool you need to understand it before you use it.

    You may as well criticize all carpenters because hammers don’t have in-built flashlights.

    The comment about ultra orthodox religious communities is funny, because you seem to regurgitating ill founded dogma which has little basis in fact. Oh, the irony…

    And to Nicolas: you are aware that OSX is basically a Unix variant with a fancy UI, right? And that similar (though less polished) UIs have been available on *nix systems for decades. Right?

  8. Mark: The article is little flammatory. Thank you for the constructive feedback. However, the article does not criticize UNIX itself, but communities around it who want to force their hammer (keyboard, shell scripting, etc.) on all people and are not very open for new ideas.

  9. Terminals are the most powerful tool ever made: you can do anything massively and automatically, just by typing a few words.

    And because everything is done by typing, there is no point in having a clicking. If you wanted to click, you would open a GUI.

    It is called doing one thing, and doing it well. Mac does very well, except because it does little 😛 😛 😛

Leave a Reply

Your email address will not be published. Required fields are marked *