LogoJoshua Spann

The GUI Trap

GUI or CLI?

June 12, 2018

The GUI has been around since personal computing began. Xerox made the window manager that inspired what we know today. The mouse has been an intregal part of the computer, and today the touchscreen picks up where the mouse is leaving off. Today we are used to shiny buttons and smooth animations, pages full of graphic design and color. All of this beauty has come with a hidden cost.

In my youth, I remember my earliest computer. A hand-me-down from a rich family member that I never even met, I’ll never forget booting up DOS and loading up Windows with a simple command. In those days, the computer was a dark space and like any little kid, I was afraid of the dark. I stuck with Windows and remember the limited apps it had. Some applications only worked in the void and I quickly tried getting through them.

I’ve spent most of my life under a GUI, but I desperately suffered from nostalgia in college. During my third year, in 2012, I had a craving to go back to the days of DOS. A VM and free disk image returned me to that beautiful time, but I wanted more. I wanted it installed on my computer. I remembered that there was a Linux distro for everything and looked up a Linux distro like DOS. Next thing I know,I learn of Arch Linux.

Arch fufilled my needs, and I did use vim as my default text editor because I seriously didn’t know how to exit out of it. I wrote some dreams and stories, and discovered how to save, write, and quit files. :wq became second nature to me. I stuck with vim because that was the only text editor I knew about on Arch Linux.

Vim was a big impact on me keeping in the console world. I rarely used it, but the idea was grand. Using pacman also helped me grow comfortable with the Linux shell and a course didn’t hurt either. Lynx and w3m were simple enough to make the console a bit more fun. Despite everything, I still couldn’t migrate to the console. I didn’t have what I needed.

Years go by and while getting deeper into vim in late 2017 I discovered tmux. It was bulky but gave me something that I desperately needed: terminal management. All I needed was an environment like a tiling window manager but didn’t need the xorg libraries. Tmux ensured I could live in the console.

I began to create my USB Linux install and pushed myself to keep it in the command line. It works there first, the GUI is just an afterthought if I need to draw, watch cat videos, or do some UI design. Looking back at text editors before vim and window managers,I can honestly say that they held me back and still do to this day.

In a GUI, you need a mouse or a touchscreen. You have to move your hands away from the keyboard, situate the cursor or your hand, all just to click or tap on abutton 4 pixels away. Even with tab navigation and modifier keys, you still need a mouse. In vim, everything can be done on the keyboard. You don’t need to use the arrow keys. Everything you need is on the home row. A quick edit of the .vimrc file and you don’t even need to use modifier keys. In the console, everything is optimized for the keyboard.

All of this led me to believe that the GUI held back productivity and hurt your health. Redundant motions to use a mouse or touchscreen greatly contribute to carpal tunnel. Once learned, keyboard controls work from muscle memory and can do 5 minutes of GUI work in 5 seconds. The GUI is a blessing in many ways, but it has also broght with it a curse.

Like every decision, a tradeoff of security must be made for usability and a tradeoff of efficiency must be made for beauty. GUIs are indeed beautiful but use lots of resources. With electronics being made cheaper with less specs and UX taking preference, GUIs seem to be a dual-edged sword. Maybe it’s nostalgia, maybe it’s the fear of carpal tunnel, or maybe it’s the thought that my work is being done slightly faster. Maybe it’s nothing at all, but I seem to find that the command line is the best option for productivity, even today.

These tools showcase how much the console can boost your productivity: