Rationalizing a CLI lifestyle

It’s Christmas, so I suppose I should make sure I’m not taking things for granted, and should explain up front why anyone would want to live life at the console.

After all, you’re defying three decades of technological advances in doing so. You’re thumbing your nose at conventional computer dogma, which says no more effort should be applied than your forefinger and wrist.

And people don’t think in terms of text any more. Computing has evolved from the old days of “dir” and “run” and people need icons and buttons and sliders and shiny clicky things.

Words — even abbreviated ones — are interlopers, in the modern world of the visual computist. We sense images, we don’t sense words. We think in terms of ideas and scenes, not categories and descriptions.

And let’s be honest: Using all ten fingers is an inordinate amount of work, when one will suffice. Point, click, and be done.

And my rebuttal to all this is … I have none.

Nope. Not a word. Not a syllable. Not even a bemused grunt. 😐

Mostly because it’s genuinely not necessary for me to explain it. I do this because I can, and it makes sense to me, and because I have the resources and like the way it affects my life.

If it doesn’t appeal to you … oh well. Don’t lose sleep over it.

Do I think it’s the right way? Yup. Do I think you should do it too? Yup. Do I expect that you will? Nope. Do I care if you don’t? Nope.

Not for a second.

I appreciate it if you try it, or if you find some part of this personal quest uplifting, or if you feel a sense of kinship over something as cold and heartless as a flashing cursor.

But you and I are not on the same journey. I don’t know you. Your life is separate from mine, and what you need or desire or love is worlds apart from me.

I still suggest you try it though. If it appeals to you, I suggest you continue. I don’t expect you will like it though, so it doesn’t break my heart if you don’t.

Like I discussed a long time ago, your way of using your computer is right for you. Note the excessive use of the concept of “you” there.

Do your own thing. Make your own rules, follow your own dreams, chase your own goals and set your own limits. Don’t allow my harebrained experiences to interfere with the way you live your life.

Of course, if they do, and it changes things for you … well, then we were both lucky, weren’t we?

Happy Christmas! :mrgreen:

12 thoughts on “Rationalizing a CLI lifestyle

  1. evidex

    Merry Christmas KMandla πŸ™‚

    I’ve been reading your blog for a long time, and I love it. Your minimalism (or maximalism) is rather inspirational, and has driven me away from “heavy” systems. I doubt I’ll ever go completely CLI (other than servers) but I do try to keep things as low power as possible.

    Anyway, I’m rambling.
    Have a good one mate πŸ™‚

  2. Jeff Bauer

    Interesting convergence here — with this blog post today from you. I just installed Arch on my old Gateway Solo 5150 (233 MHz PII mmx lappy). With a 4.1G HD, I’m really torn about whether to install xorg or just fly tty-only for a while.

    Rest assured, though, that if I do ultimately install xorg, there will be no DE … just a spartan ratpoison WM.

    And merry Christmas, K.Mandla!

  3. CorkyAgain

    Merry Christmas, KMandla and all my fellow readers!

    I don’t think CLI is merely a matter of taste, as this article suggests. Reasons can be given for it. They might not be compelling reasons for some people, but they are reasons nonetheless.

    Here are some of the most common reasons given for favoring the CLI:

    – CLI is more sparing of resources, and as our host has so often explained, allows us to continue using older machines which might otherwise be discarded because they can’t run the latest compositing window managers or play flash videos. CLI apps typically require less memory and hard drive space, and they make minimal demands on the video system.

    – CLI puts more power at the user’s fingertips. The user who has mastered the shell typically understands the system to a greater depth than a GUI user. (I don’t think it’s the case that power users first begin to use the shell after they’ve already mastered the system. It’s the other way around. The shell has pedagogic value. Using it is the best way to *become* a power user.)

    – CLI is better for ad hoc tasks that involve applying the same operation to many different operands. GUI apps *have* been created to perform some of the more common of these tasks, e.g. batch file renaming. But these GUI apps are all specific to a single task. None of them, as far as I know, provides the kind of open-ended flexibility available on the commandline.

    – Because they are typically smaller, CLI apps load faster than most GUI apps. They’re also more likely to fit within the available physical RAM and run without virtual memory swapping, which means they often run faster than the corresponding GUI apps.

    – Most GUI apps use a number of shared libraries (aka DLLs) which must be loaded into memory at runtime. Typically, these libraries remain in memory even when the code they contain is not being used. In contrast, a shell script might launch many different programs as separate processes in order to perform various subtasks, but once those subtasks have been completed, the programs terminate and the system can recover any resources they were using. (This point is thus an elaboration of the first one.)

    Finally, I want to mention the need to distinguish between the commandline interface (CLI) and a text-mode interface (TUI). Examples of the latter include many ncurses- or slang-based apps like Midnight Commander or mutt.

    Not all of the benefits of the CLI accrue to TUI apps as well.

    Batch operations, for example, can be as cumbersome in a TUI as they are in a GUI. But TUI apps are more likely to address this shortcoming by providing a commandline too. (You can see this solution in both Midnight Commander and mutt.)

  4. Travis Poppe

    Glad to see someone else who is intrigued by console-only setups. I’ve had fun reading your blog this weekend.

    I’ve been experimenting with console-only systems since I first realized it was possible. X was usually slow or, worse, wouldn’t run at all on some of the older systems I had, so I’d just omit it in favor of svgalib applications (Links2 -g, zgv, etc). This was FreeBSD at the time, so the graphical stuff was different.

    Later I received some free low-end laptops from family and friends, which were practically incapable of running X. So the console tradition continued in that sense.

    These days I like to see how Linux performs on ancient systems out of curiosity, and what they can be made to do. I tend to prefer console applications anyway just because they have such a low footprint, and because they work with screen/ssh.

    Still wish there were a good method of doing WWW. ELinks/etc. have never worked with my bank, for example.

    Anyway, fun projects! I’ll keep you in my RSS reader. πŸ™‚

    1. CorkyAgain

      I almost included support for ssh in my list of reasons, but then I remembered that you can do X forwarding with ssh.

  5. Pingback: Links 27/12/2010: The Humble Indie Bundle Ends, Mandriva 2010.2 Screenshots | Techrights

  6. Hippytaff

    A late Merry Christmas, I made a vow (or promise to the wife) that I would put aside my geekiness and dedicate my time to the family for the christmas period (and rightly so) but I’m breaking the rule briefly to catch up on your blog post and to wish you a merry Christmas and a happy new year!

    1. K.Mandla Post author

      Don’t jeopardize your marriage on my account! 😯 :mrgreen:

       _   _                         
      | | | | __ _ _ __  _ __  _   _ 
      | |_| |/ _` | '_ \| '_ \| | | |
      |  _  | (_| | |_) | |_) | |_| |
      |_| |_|\__,_| .__/| .__/ \__, |
       _   _      |_|   |_|    |___/ 
      | \ | | _____      __
      |  \| |/ _ \ \ /\ / /
      | |\  |  __/\ V  V / 
      |_| \_|\___| \_/\_/  
      __   __              _ 
      \ \ / /__  __ _ _ __| |
       \ V / _ \/ _` | '__| |
        | |  __/ (_| | |  |_|
        |_|\___|\__,_|_|  (_)


      1. Hippytaff

        Nothing is jeopardised…just got clearance to wish you a Happy New Year from the missus too! (not that she knows of the extent of your genius) but none the less (or monk the more :?) happy new year from both of us πŸ˜€


  7. Tutute

    I’ve been enjoying reading your blog for a long time now, and it has slowly pushed me over to a more and more text based system. Or for now more correctly a mouseless system, after I found muscawm, that is my wm, and my most used program is the terminal emulator, I could probably go over to only cli by now, since that’s where I do most of my tasks, but for now this seems like the sweet spot. For web browsing I’m using opera and chrome with the vrome plugin for keyboard only browsing, and my hands thank me for not having to use the touchpad on my laptop every day πŸ˜‰


Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s