Language Selection

English French German Italian Portuguese Spanish

The Command Line is Part of the Desktop!

Filed under
Linux

Hear me now. Hear me when I say it again. And again. In GNU/Linux, as in all 'nixes that I am aware of, the Command Line is part of the desktop.
You can put those words on my tombstone. That's my message to the world. The Command Line is part of the Desktop. That's what I want to be remembered for, the way Strunk and White, authors of the legendary writer's manual, The Elements of Style, are remembered for the classic admonition "Omit needless words." I'm sure that Strunk and White didn't invent that concept, they merely evangelized it, as apostles of a sensible principle that much of the world didn't seem to understand. Similarly, I'm not the one who decided to integrate the Bash shell into KDE and Gnome and XFCE and Fluxbox. But a lot of people don't seem to grasp the implications of that. They're huge!
I have a friend who doesn't like the Command Line-- and when he tried to explain to me why, he referred to an old Macintosh ad from the 1980s, in which a hapless geek is struggling with a DOS or Unix console and being chastised for each syntax error that he makes with a loud annoying buzz. And that's appropriate, because for many many users, even some very sophisticated users, their concept of the Command Line interface is stuck in the 1980s, when the graphic user interface came along, and saved us all from the monotonous tyranny of endless white letters on an endless black screen. The advent of the GUI was a good thing, a very good thing, the greatest thing ever for putting IT in the hands of everyone. It was revolutionary, but now the revolution is over, the desktop GUI has won, and the Command Line has joined the revolution.
A few hardcore geeks and mutants, God bless 'em, still like to use the console as their main interface, and I'm told it's very useful for servers. I myself like to use the console, meaning the bare black screen with no X server, to run certain specialized Command line applications (such as the distributed computing project, Folding@Home) under the desktop.

But no one who lives in the real world-- certainly not me, is advocating that everybody just scrap their GUIS and go back to the console. When I speak of the Command Line, that's not the Command Line I am speaking of. Today the GNU/Linux Command Line is not separate from the GUI desktop. It's a part of the desktop, carried in applications like KDE's Konsole, Gnome-terminal, and Xterm. (I know I'm repeating myself... am I getting through?) Some of these terminal windows have some very sophisticated features including choices of text size and visual schema (a fancy word for "theme") and, significantly, full functionality for copying and pasting of text.

But it is the context of working from inside the desktop that makes the 21st century Command Line a completely different creature: always a servant, never a master. As a part of the desktop, the Command Line can only make computing faster and easier, because if it doesn't, you don't have to use it. That's the biggest difference between the 1980's Command Line, and the 2007 Command Line.

Always a servant, never a master! I use the Command Line several times a day, maybe several hundred. It's never because I'm trying to slow myself down... and it's not because I'm showing off. No one sees me but my cat, Cecil Caliban, and he's more impressed by my ability to use the can opener than by my ability to use the command line. I use it because it saves me time and work. Not only that, but it has a way of especially cutting though some of the most boring, repetitious, drudge jobs that computing with the GUI used to demand of me.

In the 1980's, it was a matter of one tool being better than another tool-- but now, it's a matter of two tools being better than one tool. Think of the GUI as a hammer, and the Command Line as a screwdriver. Which is the better tool? Obviously, it depends on whether you're trying to drive a nail or a screw. Once, we all used the screwdriver for every job, whether it involved screws or nails.. Now many, many people are using a hammer for every job. To drive a screw with a hammer may be easier than to drive a nail with a screwdriver, but trust me, learning to use both tools, and to discern the screws from the nails, will open up the process like nothing else.

Here comes the kind of presumptuous statement that I usually try to avoid. GNU/Linux will only begin to truly make sense to you, to become that legendary OS that turns its users into crazed, devoted fanbois and fangrrls, and not just a "free" version of windows, when you begin to use the Command Line... not to replace but to supplement and extend your desktop experience. If you've already traveled from Windows to Linux, that's a long way to go to not get the full experience.

And it doesn't take much. You don't have to learn to use the Command Line to do everything. Trust me, Dorothy; a handful of simple commands is all that it takes to open that door and step across the threshold into a brand new technicolor world.

Yes, Dorothy, I know; the Command Line sounds like black and white to you. Prepare to be surprised. You're not in Redmond anymore. Don't be a putzbuntu.

To be continued.

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

OMG!!! WHAT HAVE I GOTTEN MYSELF INTO?!?

I blame the Red Bull.

Part II by Saturday. Happy Halloween.

St. Ignutius, code for us now, and at the hour of our reformatting, Amen.

More in Tux Machines

Linux Foundation Broadens Relationship With Surveillance

  • Facebook joins The Linux Foundation as a platinum member

    Most web-based companies are built on Linux and open-source software. Two-billion member social network Facebook is no different. For years, Facebook has not only relied on open-source, it's been an active contributor to major open-source projects. These include the React JavaScript library; the Open Compute Project, which open sources data-center hardware; and Linux's cGroup2 container software. Now Facebook is joining The Linux Foundation membership at the Platinum level. [...] While Facebook has been criticized for how it deals with privacy and politics, it has impeccable open-source credentials. It was already the lead contributor of many Linux Foundation-hosted projects, such as Presto, GraphQL, Osquery, and ONNX. The company also employs many Linux kernel key developers and maintainers.

  • Amundsen Joins LF AI as New Incubation Project

    LF AI Foundation (LF AI), the organization building an ecosystem to sustain open source innovation in artificial intelligence (AI), machine learning (ML), and deep learning (DL), today is announcing Amundsen as its latest Incubation Project.

  • LF AI Accepts Amundsen as Incubation Project

    The Amundsen data discovery project has joined the LF AI as an incubation project. Amundsen is a data discovery and metadata engine aiming to improve the productivity of data analysts, data scientists and engineers by indexing data resources. “Think of it as Google search for data,” the LF AI announcement said.

Graphics: Mesa 20.2 RC2 and DXVK 1.7.1

  • mesa 20.2.0-rc2
    Hi list,
    
    Available today is mesa 20.2.0-rc2. This is the second release candidate for
    the 20.2 release. Currently our open to close ratio on blocking bugs is looking
    really good. This release is dominated by changes to radeonsi, radv, and aco,
    with a few additional changes sneaking in for freedreno, meson,  etnaviv,
    st/mesa, anv, and a few utility fixes.
    
    Dylan
    
    
  • Mesa 20.2-RC2 Released With Many Fixes For RadeonSI + RADV Drivers

    The second weekly release candidate of the forthcoming Mesa 20.2 is now available for testing. Mesa 20.2 is aiming for release around the end of August or early September depending upon how the bug situation plays out. This quarterly feature release to Mesa3D brings many new Vulkan extensions, the RADV driver using ACO by default, initial support for Navi 2 GPUs, initial support for Intel Rocket Lake and DG1, OpenGL 4.3 for LLVMpipe, and much more as outlined in last week's article.

  • DXVK 1.7.1 Released With Many Game Fixes For Direct3D Over Vulkan

    It's been nearly three months without a new DXVK release for mapping Direct3D 9/10/11 atop the Vulkan API while finally today there is a big feature release out. DXVK 1.7.1 was released a few minutes ago as the first update since May. While the version number isn't significant, this version does have many changes.

  • Direct3D to Vulkan translation layer DXVK 1.7.1 is out, lots of game fixes

    After a few months since 1.7 went out, DXVK 1.7.1 is now live to further improve Direct3D to Vulkan translation. This is the project that helps to power Proton, the compatibility layer for Steam Play. This release adds support for newer Vulkan extensions, fixes bugs and has new GPU driver requirements. On the driver side, the VK_EXT_transform_feedback extension is now required which has been supported in drivers on Linux since late 2018 / early 2019. Specifically you will need at least NVIDIA 415.22 and for AMD / Intel it looks like Mesa 19 covers both.

Devices/Embedded: Raspberry Pi and Android Devices

  • Indoor air quality HAT for Raspberry Pi boasts high-res TVOC sensor

    Avnet’s $49.95 “Renesas ZMOD4410 Indoor Air Quality HAT for Raspberry Pi” can be used to measure volatile organic compounds, humidity, and temperature, as well as estimate carbon dioxide levels. Avnet has launched a Renesas ZMOD4410 Indoor Air Quality HAT for Raspberry Pi (AES-RHSEN-ZM44-G) that joins other indoor air quality measurement add-ons for the Pi including Metriful’s $44.50 Sense module and Pimoroni’s $57 Enviro+ pHAT. The ZMOD4410 HAT lacks some of the extras of those boards, but appears to offer a higher quality total volatile organic compound (TVOC) sensor with its Renesas ZMOD4410, which offers resolution ranging from parts-per-billion to parts-per-million.

  • Tiny module and dev kit run RT Linux on STM32MP1

    Exor’s 25.4 x 25.4mm, extended temp “NanoSOM nS02” module runs real-time Linux and its XPlatform industrial IoT software on a soldered, 800MHz STM32MP157 with up to 1GB DDR3L and 32GB eMMC. An “OpenHMI nS02” dev kit with 5-inch touchscreen is optional. Italian embedded technology firm Exor Embedded has launched a NanoSOM nS02 module that runs real-time Linux on the new 800MHz version of ST’s dual-core, Cortex-A7 based STM32MP157. As with the recent, Apollo Lake based, FPGA-enabled GigaSOM GS01 module, Exor announced the product with Arrow, which will be distributing the module and an OpenHMI nS02 Development Kit (see farther below).

  • Zidoo Z10 Pro & Z9X Realtek RTD1619DR 4K Android Media Players Launched for $229 and up

    We previously wrote about some upcoming Realtek RTD1619 media players targeting the videophone and audiophile crowd, and expected them to launch very soon with models from Zidoo and Dune HD. Zidoo has now launched two models with the awaited Zidoo Z9X and a new, higher-end Zidoo Z10 Pro which can be purchased on Aliexpress for respectively $229 and $349 with free shipping.

  • Snapdragon 626 Powered Rugged Tablet Comes with NFC, RFID and Barcode Readers

    Estone Technology has launched another rugged tablet with UA-80 IP-67 waterproof rated, and MIL-STD-810G compliant rugged Android tablet powered by a Qualcomm Snapdragon 626 mobile platform driving an 8″ capacitive touchscreen display.

Python Programming

  • Announcing the new Jupyter Book

    Jupyter Book is an open source project for building beautiful, publication-quality books, websites, and documents from source material that contains computational content. With this post, we’re happy to announce that Jupyter Book has been re-written from the ground up, making it easier to install, faster to use, and able to create more complex publishing content in your books. It is now supported by the Executable Book Project, an open community that builds open source tools for interactive and executable documents in the Jupyter ecosystem and beyond.

  • Holdgraf: Announcing the new Jupyter Book

    On the Jupyter blog, Chris Holdgraf announces a rewrite of the Jupyter Book project. LWN looked at Jupyter and its interactive notebooks for Python and other languages back in 2018; Jupyter Book extends the notebook idea.

  • EuroPython 2020: Live Stream Recordings available

    We’re happy to announce the public availability of the live stream recordings from EuroPython 2020. They were already available to all conference attendees since the sprint days.

  • Learn Any Programming Language with This Learning Plan

    All it takes to master any programming language is the right learning plan. If you know anything about programming you should be aware that often you can’t tell whether what you are doing is wrong until it’s too late. That’s what makes programming a frustrating skill to master — long hours doing the wrong things. But hey, whether you want to make programming your full-time job or just a hobby, you can always make the learning curve less steep. The secret to getting it right with coding is this: have a learning plan! While the plan will not do the hard lifting for you, it will definitely provide the much-needed elbow grease to keep you grounded and focused as you learn programming.

  • Deploying Django to AWS ECS with Terraform

    In this tutorial, we'll look at how to deploy a Django app to AWS ECS with Terraform.

  • Matt Layman: Rendering Calendars - Building SaaS #68

    In this episode, I worked on rendering a calendar of important events in a school year. We built out the appropriate data structures, and I wrote some new model methods and added tests. On the last stream, I created a new model to track breaks in the school year. The app now shows the calendar for the school year, and I want to display the breaks on the calendar. Before digging too far into the code, I provided my thoughts about using Docker for development from a question that came from the chat.