Would it not be more powerful if someone would use machine code directly? Tbh that would be the most efficient way but also the hardest way to use a machine ;-)
I don't think it's quite this way. The power of Linux is in the kernel, if you use these kernel powers via a DE with a lot of shortcuts on your screen and guis and shit, then you're using this power, same for CLI. It's just a matter of how much time do you wanna spend on the computer to do your work or to work on other things, and a lot of people want to do what they have to do and use their free time with family, friends,... And a gui with shiny big bottons does Just that for them. It takes more time than having keybindings, customized interface,... But it does the job
“What I saw in the Xerox PARC technology was the caveman interface, you point and you grunt. A massive winding down, regressing away from language, in order to address the technological nervousness of the user.” - an IBM technician lambasting the Apple Lisa’s GUI
"To be, or not to be, that is the question: Whether 'tis nobler in the mind to suffer The slings and arrows of outrageous fortune, Or to take Arms against a Sea of troubles, And by opposing end them: to die, to sleep No more; and by a sleep, to say we end The heart-ache, and the thousand natural shocks That Flesh is heir to? 'Tis a consummation Devoutly to be wished. To die, to sleep, To sleep, perchance to Dream; aye, there's the rub, For in that sleep of death, what dreams may come, When we have shuffled off this mortal coil, Must give us pause. There's the respect That makes Calamity of so long life: For who would bear the Whips and Scorns of time, The Oppressor's wrong, the proud man's Contumely, The pangs of disprized Love, the Law’s delay, The insolence of Office, and the spurns That patient merit of the unworthy takes, When he himself might his Quietus make With a bare Bodkin? Who would Fardels bear, [F: these Fardels] To grunt and sweat under a weary life, But that the dread of something after death, The undiscovered country, from whose bourn No traveller returns, puzzles the will, And makes us rather bear those ills we have, Than fly to others that we know not of. Thus conscience doth make cowards of us all, And thus the native hue of Resolution Is sicklied o'er, with the pale cast of Thought, And enterprises of great pitch and moment, [F: pith] With this regard their Currents turn awry, [F: away] And lose the name of Action. Soft you now, The fair Ophelia? Nymph, in thy Orisons Be all my sins remember'd." - Hamlet, by William Shakespeare. tl;dr: Idle up the mind to have the devil work his magic of independent meritocracy instead of mindless obedience (which is ironic since non-humans don't have free will according to some interpretations of that contradicting fable).
@@GurtTarctor IMHO problem with GUI is: how to pass arguments, specify options and set environment in which required action should be executed on objects we want to be created and/or transformed. TUI allows us to be eloquent in setting tasks for computer to do and GUI allows for using hands in manual labor way. We need sw like Gimp or Inkscape to draw and paint art, but when we already have a bunch of images to change, ImageMagick is much more powerful, faster and easier to use. Same goes for video and ffmpeg etc. Now, my favorite artist, Dave Fischer / cca.org / creates his graphic art by writing PostScript in Vim and all of his video effects and transformations are done in K&R C. OK, he is a genius :D
@@vmisev Dropping a bunch of files into a converter program with the proper selection should work, or selecting them from its filepicker (which tends to be one component lacking features compared to the Windows one).
@@CTimmerman What if task is to crop, resize and convert color to some color space for all images older than 2 weeks and newer than 4 months, bigger than x size but less than y and only those which name contains [something] and files are stored in different dirs and subdirs that have hundreds of files? Using terminal that's trivial one-liner.
The video didn't start with you mentioning "boomers" or "zoomers". Frankly, I am disgusted and I can no longer support this channel. Also, it would be better if you closed your curtains and used artificial light as it would make your videos a lot clearer.
CLI doesn't make things "possible". Or do you think computing was impossible before CL era? CLI makes everything efficient and GUI is just bloat for your grandma so she can use the computer with her slow fingers...
See the thing is, even the terminals are just called "Terminal _Emulators_". The applications themselves are still on a GUI, and very very few people still use pure text interfaces (I can't even imagine what that would be like). But we still use the very powerful interface of text and language (which is just composed of texts) to interact with the computer. It's the generalized interface that matters, not the actual thing that we're using (ok I'm being too serious :))
@@LukeSmithxyz Thousands of anime newsletter notifications for my 17 years-old self after a decade don't seem to justify that. Recently I reduced 3.000 work-related emails to 500 which I keep for legal reasons.
as far as the email example goes, comparing a terminal email client to a web based client is an apples to oranges comparison. I know Luke here and probably many more people watching see windows and microsoft as the devil but i compared his example to using the native mail app in win10 and it performs exactly the same, except it has no load times and immediately opens to all mail (that's how i have it set up tho). So as its pinned to taskbar, one click, bam its open, don't have to wait to log in or mail to load, it's just as instant as a single click. If you are going to compare a native email client, then compare it to another email client. (outlook is trash though). other than aesthetics and privacy concerns, there is no functional difference between the two, except one is more intuitive. If anyone tries to argue GUI isn't inherently more intuitive than terminal then you are too far up your ass to bother with. Now this isn't to say terminal doesn't have its place, terminal is SOO much better than gui simply due to the control you have, but GUI exists for a reason.
As someone who is gradually trying to get more comfortable with using the terminal (via my Raspi and FreeNAS - so Linux and BSD) I find the rather elitist stance of "CLI is just easier and better" of some experienced users quite off-putting ... I have no doubt that it is easier if you have gathered enough knowledge to build upon. But for beginners it is getting pretty quickly annoying to stumble from one obstacle to the next (and be it something mundane like not knowing how to switch keyboard language) while feeling lost in some cryptic text you don't really understand and sometimes only getting "help" in form of either super-technical explanations or a "just type this" response (without having any real understanding what those things actually do). As a beginner the biggest problem in the CLI is that you basically don't know what exactly is happening (you rarely get any real direct feedback like in a GUI) and you usually don't have the means to check and help yourself if something doesn't go as planned. So it's not very helpful to be just one misremembered command away from deleting your data while not even realizing that you actually did just that. For me it really isn't helpful that many Linux (unix ... whatever) experts ignore such legitimate concerns and instead say something silly like "GUI is just for your grandma to navigate".
@@Xul exactly. People forget the enormous lessening curve they went through in order to master using the command line that effectively and assume everyone ought to just know that
Thank you so much for the answer! So much nice getting a reply by video, I know I still have a big road ahead and with videos like yours I'll eventually do it :)
Another nice thing about CLIs is that, when teaching or documenting, it's much easier to explain text commands than to describe someone's funny-looking icons and where to find them.
knowing how to use the terminal allows you to streamline your approach to the computer and fly through tasks a lot faster. It's about the way we think about it. It's like when writing a long email, it's a stream of consciousness moving from the mind to the fingers, and perceiving the letters and words ahead of time. It's like that with commands and flags and stuff in the terminal. With a GUI, you spend time having to break that stream of consciousness to look for the cursor, point and aim and click, or whatever else. Resizing windows and shit
Yes you can automate GUI stuff, browser stuff with selenuim and other GUIs with some machine learning but i totally agree with your point, linux was almost made to be used with terminal, very fast navigation and execution
got an oldish laptop, decided to install Manjaro and start using Linux on it exclusively (regrettable I haven't been using it for longer due to some steam games), and I already started to feel the penguin power! What you mention at around 6:45 about moving all the files was precisely what made me start realizing it. I downloaded a bunch of zipped spritesheets and whatnot, instead of using the mouse I decided to try and do it on the terminal, and after a quick search and a few commands I moved dozens of files to a new folder AND unzipped all of them
Video editors are not ffmpeg frontends, ffmpeg can't do many effects etc directly, it's up to the video editor software, not ffmpeg - ffmpeg is used here as renderer of video project, not much else. Gstreamer plugins and other things are tools to do video editing, not ffmpeg. Using ffmpeg here is like using avidemux, only totally simple stuff. So you're wrong here as heck. I know, so muh minimalis and "efficency", but sometimes it's not totally worth it to hassle with often obscure software just to automate things that's just availiable in more "bloated" software like Thunderbird.
the most interesting and relevant part for me is in this video is: 09:31 - 09:57 splice and concat demuxer (merge) by copying the codecs is instantaneous using ffmpeg
I grew up using MS-DOS, Unix, and other command line-based operating systems. Terminal is often more comfortable than clicking around in some buggy GUI...
similar to how humans communicate with words, if you also use words (commands) with your computer you can do stuff a lot faster and better than just pointing you wouldn't point to yourself, draw a rough outline of hawaii, take out your wallet, point to it, and shrug, no, you'd ask "how much does a trip to hawaii cost?" pretty much same with command line too ;P also, I remember reading about a study that found, for people who never used a computer before, those who got taught cli learned faster, and better than those with guis
Link to study? That would make sense, people learning the CLI are learning how to interact with a computer at a much lower level than most people now (and therefore will understand it better).
@@Cobalt985 sadly no idea where that is, just remember reading it SOMEwhere, and yeah, makes sense... quick duckducking doesn't yield anything related, tho...
I know this is for Linux people, but as a Mac technician, Answer: Obviously not. Good luck doing tasks like making a fusion drive, turning off SIP to update EFI firmware, or running dotclean on files with a GUI. I dunno why this guy didn’t use a better variety of examples, but using the terminal over the GUI isn’t always just about efficiency, it’s also about capabilities your GUI simply does not have.
Here is the thing. I completely agree with you. The problem is that people are lazy (for lack of a better term). People don't want to make configuration changes and make scripts. So on paper GUI is easier. But in the long term the terminal emulator is the best tool for efficiency. BTW love your videos Luke. UwU
It is kinda obvious what program will win when it's web interface vs dedicated mail program (GUI or CLI, dousn't matter). If you need efficiency, you will use Outlook, Thunderbird, KMail, mutt or other programs, not freaking gmail in a web browser . It's almost like the people don't know better than "oh, there is no app for Gmail on my computer, I have to visit the website then" :/
@@or2kr The Gmail UI is actually really good when it comes to GUIs. I've used both Outlook and Thunderbird, but I still prefer Gmail. You have to set it up properly of course, I think the default settings/layout sucks
I'm not even a Linux user but I'm amazed at how easily you can partition a usb drive through fdisk which you showed in your arch Linux install video. You are right; gparted with the GUI and the windows partitioning program will all have you click through menu after menu to finally get a couple of partitions when in Linux it's a couple of simple commands and that's it.
I know this video is old, but I hope you see my comment. As I said to Derek Taylor, AKA Distrotube, I would like to say Thanks. You are part of my desire to learn more. I hope one day I get half of the knowledge you have. Derek helped me to understand WMs better. Nowadays I run i3 and qtile, love it. And you helped me to understand terminals. Thank you very much.
Dont get me wrong, i too love the terminal, but to be fair: Theres allso quite powerful GUI Email clients, that offer control via keybinds and/or mouse. You know, if your stuffing your face with Doritos or whatever, and only got your pinky to work with, a mouse can be great... :p Other than that, totally agree. Really good and comprehensive video. :thumbup:
Recently, I’ve been saying that development stops where GUIs begin. You can’t build wrappers around, you can’t pipe from and to, and you can’t automate GUIs
GurtTarctor what do you think that means? In my opinion, that is a GUI built around a CLI. That way a user can use the GUI and can streamline the same process in CLI
GurtTarctor none of what you said makes any sense. If it’s not GUI or CLI based, what do you expect for interactive control with the kernel? Mind control?
A thing that people need to realize is that while you're learning, it will take longer. But once you're used to doing things and better at it and have muscle memory, terminal apps are faster than what they've already learned in the past. For example, learning VIM is a bit painful, but it's faster later. Terminal apps are the same
Still easier than man, unless you know how to write a script to parse the term line from grep and open nano to that in the man or info page. I'm not sure if nano has that feature and whether it's the same in various shells on GNU and BSD.
@@CTimmerman Or unless you know that by default, man open the manpage in less (or more on old system) which accept vim keys, including "/" to search for a world and "n" and "N" to navigate trough them ;) But to be fair, in order to know this, you should have read the man page for man and the one for less x)
25 EE student, I tought myself linux The reason why it's hard is because you don't realize how easy it is That said, I use both GUI and terminal Humans are visual creators, sometimes understand pics moving files is easier when you drag and drop them
There are automation tools for the GUI, but they are either less powerful or more complicated, if not both. I love Siri shortcut and it does web api interaction and ssh status check the best on the go, but I still like to learn the terminal way so that I can do it the same way on a headless raspberry pi, a VPS and on my desktop. Consistency is valuable
I didn't really appreciate the terminal until I started having a large amount of data to mine. I liked your talk where you evangelized about using wizards to configure the more complex tools like mutt. I sometimes find having to stop and manipulate the mouse slows me way down. Like they always say: when all you have is Python, every software solution is a snake :-P
7:00 you can sort by file type in most gui file explorers then you can just select the first file of the type you want hold shift and select the last file of that type then move it(though "mv *.jpg ~/pictures" is definitely easier/faster/more efficient I just wanted to point out that you didn't point out the fastest way to move files with a gui)
Hi, I agree with you, terminal is love. Terminal gives you control, but with great control comes great, wait for it, responsibility. I am having GUI vs CLI discussion all the time with some close people. They just have different worldview. In their view control and decision making is a cost. The fact that they get to automate/build things for themselves, for them is not an opportunity but a downside. They do believe that some one button system is possible and eventually will come and save them from the horrors of deciding for themselves. --- One thing I have to concede though. I work in terminal all day everyday and it starts to take a toll on the eyes. Looking at pictures and icons is indeed easier. I have to agree our eyes are not built for staring at text all the time. I bet a lot of people feel this discomfort but can't pinpoint the source and just make up some arguments.
the annoying thing about guis is that you can easily misclick a button. the most prominent example in my opinion are the "shutdown" and "reboot" button which made me prefer to just type these commands in the cli
Even on Windows, the terminal is useful. Just downloaded a bunch of files from my NAS to a new laptop. Failed about 2/3 of the way through, so I just starter again. Usually Explorer is smart ebough to skip files that already exist. This time it wasnt. Ended up with a lot of duplicated files. Might have taken hours to delete all the duplicates in the GUI. Or simply "del /S "* (2)*"" and it took seconds. Took longer to figure out that del works differently in PowerShell than CMD.
I study in an ITIS (technical institute, high school) and since the first year in IT we're forced to use terminal and commands, and professors teach about Linux and UNIX systems (unfortunally the first year my classroom was 2/3 composed by scums, and i didn't learned nothing about theory, while the first year now they teach what is POSIX, what is the userland, the shell and other awesome stuff), and this year the IT professor told us "You should use the GUIs as less as possible, since the terminal is much more efficient and powerful". Anyway, at school i always used Slackware/Salix (while in another labs there is Ubuntu and Linux Mint), and we use Emacs as editor (me and another classroom mate/friend we are an exception: he uses Nano and he told me that VIM was shit, i tried VIM and after figuring out how to exit, type simple text and save, i learnt how to use it with Radford manual and VIMtutor then). A day, for a class test, i had to use a PC that didn't got enabled the Window Manager (KDE by default, it makes me puke, since i use WindowMaker in my main workstation), and i decided to use the CLI: i was able to write and compile the program, all from VIM (without quitting it) like a chad. Then i decided to go full Linux at home: i have a gaming PC (i plan to replace the video card soon and to definitely switch to Linux, since the drivers for my R7 360 are crap and don't work with Vulkan ATM) and my i'm using more my notebook to do many things. I could even use a toaster (Sempron 64 3000, 1gb, Radeon X800 Pro) with NetBSD or Gentoo, write my programs in C language for school and deliver them.
Another good thing about the terminal is that it's pretty ubiquitous, so when you are showing how to perform a task, that will apply to a broader audience than showing how to perform a task in one particular GUI.
I think there is a slightly different way to interpret their questions. As you demonstrate how easy it is for you to do certain 'specific' tasks, the journey to implementing the software that makes it so easy isn't as straight forward as a GUI in some cases. So although with your method it does achieve higher performance in the end, it still achieves the same result practically speaking while being more challenging to implement. But that is why you make guides to help people, so it is kind of a self fulfilling prophecy. I think the easiest analogy for people is this: if you want to make a wooden chair, would you prefer to use basic tools with limited training to get a satisfactory result - or would you prefer to use a masters tools with a masters knowledge to make something not only functional, but beautiful. Thanks for your content, always a great education for me (a hobby, average terminal user of basic knowledge)
You can technically automate the thing in Gmail, with greasemonkey, but let's be realist that way more boring and hard to do than automate thing in the CLI
I think another deterrent is the learning curve and the patience required. Figuring out how to login and search mail using GMail's webmail or Thunderbird takes much less time and is easier than learning Mutt. I"m tempted to try it out some time though.
I started using the command line because I'm getting old and I missed DOS and I don't give a fuck what anyone thinks about that. Word processing, web browsing and email in terminal is better than the alternative for 90% of what I want to do. Use your computer the way you want, I'll use mine the way I want.
The biggest advantage of the terminal (imo) is that it's relatively consistent in terms of it's interface and the kinds of flags programs expect. For a lot of stuff, I find graphical interfaces unironically a lot harder.
Yeah, you basically have to learn each gui from scratch (except maybe most simplest tasks). Though for me most powerful feature of the cli is being able to make different apps work together by piping and redirecting. You can't do stuff like that with gui, really.
Yeah, and because of consistency, tui is scalable in terms of automation, you can write a script, deploy it and run on thousands servers and configure to run the script automatically, doing all this by hand would take eternity. When I first realized what power gives the knowledge of terminal, it blew my mind.
To be fair towards GUI software: It oftentimes is possible to automate tasks that many people would like to be automated. i.e. quickly moving and tagging mail might be possible. With standard in- & output however it's the user who automates without the frame set in the configuration tools for that specific GUI program. Another big thing is interoperability.
I'm exactly the same as you Luke, I'm no Linux guru, but I'm my profession there's a lot of file and folder/directory management. The terminal is easily the best for this.
I would also like to mention that spacial awareness is much slower and less reliable than that of verbal awareness. Here is a good test: remove/add an item in a room and ask someone to tell you what is different. Now, ask a friend to listen to two phrases said by you. Change one word in each sentence. See how long it takes for them to notice. That’s the difference in GUI vs CLI. GUI is spacial awareness and CLI is verbal awareness. It takes far less time to say what you want from a room than it takes to go find what you want from a room.
One of the reason why I prefer terminal applications over graphical is that I am not bound to the features and options the graphical tool provides. I can combine and use the power of my entire operating system to say filter out data. Also the script-ability and automation of command line programs is a huge plus. I can reuse some of my scripts to do stuff with new programs, if its compatible. On the other hand, sometimes graphical user interfaces have its own advantages… But I am not going it now.
While watching the video, I want to reply to Luke. You can automate graphical user interfaces too, I did that back then in Windows XP with AutoHotkey. And actually I do some GUI automation on Linux too, with Autokey or my keyboard/mouse macros that I can record in realtime to solve graphical automation, in example.
As a pragmatic Linux user, I use both cli and gui, depending on what is quicker and easier at the moment. Sometimes using a cli browser (links or w3m) for quickly looking up some information or downloading a specific file is more efficient for my workflow than opening Firefox. Or ffmpeg for quick video conversion, and vim/neovim fir text editing. But email through terminal? Not for me. Sure, it may be better once you learn it, but the thing with cli applications is that they require a good (human) memory to be well used. Sometimes even Vim can be too much of a hassle when you could just use good'n'old gedit, depending on what kind of text I'm editing.
1. You can automate things in Graphical user environment if the whole operating system is based on Graphical User Environment being that way. There are none as of right now. 2.Let's say I just make a shortcut on desktop with some programmed line that open up Firefox with my mail and simply start typing in the auto-focused mail search bar. Or even simply binding that to keyboard shortcut. Keyboard shortcuts are not part of terminal, they are prevalent everywhere. They are available in Graphical Interfaces as well. And Terminal is a GUI in itself just like everything else you see on the screen.
The first computer I used had 24 f keys, no mouse input and only green and black colors in the display. Come to think of it it was an IBM and the keyboard had so many keys that you don't see on contemporary keyboards. Wish I got to learn more about it.
I use terminal applications insted of GUI because interface doesn't change and I don't have to relearn new version of app every time something changed position in menu or GUI. Other than that they are blazingly fast and you can use them via ssh. On the other hand I would never try to use Blender via keyboard only or any graphical app (GIMP). It would be pain in the ass.
I would argue that email is slowly becoming just like the internet. I receive a lot of emails on the daily which contains HTML and not just plain text. I hate those but there isn't much I can do, and using 2 separate email programs just sounds as much more of a hassle. So I guess I won't be moving to a terminal based email client anytime soon ...
Don't (necessarily) have to switch windows. Don't have to reach mouse/trackpad. Programs on terminal are (almost always) better on resource consumption/take up less disk space. Commands can easily be automated. List goes on.
Two more reasons to use cli apps: -The UI of cli apps tend to be a lot more stable, the UI of gui apps tend to change frequently meaning you constantly have to relearn them, if you are using 100 plus apps that can be really annoying. -Most cli apps follow a similar design language, they are all very similar to each other, meaning once you have gotten used to using cli apps its mostly fairly easy to learn new cli apps.
1st of all, shortcuts are possible with browsers, so you can just press a key and you have your inbox infront of you. Second, the interface on gmaildotcom isn't nessecary a standalone gui, it is a web interface, so a client like kmail or Thunderbird will be quicker and more convenient when you need to manage lots of mails. That said though, when you have a CLI interface tailored to your needs, nothing will beat it in terms of latency and that may be a better way to avoid to have that tracking website somewhere buried inbetween your browsers tabs
The command line is better for some tasks. Its not better for other tasks. The area where the command line really falls down for me is in intuitiveness. The GUI has a strong advantage of being able to show you what you can do quickly. With the command line, you either need to already know what to do, or you need to research what to do. I think creating strong GUIs is a great choice for things a person will be doing infrequently (where you kind of relearn things every time). This is a problem in Linux because so much of tech support type things are done in the command line, but they're done infrequently that you aren't really gaining the benefit of the terminal.
Don´t trust Luke´s justifications. He´s an insufferable hipster for the early 2000s. Luke covertly LARPs as Cypher from the boomer classic The Matrix by running only terminal applications while wearing sunglasses inside and being bald with a weird goatee. His endgame is selling us out to Google/Facebook/Apple/Microsoft in return for endless VR porn and VR steak.
Use the terminal when its advantegous; if you can use it you can decide for yourself. The difficult of learning a single command become sequences of action in GUIs and to be efficient applications must be relearnt to utilize the keyboard through short cuts. Additionally he user interface can updated in way that obseletes knowledge of how to use it; otherwise your forced to use an outdated product. Where there are convient fronts ends they shackle you to often inferior outdated backend and wall you off to interactions with other useful applications.
Sure! But not everyone is a programmer (and I'm saying this as a developer myself). I think Luke's point was broader than just programming-related tasks
To do sysadmin the terminal is just the highway 🛣, what if the UI get stuck freezes ? Then console is mandatory to kill process which cause trouble , you retake the control of your machine . Terminal is important for tones of stuffs
On top of scripts rely on a window manager and cli variations of my most used programs/functions because I do not want the ergonomic disadvantage of using a mouse. My hands are in a relaxed position over a 42% keyboard and I can access whatever I want extremely easily.
I'm way too late, but anyway: I do pretty much everything on a terminal that runs as a window inside the DE I made for myself? Why? The highly visual DE reminds me of how things were back when there was novelty in my life. Going the path of the tiling window-manager would mean accepting the empty man I have become. Not my thing.
You mention alot about the terminal commands . But what files should any linux user know well . Config files start up logs stuff like that ? Im always getting lost because of those .
I almost always use terminal. Especially as a replacement for a file browser. It's just easier to type in the directory or file, I'm looking for, and then opening it using the command I want while having some kinds of auto complete.
Luke, my university course requires me to make a wordcuck document to upload to an automated plagiarism checker so I cant use a LaTex setup. Have you ever encountered something like this?
If you can use the .odt format, you might found your happiness in the program "pandoc", I don't really knosw if it will suit you, but I still think that it's worth a look ^^ It seem possible to use it to make .tex (and other) into .odt (or even docx), but you should read the documentation. Here is the list of possible format pandoc.org/
To be fair, I don't think anybody today exclusively uses a terminal for everything. I mean, heck, I love more complex terminal apps like micro that do give you, say, mouse support just because it is convenient. Drag and drop integration is also cool. But yeah, even just super simple stuff like installing apps through the terminal is waaaay easier once you get over the learning curve. Love your ipa poster, by the way.
i actually disagree about the browser bit. i use lynx all the time to talk on forums that don't generally have photos and whatnot, or if i'm looking at something that will be beneficial as exclusively text.
Luke, I feel like you already answered this question with your video about streams. Using *nix pipes is where the terminal has the most impact for getting things done efficiently.
It basically comes down to efficiency. If raised on GUI it seems natural, you install program, enter password and account information and off you go. CLI requires a steep initial learning curve that run into walls especially with setting up Mutt. So for what took 5 minutes in GUI takes would take forever in CLI. Now compare that to someone who started with CLI. This user likes how zippy it takes to do anything. Then they use windows and wonder why it’s so sluggish and slow. It’s like taking to a person who talks real slooooow. The point I am getting is for someone who started with GUI it seems to be not worth it in terms of time spent to learn CLI. While someone who grew up with it would say that all the time saved, why wouldn’t you want something that get things done the moment you press the return key. It’s all matter of perspectives. Sum it up, for my parents it easier to just use GUI. Who wants to spend time training them, only to have them forget and lose their instructions written in a piece of paper. Waste of their time but more importantly waste of your time. And that’s what it comes down to. Want distraction free, responsive environment and save time? Go CLI
Automating CLI stuff in scripts is a good point, but my experience with linux guis, at least with some, is that they do exactly that. They replace the script you have to write yourself by providing basically the same thing behind a button that easy to discover. Sure its not customisable. But if it works I dont care and at least I dont have to look up some obscure parameter name for a command that I otherwise rarely use.
To be honest, if it gets you to learn something, even "looking nerdy! xD" is a perfectly legitimate reason to start using the terminal, it'll be worthwhile learning regardless of what got you started in it
Nice video, thanks a lot! But what I personnaly like in the command line - is "pipe-lining". In GUI you shall look for the program which will do the job you need. In command line you can make your script which uses simple tools in a pipe line and produce result you want. For many cases writing a small command pipe line or shell script to do the job is much faster and easier than to spend time on looking for a best program.
Hipsters - They'll collapse on exit from the vim. My little addition to your speech about 'Why to use..'. Vast majorities Apple user have a problem to empty 'Trash'. When I show them a simple command in the terminal 'rm -R ' plus drag and drop. They are delighted because they don't need any extra paid software to empty 'blocked' trash. However, this jar on a table, hmm... Terminal Moonshine ;-)
Honestly: In my opinion, it doesn't get much easier to run a program than to just type the name in the terminal. I don't have to search for the executable, I don't have to click folders. Everything in most Linux distributions is very neatly organized and I think this is the definition of "it just works". A program does not do what I want? Use two different GUI programs and somehow move the date between them or even have to buy a new program that can do both things, or just chain two programs in the terminal which are both extremely efficient at what they do and were designed with a lot of care and usability in mind? This is why I can't take it serious if somebody tells me GUIs "just work".
I am the opposite, i can't entertain the thought of using those ugly terminals, so I program GUI applications to wrap commands that would take long, in simple 1 click the pretty button applications.
I'm a 25 year old farmer and using the Linux terminal is like riding a bicycle.
@Enoch William once you learn how to ride it you never forget that
@nootics the women or the bicycle?
@@arax20 yes
@@Jupiter__001_ Nice.
king shit
Luke Smith: *reads question* "Don't know what the haha is for".
Also Luke Smith: "So I hope that answers the question haha" *kawaiiface
Virgin GUI vs Chad Terminal
@@mamaluigi0631 The virgin real-time terminal vs the chad toggle switches panel (altair 8800)
@@robsonbromberg9042 The virgin toggle switches panel vs chad C-x M-x butterfly
no u
I use terminal most of the time but I'm a virgin, how can you explain that?
@@VanStabHolme, the same.(nice nickname btw)
"An idiot admires complexity, a genius admires simplicity." - Terry A. Davis
[It's ironic because he said that in a video about bashing linux]
Thats relativity, folks
Bashing Linux sounds fishy to me.
Perfection
What video did he have where he wasn’t bashing Linux lmao
RIP Terry, he would loved Orthodox theology...
It's possible to run Linux systems and never open the terminal. But you would miss a lot. The power of Linux is in the terminal.
Would it not be more powerful if someone would use machine code directly? Tbh that would be the most efficient way but also the hardest way to use a machine ;-)
Ahh but you must the point. It’s like a gateway drug. Show them it’s windows but have an environment where they can do both GUI and CLI
I don't think it's quite this way. The power of Linux is in the kernel, if you use these kernel powers via a DE with a lot of shortcuts on your screen and guis and shit, then you're using this power, same for CLI. It's just a matter of how much time do you wanna spend on the computer to do your work or to work on other things, and a lot of people want to do what they have to do and use their free time with family, friends,... And a gui with shiny big bottons does Just that for them. It takes more time than having keybindings, customized interface,... But it does the job
@@doublepmcl6391 how exactly will machine code be most efficient :-)
@@hpsmash77 Idk, I am only guessing ;-)
I ONLY use the terminal. I guess you could say, I'm terminally ill.
I luv da terminal. I guess that's what is wrong with me. Thanks for clearing that up for me. LMFAO@your comment
Shrek, wanna have a termANAL? ;)
How do you watch porn? Using libcaca?
So lame that... it is actually good
how did you watch this video?
“What I saw in the Xerox PARC technology was the caveman interface, you point and you grunt.
A massive winding down, regressing away from language, in order to address the technological nervousness of the user.”
- an IBM technician lambasting the Apple Lisa’s GUI
"To be, or not to be, that is the question:
Whether 'tis nobler in the mind to suffer
The slings and arrows of outrageous fortune,
Or to take Arms against a Sea of troubles,
And by opposing end them: to die, to sleep
No more; and by a sleep, to say we end
The heart-ache, and the thousand natural shocks
That Flesh is heir to? 'Tis a consummation
Devoutly to be wished. To die, to sleep,
To sleep, perchance to Dream; aye, there's the rub,
For in that sleep of death, what dreams may come,
When we have shuffled off this mortal coil,
Must give us pause. There's the respect
That makes Calamity of so long life:
For who would bear the Whips and Scorns of time,
The Oppressor's wrong, the proud man's Contumely,
The pangs of disprized Love, the Law’s delay,
The insolence of Office, and the spurns
That patient merit of the unworthy takes,
When he himself might his Quietus make
With a bare Bodkin? Who would Fardels bear, [F: these Fardels]
To grunt and sweat under a weary life,
But that the dread of something after death,
The undiscovered country, from whose bourn
No traveller returns, puzzles the will,
And makes us rather bear those ills we have,
Than fly to others that we know not of.
Thus conscience doth make cowards of us all,
And thus the native hue of Resolution
Is sicklied o'er, with the pale cast of Thought,
And enterprises of great pitch and moment, [F: pith]
With this regard their Currents turn awry, [F: away]
And lose the name of Action. Soft you now,
The fair Ophelia? Nymph, in thy Orisons
Be all my sins remember'd." - Hamlet, by William Shakespeare.
tl;dr: Idle up the mind to have the devil work his magic of independent meritocracy instead of mindless obedience (which is ironic since non-humans don't have free will according to some interpretations of that contradicting fable).
@@CTimmerman
There are more things in heaven and earth, Horatio,
Than are dreamt of in your philosophy.
@@GurtTarctor IMHO problem with GUI is: how to pass arguments, specify options and set environment in which required action should be executed on objects we want to be created and/or transformed.
TUI allows us to be eloquent in setting tasks for computer to do and GUI allows for using hands in manual labor way.
We need sw like Gimp or Inkscape to draw and paint art, but when we already have a bunch of images to change, ImageMagick is much more powerful, faster and easier to use. Same goes for video and ffmpeg etc.
Now, my favorite artist, Dave Fischer / cca.org / creates his graphic art by writing PostScript in Vim and all of his video effects and transformations are done in K&R C. OK, he is a genius :D
@@vmisev Dropping a bunch of files into a converter program with the proper selection should work, or selecting them from its filepicker (which tends to be one component lacking features compared to the Windows one).
@@CTimmerman What if task is to crop, resize and convert color to some color space for all images older than 2 weeks and newer than 4 months, bigger than x size but less than y and only those which name contains [something] and files are stored in different dirs and subdirs that have hundreds of files?
Using terminal that's trivial one-liner.
The video didn't start with you mentioning "boomers" or "zoomers". Frankly, I am disgusted and I can no longer support this channel.
Also, it would be better if you closed your curtains and used artificial light as it would make your videos a lot clearer.
first part, kinda... second part certainly.
@@abdulwahabjag omg. This comments section is so bloat
GUI makes simple things easier. CLI makes difficult things possible.
luke makes impossible things possible!
CLI doesn't make things "possible". Or do you think computing was impossible before CL era? CLI makes everything efficient and GUI is just bloat for your grandma so she can use the computer with her slow fingers...
@@martinprochazka3714 you must be very fun at parties.
@@kimkatsu1453 how do you know if he go to parties?
@@sweetberries4611 I think that's the joke here ;^)
We live in a Graphical User Interface
It do be like that.
Bottom text
See the thing is, even the terminals are just called "Terminal _Emulators_". The applications themselves are still on a GUI, and very very few people still use pure text interfaces (I can't even imagine what that would be like). But we still use the very powerful interface of text and language (which is just composed of texts) to interact with the computer. It's the generalized interface that matters, not the actual thing that we're using (ok I'm being too serious :))
@@crides0 Arch is pure text when you first install it.
100k emails? do you work for Hillary? that's probably a couple Gigabytes (unless is absolutely nothing but text) in your hard drive, mate. Insane.
It's about 10GB. A lot of them are old text messages converted to emails by a program I used to use.
@@LukeSmithxyz not even mentioning mUh L33t pRoGRaM cHoICE? Basically Microsoft
@@LukeSmithxyz Thousands of anime newsletter notifications for my 17 years-old self after a decade don't seem to justify that. Recently I reduced 3.000 work-related emails to 500 which I keep for legal reasons.
"Let's find out!" *autistically points finger to camera*
stop using your mouse
as far as the email example goes, comparing a terminal email client to a web based client is an apples to oranges comparison. I know Luke here and probably many more people watching see windows and microsoft as the devil but i compared his example to using the native mail app in win10 and it performs exactly the same, except it has no load times and immediately opens to all mail (that's how i have it set up tho). So as its pinned to taskbar, one click, bam its open, don't have to wait to log in or mail to load, it's just as instant as a single click. If you are going to compare a native email client, then compare it to another email client. (outlook is trash though). other than aesthetics and privacy concerns, there is no functional difference between the two, except one is more intuitive. If anyone tries to argue GUI isn't inherently more intuitive than terminal then you are too far up your ass to bother with.
Now this isn't to say terminal doesn't have its place, terminal is SOO much better than gui simply due to the control you have, but GUI exists for a reason.
As someone who is gradually trying to get more comfortable with using the terminal (via my Raspi and FreeNAS - so Linux and BSD) I find the rather elitist stance of "CLI is just easier and better" of some experienced users quite off-putting ...
I have no doubt that it is easier if you have gathered enough knowledge to build upon. But for beginners it is getting pretty quickly annoying to stumble from one obstacle to the next (and be it something mundane like not knowing how to switch keyboard language) while feeling lost in some cryptic text you don't really understand and sometimes only getting "help" in form of either super-technical explanations or a "just type this" response (without having any real understanding what those things actually do).
As a beginner the biggest problem in the CLI is that you basically don't know what exactly is happening (you rarely get any real direct feedback like in a GUI) and you usually don't have the means to check and help yourself if something doesn't go as planned. So it's not very helpful to be just one misremembered command away from deleting your data while not even realizing that you actually did just that. For me it really isn't helpful that many Linux (unix ... whatever) experts ignore such legitimate concerns and instead say something silly like "GUI is just for your grandma to navigate".
@@Xul exactly. People forget the enormous lessening curve they went through in order to master using the command line that effectively and assume everyone ought to just know that
Thank you so much for the answer! So much nice getting a reply by video, I know I still have a big road ahead and with videos like yours I'll eventually do it :)
This is an old school video when there wasn't any guis available.
ua-cam.com/video/tc4ROCJYbm0/v-deo.html
Another nice thing about CLIs is that, when teaching or documenting, it's much easier to explain text commands than to describe someone's funny-looking icons and where to find them.
knowing how to use the terminal allows you to streamline your approach to the computer and fly through tasks a lot faster. It's about the way we think about it. It's like when writing a long email, it's a stream of consciousness moving from the mind to the fingers, and perceiving the letters and words ahead of time. It's like that with commands and flags and stuff in the terminal. With a GUI, you spend time having to break that stream of consciousness to look for the cursor, point and aim and click, or whatever else. Resizing windows and shit
Yes you can automate GUI stuff, browser stuff with selenuim and other GUIs with some machine learning
but i totally agree with your point, linux was almost made to be used with terminal, very fast navigation and execution
Yeah, but you can't use your computer while it's being executed and you have to train it for every single task you have to do
got an oldish laptop, decided to install Manjaro and start using Linux on it exclusively (regrettable I haven't been using it for longer due to some steam games), and I already started to feel the penguin power!
What you mention at around 6:45 about moving all the files was precisely what made me start realizing it.
I downloaded a bunch of zipped spritesheets and whatnot, instead of using the mouse I decided to try and do it on the terminal, and after a quick search and a few commands I moved dozens of files to a new folder AND unzipped all of them
Video editors are not ffmpeg frontends, ffmpeg can't do many effects etc directly, it's up to the video editor software, not ffmpeg - ffmpeg is used here as renderer of video project, not much else. Gstreamer plugins and other things are tools to do video editing, not ffmpeg. Using ffmpeg here is like using avidemux, only totally simple stuff. So you're wrong here as heck. I know, so muh minimalis and "efficency", but sometimes it's not totally worth it to hassle with often obscure software just to automate things that's just availiable in more "bloated" software like Thunderbird.
the most interesting and relevant part for me is in this video is:
09:31 - 09:57 splice and concat demuxer (merge) by copying the codecs is instantaneous using ffmpeg
I grew up using MS-DOS, Unix, and other command line-based operating systems. Terminal is often more comfortable than clicking around in some buggy GUI...
True comand line cant brick gui can crash,bug out. Its just efficient a bit of Brainfuck in the beginning.
similar to how humans communicate with words, if you also use words (commands) with your computer you can do stuff a lot faster and better than just pointing
you wouldn't point to yourself, draw a rough outline of hawaii, take out your wallet, point to it, and shrug, no, you'd ask "how much does a trip to hawaii cost?"
pretty much same with command line too ;P
also, I remember reading about a study that found, for people who never used a computer before, those who got taught cli learned faster, and better than those with guis
Link to study? That would make sense, people learning the CLI are learning how to interact with a computer at a much lower level than most people now (and therefore will understand it better).
@@Cobalt985 sadly no idea where that is, just remember reading it SOMEwhere, and yeah, makes sense... quick duckducking doesn't yield anything related, tho...
I know this is for Linux people, but as a Mac technician,
Answer: Obviously not. Good luck doing tasks like making a fusion drive, turning off SIP to update EFI firmware, or running dotclean on files with a GUI. I dunno why this guy didn’t use a better variety of examples, but using the terminal over the GUI isn’t always just about efficiency, it’s also about capabilities your GUI simply does not have.
And also the endless menu-fishing necessary to do most things in a GUI.
Here is the thing. I completely agree with you. The problem is that people are lazy (for lack of a better term). People don't want to make configuration changes and make scripts. So on paper GUI is easier. But in the long term the terminal emulator is the best tool for efficiency. BTW love your videos Luke. UwU
owo
owo :3
It is kinda obvious what program will win when it's web interface vs dedicated mail program (GUI or CLI, dousn't matter). If you need efficiency, you will use Outlook, Thunderbird, KMail, mutt or other programs, not freaking gmail in a web browser . It's almost like the people don't know better than "oh, there is no app for Gmail on my computer, I have to visit the website then" :/
@@or2kr The Gmail UI is actually really good when it comes to GUIs. I've used both Outlook and Thunderbird, but I still prefer Gmail. You have to set it up properly of course, I think the default settings/layout sucks
@@rebane2001 Gmail is definitely the less evil web interface compared to basically any other web interface of a mail provider
I'm not even a Linux user but I'm amazed at how easily you can partition a usb drive through fdisk which you showed in your arch Linux install video. You are right; gparted with the GUI and the windows partitioning program will all have you click through menu after menu to finally get a couple of partitions when in Linux it's a couple of simple commands and that's it.
I use terminal applications to look like I'm busy at work when I'm actually making vaporwave with youtube-dl and sox
genius level shit right here
I know this video is old, but I hope you see my comment. As I said to Derek Taylor, AKA Distrotube, I would like to say Thanks. You are part of my desire to learn more. I hope one day I get half of the knowledge you have. Derek helped me to understand WMs better. Nowadays I run i3 and qtile, love it. And you helped me to understand terminals. Thank you very much.
Dont get me wrong, i too love the terminal, but to be fair:
Theres allso quite powerful GUI Email clients, that offer control via keybinds and/or mouse.
You know, if your stuffing your face with Doritos or whatever, and only got your pinky to work with, a mouse can be great... :p
Other than that, totally agree. Really good and comprehensive video. :thumbup:
Recently, I’ve been saying that development stops where GUIs begin. You can’t build wrappers around, you can’t pipe from and to, and you can’t automate GUIs
GurtTarctor what do you think that means?
In my opinion, that is a GUI built around a CLI. That way a user can use the GUI and can streamline the same process in CLI
GurtTarctor none of what you said makes any sense. If it’s not GUI or CLI based, what do you expect for interactive control with the kernel? Mind control?
A thing that people need to realize is that while you're learning, it will take longer. But once you're used to doing things and better at it and have muscle memory, terminal apps are faster than what they've already learned in the past. For example, learning VIM is a bit painful, but it's faster later. Terminal apps are the same
I'm impressed that he pronounced João correctly honestly
My thoughts exactly
I love my terminal mp3 player
Have you ever played hide and seek with button in GUI application ?
> when the GUI creator moves the button you always use to another dropdown within a dropdown.
GUI is software version of hide and seek
Still easier than man, unless you know how to write a script to parse the term line from grep and open nano to that in the man or info page. I'm not sure if nano has that feature and whether it's the same in various shells on GNU and BSD.
@@CTimmerman Or unless you know that by default, man open the manpage in less (or more on old system) which accept vim keys, including "/" to search for a world and "n" and "N" to navigate trough them ;)
But to be fair, in order to know this, you should have read the man page for man and the one for less x)
Do I have Linux installed and my windows install purged?
25
EE student, I tought myself linux
The reason why it's hard is because you don't realize how easy it is
That said, I use both GUI and terminal
Humans are visual creators, sometimes understand pics moving files is easier when you drag and drop them
There are automation tools for the GUI, but they are either less powerful or more complicated, if not both. I love Siri shortcut and it does web api interaction and ssh status check the best on the go, but I still like to learn the terminal way so that I can do it the same way on a headless raspberry pi, a VPS and on my desktop. Consistency is valuable
I didn't really appreciate the terminal until I started having a large amount of data to mine. I liked your talk where you evangelized about using wizards to configure the more complex tools like mutt. I sometimes find having to stop and manipulate the mouse slows me way down. Like they always say: when all you have is Python, every software solution is a snake :-P
7:00 you can sort by file type in most gui file explorers then you can just select the first file of the type you want hold shift and select the last file of that type then move it(though "mv *.jpg ~/pictures" is definitely easier/faster/more efficient I just wanted to point out that you didn't point out the fastest way to move files with a gui)
It's that or running `mv *.jpg ~/jpegs`.
Is Luke trying to imitate Varg? Let's find out!
Why would he do that?
You mean cooking with Luke in wild?
Linuxian Perspective
Hi, I agree with you, terminal is love. Terminal gives you control, but with great control comes great, wait for it, responsibility. I am having GUI vs CLI discussion all the time with some close people. They just have different worldview. In their view control and decision making is a cost. The fact that they get to automate/build things for themselves, for them is not an opportunity but a downside. They do believe that some one button system is possible and eventually will come and save them from the horrors of deciding for themselves.
---
One thing I have to concede though. I work in terminal all day everyday and it starts to take a toll on the eyes. Looking at pictures and icons is indeed easier. I have to agree our eyes are not built for staring at text all the time. I bet a lot of people feel this discomfort but can't pinpoint the source and just make up some arguments.
the annoying thing about guis is that you can easily misclick a button.
the most prominent example in my opinion are the "shutdown" and "reboot" button which made me prefer to just type these commands in the cli
Using Terminal with Tiling Window Manager, like i3, can greatly improve productivity.
Even on Windows, the terminal is useful. Just downloaded a bunch of files from my NAS to a new laptop. Failed about 2/3 of the way through, so I just starter again. Usually Explorer is smart ebough to skip files that already exist. This time it wasnt. Ended up with a lot of duplicated files. Might have taken hours to delete all the duplicates in the GUI. Or simply "del /S "* (2)*"" and it took seconds. Took longer to figure out that del works differently in PowerShell than CMD.
I study in an ITIS (technical institute, high school) and since the first year in IT we're forced to use terminal and commands, and professors teach about Linux and UNIX systems (unfortunally the first year my classroom was 2/3 composed by scums, and i didn't learned nothing about theory, while the first year now they teach what is POSIX, what is the userland, the shell and other awesome stuff), and this year the IT professor told us "You should use the GUIs as less as possible, since the terminal is much more efficient and powerful".
Anyway, at school i always used Slackware/Salix (while in another labs there is Ubuntu and Linux Mint), and we use Emacs as editor (me and another classroom mate/friend we are an exception: he uses Nano and he told me that VIM was shit, i tried VIM and after figuring out how to exit, type simple text and save, i learnt how to use it with Radford manual and VIMtutor then).
A day, for a class test, i had to use a PC that didn't got enabled the Window Manager (KDE by default, it makes me puke, since i use WindowMaker in my main workstation), and i decided to use the CLI: i was able to write and compile the program, all from VIM (without quitting it) like a chad.
Then i decided to go full Linux at home: i have a gaming PC (i plan to replace the video card soon and to definitely switch to Linux, since the drivers for my R7 360 are crap and don't work with Vulkan ATM) and my i'm using more my notebook to do many things. I could even use a toaster (Sempron 64 3000, 1gb, Radeon X800 Pro) with NetBSD or Gentoo, write my programs in C language for school and deliver them.
Another good thing about the terminal is that it's pretty ubiquitous, so when you are showing how to perform a task, that will apply to a broader audience than showing how to perform a task in one particular GUI.
I think there is a slightly different way to interpret their questions. As you demonstrate how easy it is for you to do certain 'specific' tasks, the journey to implementing the software that makes it so easy isn't as straight forward as a GUI in some cases. So although with your method it does achieve higher performance in the end, it still achieves the same result practically speaking while being more challenging to implement. But that is why you make guides to help people, so it is kind of a self fulfilling prophecy. I think the easiest analogy for people is this: if you want to make a wooden chair, would you prefer to use basic tools with limited training to get a satisfactory result - or would you prefer to use a masters tools with a masters knowledge to make something not only functional, but beautiful. Thanks for your content, always a great education for me (a hobby, average terminal user of basic knowledge)
You can technically automate the thing in Gmail, with greasemonkey, but let's be realist that way more boring and hard to do than automate thing in the CLI
I think another deterrent is the learning curve and the patience required. Figuring out how to login and search mail using GMail's webmail or Thunderbird takes much less time and is easier than learning Mutt.
I"m tempted to try it out some time though.
I started using the command line because I'm getting old and I missed DOS and I don't give a fuck what anyone thinks about that. Word processing, web browsing and email in terminal is better than the alternative for 90% of what I want to do. Use your computer the way you want, I'll use mine the way I want.
The biggest advantage of the terminal (imo) is that it's relatively consistent in terms of it's interface and the kinds of flags programs expect. For a lot of stuff, I find graphical interfaces unironically a lot harder.
Yeah, you basically have to learn each gui from scratch (except maybe most simplest tasks). Though for me most powerful feature of the cli is being able to make different apps work together by piping and redirecting. You can't do stuff like that with gui, really.
@Renge Miyauchi Probably a flouride infested glow in the dark too.
Yeah, and because of consistency, tui is scalable in terms of automation, you can write a script, deploy it and run on thousands servers and configure to run the script automatically, doing all this by hand would take eternity. When I first realized what power gives the knowledge of terminal, it blew my mind.
"I get a lot of question like this from... novice users"
To be fair towards GUI software: It oftentimes is possible to automate tasks that many people would like to be automated.
i.e. quickly moving and tagging mail might be possible. With standard in- & output however it's the user who automates without the frame set in the configuration tools for that specific GUI program. Another big thing is interoperability.
I'm exactly the same as you Luke, I'm no Linux guru, but I'm my profession there's a lot of file and folder/directory management. The terminal is easily the best for this.
I would also like to mention that spacial awareness is much slower and less reliable than that of verbal awareness.
Here is a good test: remove/add an item in a room and ask someone to tell you what is different. Now, ask a friend to listen to two phrases said by you. Change one word in each sentence. See how long it takes for them to notice.
That’s the difference in GUI vs CLI.
GUI is spacial awareness and CLI is verbal awareness. It takes far less time to say what you want from a room than it takes to go find what you want from a room.
Now try and compare how much time do you need to learn a new terminal app vs doing one thing in GUI.
One of the reason why I prefer terminal applications over graphical is that I am not bound to the features and options the graphical tool provides. I can combine and use the power of my entire operating system to say filter out data. Also the script-ability and automation of command line programs is a huge plus. I can reuse some of my scripts to do stuff with new programs, if its compatible.
On the other hand, sometimes graphical user interfaces have its own advantages… But I am not going it now.
While watching the video, I want to reply to Luke. You can automate graphical user interfaces too, I did that back then in Windows XP with AutoHotkey. And actually I do some GUI automation on Linux too, with Autokey or my keyboard/mouse macros that I can record in realtime to solve graphical automation, in example.
I too try to do as much from terminal and command line as possible. Auto Hot Key is a solid option for super quick GUI scripting.
Damn, that LinusTechTips jab
As a pragmatic Linux user, I use both cli and gui, depending on what is quicker and easier at the moment. Sometimes using a cli browser (links or w3m) for quickly looking up some information or downloading a specific file is more efficient for my workflow than opening Firefox. Or ffmpeg for quick video conversion, and vim/neovim fir text editing. But email through terminal? Not for me.
Sure, it may be better once you learn it, but the thing with cli applications is that they require a good (human) memory to be well used. Sometimes even Vim can be too much of a hassle when you could just use good'n'old gedit, depending on what kind of text I'm editing.
1. You can automate things in Graphical user environment if the whole operating system is based on Graphical User Environment being that way. There are none as of right now.
2.Let's say I just make a shortcut on desktop with some programmed line that open up Firefox with my mail and simply start typing in the auto-focused mail search bar.
Or even simply binding that to keyboard shortcut.
Keyboard shortcuts are not part of terminal, they are prevalent everywhere.
They are available in Graphical Interfaces as well.
And Terminal is a GUI in itself just like everything else you see on the screen.
Cope
The first computer I used had 24 f keys, no mouse input and only green and black colors in the display. Come to think of it it was an IBM and the keyboard had so many keys that you don't see on contemporary keyboards. Wish I got to learn more about it.
Hehe I can see him get giddy about being able to look at his emails so quickly
I use terminal applications insted of GUI because interface doesn't change and I don't have to relearn new version of app every time something changed position in menu or GUI. Other than that they are blazingly fast and you can use them via ssh.
On the other hand I would never try to use Blender via keyboard only or any graphical app (GIMP). It would be pain in the ass.
I would argue that email is slowly becoming just like the internet. I receive a lot of emails on the daily which contains HTML and not just plain text.
I hate those but there isn't much I can do, and using 2 separate email programs just sounds as much more of a hassle.
So I guess I won't be moving to a terminal based email client anytime soon ...
Don't (necessarily) have to switch windows. Don't have to reach mouse/trackpad. Programs on terminal are (almost always) better on resource consumption/take up less disk space. Commands can easily be automated. List goes on.
Two more reasons to use cli apps:
-The UI of cli apps tend to be a lot more stable, the UI of gui apps tend to change frequently meaning you constantly have to relearn them, if you are using 100 plus apps that can be really annoying.
-Most cli apps follow a similar design language, they are all very similar to each other, meaning once you have gotten used to using cli apps its mostly fairly easy to learn new cli apps.
1st of all, shortcuts are possible with browsers, so you can just press a key and you have your inbox infront of you. Second, the interface on gmaildotcom isn't nessecary a standalone gui, it is a web interface, so a client like kmail or Thunderbird will be quicker and more convenient when you need to manage lots of mails. That said though, when you have a CLI interface tailored to your needs, nothing will beat it in terms of latency and that may be a better way to avoid to have that tracking website somewhere buried inbetween your browsers tabs
homie got the sun glasses levitating over his head.
The command line is better for some tasks. Its not better for other tasks. The area where the command line really falls down for me is in intuitiveness. The GUI has a strong advantage of being able to show you what you can do quickly. With the command line, you either need to already know what to do, or you need to research what to do. I think creating strong GUIs is a great choice for things a person will be doing infrequently (where you kind of relearn things every time).
This is a problem in Linux because so much of tech support type things are done in the command line, but they're done infrequently that you aren't really gaining the benefit of the terminal.
Don´t trust Luke´s justifications. He´s an insufferable hipster for the early 2000s.
Luke covertly LARPs as Cypher from the boomer classic The Matrix by running only terminal applications while wearing sunglasses inside and being bald with a weird goatee.
His endgame is selling us out to Google/Facebook/Apple/Microsoft in return for endless VR porn and VR steak.
Hit it on the head
You could automate things in the GUI using PyAutogui, Sikuli, etc. But in my opinion, that's the most bloated way to do things ever.
Could be more bloated yet awesome if you built a robot to recognize and touch the screen and/or other HIDs for you.
Use the terminal when its advantegous; if you can use it you can decide for yourself. The difficult of learning a single command become sequences of action in GUIs and to be efficient applications must be relearnt to utilize the keyboard through short cuts. Additionally he user interface can updated in way that obseletes knowledge of how to use it; otherwise your forced to use an outdated product. Where there are convient fronts ends they shackle you to often inferior outdated backend and wall you off to interactions with other useful applications.
Before I even watched the video I instantly thought about gcc, node, and other programming stuff that is just simpler in the terminal.
Sure! But not everyone is a programmer (and I'm saying this as a developer myself). I think Luke's point was broader than just programming-related tasks
That's true, but campaign mails or beatuiful emails runs on html AND that's Is a huge problem !!!
you could have just said "yes" instead of spreading it in 11 minutes
Gotta be long enough to get that ad revenue.
But you wouldn't understand why without those 11 minutes. Google is better for Yes/No immediate answer.
The terminal is essential if you use Linux and or BSD.
To do sysadmin the terminal is just the highway 🛣, what if the UI get stuck freezes ? Then console is mandatory to kill process which cause trouble , you retake the control of your machine . Terminal is important for tones of stuffs
On top of scripts rely on a window manager and cli variations of my most used programs/functions because I do not want the ergonomic disadvantage of using a mouse. My hands are in a relaxed position over a 42% keyboard and I can access whatever I want extremely easily.
I'm way too late, but anyway: I do pretty much everything on a terminal that runs as a window inside the DE I made for myself? Why? The highly visual DE reminds me of how things were back when there was novelty in my life. Going the path of the tiling window-manager would mean accepting the empty man I have become. Not my thing.
AMEN BROTHER, TO EVERYTHING YOU SAID!!
You mention alot about the terminal commands . But what files should any linux user know well . Config files start up logs stuff like that ? Im always getting lost because of those .
I almost always use terminal. Especially as a replacement for a file browser. It's just easier to type in the directory or file, I'm looking for, and then opening it using the command I want while having some kinds of auto complete.
Luke, my university course requires me to make a wordcuck document to upload to an automated plagiarism checker so I cant use a LaTex setup. Have you ever encountered something like this?
If you can use the .odt format, you might found your happiness in the program "pandoc", I don't really knosw if it will suit you, but I still think that it's worth a look ^^
It seem possible to use it to make .tex (and other) into .odt (or even docx), but you should read the documentation.
Here is the list of possible format pandoc.org/
To be fair, I don't think anybody today exclusively uses a terminal for everything. I mean, heck, I love more complex terminal apps like micro that do give you, say, mouse support just because it is convenient. Drag and drop integration is also cool. But yeah, even just super simple stuff like installing apps through the terminal is waaaay easier once you get over the learning curve.
Love your ipa poster, by the way.
i actually disagree about the browser bit. i use lynx all the time to talk on forums that don't generally have photos and whatnot, or if i'm looking at something that will be beneficial as exclusively text.
I feel as though I never truly used a computer until I started using the Linux terminal.
LOL I FEEL THE SAME WAY!!!!
Spot on João pronunciation. Wasn't expecting that.
Luke, I feel like you already answered this question with your video about streams. Using *nix pipes is where the terminal has the most impact for getting things done efficiently.
Thunderbolt exists.
It basically comes down to efficiency. If raised on GUI it seems natural, you install program, enter password and account information and off you go. CLI requires a steep initial learning curve that run into walls especially with setting up Mutt. So for what took 5 minutes in GUI takes would take forever in CLI. Now compare that to someone who started with CLI. This user likes how zippy it takes to do anything. Then they use windows and wonder why it’s so sluggish and slow. It’s like taking to a person who talks real slooooow. The point I am getting is for someone who started with GUI it seems to be not worth it in terms of time spent to learn CLI. While someone who grew up with it would say that all the time saved, why wouldn’t you want something that get things done the moment you press the return key. It’s all matter of perspectives.
Sum it up, for my parents it easier to just use GUI. Who wants to spend time training them, only to have them forget and lose their instructions written in a piece of paper. Waste of their time but more importantly waste of your time.
And that’s what it comes down to. Want distraction free, responsive environment and save time? Go CLI
Automating CLI stuff in scripts is a good point, but my experience with linux guis, at least with some, is that they do exactly that. They replace the script you have to write yourself by providing basically the same thing behind a button that easy to discover. Sure its not customisable. But if it works I dont care and at least I dont have to look up some obscure parameter name for a command that I otherwise rarely use.
To be honest, if it gets you to learn something, even "looking nerdy! xD" is a perfectly legitimate reason to start using the terminal, it'll be worthwhile learning regardless of what got you started in it
Nice video, thanks a lot! But what I personnaly like in the command line - is "pipe-lining". In GUI you shall look for the program which will do the job you need. In command line you can make your script which uses simple tools in a pipe line and produce result you want. For many cases writing a small command pipe line or shell script to do the job is much faster and easier than to spend time on looking for a best program.
Hipsters - They'll collapse on exit from the vim. My little addition to your speech about 'Why to use..'. Vast majorities Apple user have a problem to empty 'Trash'. When I show them a simple command in the terminal 'rm -R ' plus drag and drop. They are delighted because they don't need any extra paid software to empty 'blocked' trash. However, this jar on a table, hmm... Terminal Moonshine ;-)
Honestly: In my opinion, it doesn't get much easier to run a program than to just type the name in the terminal. I don't have to search for the executable, I don't have to click folders. Everything in most Linux distributions is very neatly organized and I think this is the definition of "it just works". A program does not do what I want? Use two different GUI programs and somehow move the date between them or even have to buy a new program that can do both things, or just chain two programs in the terminal which are both extremely efficient at what they do and were designed with a lot of care and usability in mind? This is why I can't take it serious if somebody tells me GUIs "just work".
i used to think that way, but as u use linux for years u automatically switch to terminal based stuff in general
TLDR: Once you know the commands, it's faster just to type stuff out real quick instead of clicking around.
I was mentoring this kid with a master's degree in computer science and he spent hours trying to convince me a GUI was superior...
I'm used to using GUI but Im capable of using terminals when I have a reference.
I am the opposite, i can't entertain the thought of using those ugly terminals, so I program GUI applications to wrap commands that would take long, in simple 1 click the pretty button applications.
"lets find out!"
We know where that came from