Monday, November 10, 2014

This came up in /r/howtohack- Why I don't like the command line linux4noobs


I love the concept of the command line. It's speaking to a computer in it's own tongue. You sacrifice the right keystrokes and the world is opened up to you. You have the power to make your computer exactly what you want.


But the reality of the command line is something different. I'm still very n00bish. I can navigate easily enough and even run an apt-get every now and then if I know the name of the program I want to insta--- sorry; package I want to install.


But there are some things that are just incomprehensible to me at this point, and all of it is in the command line. It's the linguistics of the thing that are frustrating. The grammar is simple enough:



[Do this] [this way] [to this thing]

But the vocabulary is absolutely infuriating. My best example is cat and I will just copy paste what I said here:



AND WHO THE HELL NAMED THE COMMAND CAT! CATENATE! WTF IS THAT? I studied classics and I had to search and search before I found somewhere that explained that cat is short of catenate, Latin from "to chain together," and that it links to things. There was far, far too much time looking through manuals to find one that actually explained this in a way that the name and the function made sense together. I couldn't understand the function of this ridiculous command until I understood it's connection to a dead language when they could have used "chain" or some such thing. Something clearly understandable once you see it.



To understand my problem, let me again copy/paste my analogy from the same comment:



Consider this: Look at your kitchen. What tools are there? Microwave? What does it do? It uses microwaves to heat things. Toaster? It toasts things. Bread box? It holds bread. Cupboard? It's a board mounted to the wall that holds cups. Refrigerator? It frigerates (makes cold) things that may have warmed some between the store and your house. It would be ridiculous to name your refridgerator "KKS" for "κρύο κρατήστε συσκευή" (Google translated "cold holding device"; too lazy for proper translation right now).



Is there a reason why the commands need to have such obscure, abstracted, acronymed names? And who thought it was a good idea to use a Latin word as the base for that complex of a command?


I know that the people who use *nix are geeks. I know the guy who wrote cat was probably a Latin nerd and thought it would be a cool way to do something. I understand that we like word games.


But these word games get in the way of people like me who genuinely want to understand and get involved, but are prevented from doing so because we want words to mean something. We want these things to make sense. We want the basics to be basic at all levels and allow the complex to arise from that.


Cat is not that. I keep running into barriers in the command line like this to the point where I've pretty much stopped actively trying to learn it and just pick it up as I need in my hobby time. Nothing seems to have a clear reason to its name except to those way upstream. But if we want to foster FOSS and spread the word of Linux to the world we need to have something accessible to the public. /u/ppphhh made this quite clear:



Coming from Windows with things like Command Prompt, Internet Explorer, and Word, it is a bit of a culture shock having all the linux software with seemingly arbitrary names.



Is there a reason why these things need to be named this way? I know that cat is something that won't go away anytime soon as it's so basic to the function of the command line, but is there anything stopping us from making other things more clear? Is there a good, simple, clear dictionary out there?


I've tried man pages, but typically they just confuse me more with options that I don't understand on commands I didn't understand in the first place. I've tried The Linux Command Line and onthewire.org with modest success (I actually stopped at cat on TLCL since I couldn't break throught that linguistic barrier for a month). I have no reason to live on the command line right now since I can't do enough with it to make it worthwhile, and I can't learn enough of it to find reason to switch. I know it's possible since I've seen people who do it, but there's a chasm between me (and others) and that distant land of power over the computer.







Submitted November 11, 2014 at 10:28AM by tuxn00b http://ift.tt/1AYK5a9 linux4noobs

No comments:

Post a Comment