Modern CLI Workflows — Trivia & Interesting Facts¶
Surprising, historical, and little-known facts about modern CLI workflows and shell productivity.
The Unix pipe was invented on a napkin¶
Doug McIlroy, who conceived the pipe concept, lobbied Ken Thompson for months to add it to Unix. Thompson implemented pipes in one evening in 1973. The | character was chosen because it was available on the teletype keyboard. McIlroy later said that pipes were "the single most important invention in Unix" because they enabled composability — the idea that small tools could be chained together.
Dotfile repositories became a movement around 2011¶
The practice of version-controlling shell configuration files (~/.bashrc, ~/.vimrc, etc.) in git "dotfile" repos exploded after GitHub user Zach Holman's talk "Dotfiles Are Meant to Be Forked" in 2011. Mathias Bynens' dotfiles repo (20,000+ stars) popularized macOS-focused configurations. Today, dotfile managers like GNU Stow, chezmoi, and yadm automate symlink management.
Fish shell proved that better defaults beat configurability¶
Fish (Friendly Interactive SHell, 2005, by Axel Liljencrantz) ships with syntax highlighting, auto-suggestions, and tab completion out of the box — no configuration needed. This "it just works" approach influenced every shell that followed. Fish proved that 90% of users want good defaults, not infinite customization. Its main drawback — POSIX incompatibility — remains the primary reason Bash and Zsh dominate.
Oh My Zsh has over 170,000 GitHub stars¶
Oh My Zsh, created by Robby Russell in 2009, is a framework for managing Zsh configuration with 300+ plugins and 150+ themes. Its GitHub star count makes it one of the most popular open-source projects of any category. The project's success proved massive demand for better shell UX and directly inspired Oh My Bash, Oh My Fish, and Prezto.
The clipboard integration problem was solved surprisingly late¶
Copying text between the terminal and system clipboard was frustrating for decades. tmux had its own clipboard, Vim had registers, and X11 had two clipboards (PRIMARY and CLIPBOARD). Tools like xclip, pbcopy, wl-copy, and OSC 52 escape sequences now bridge these, but a unified, cross-platform clipboard experience only became reliable around 2018-2020.
Terminal multiplexers enable the "persistent workspace" pattern¶
The workflow of SSH into a server, attach to tmux, and detach to reconnect later was not possible before multiplexers. GNU Screen (1987) introduced this, and tmux (2007) perfected it. This pattern is so fundamental that many SRE teams require all production work to happen inside tmux sessions, ensuring commands survive network disconnections.
Shell aliases and functions evolved into full plugin ecosystems¶
What started as simple alias ll='ls -la' lines in .bashrc evolved into sophisticated plugin managers. Zsh has antigen, zplug, zinit, and sheldon. These manage lazy-loading, compilation, and dependency resolution for shell plugins. A heavily-configured Zsh with 20+ plugins can take 500ms+ to start — leading to the counter-movement of minimal shell configs and Starship.
The "everything is a file" philosophy enables powerful piping¶
Modern CLI workflows exploit Unix's file abstraction: /dev/stdin, /dev/stdout, /dev/stderr, /dev/null, /proc/self/fd/N, and process substitution <() all treat diverse data sources as files. This lets tools that read files automatically work with pipes, network sockets, and device outputs. The fzf + ripgrep + bat pipeline works because each tool reads from stdin and writes to stdout.
Nushell reimagines the shell around structured data¶
Nushell (2019, by Jonathan Turner and Yehuda Katz) passes structured tables between commands instead of text strings. ls | where size > 1mb | sort-by modified works natively without grep or awk. This eliminates the fragile text parsing that has plagued shell scripts for 50 years. Nushell proves that the "text stream" model is a choice, not a law of nature.
The terminal is getting faster, not slower¶
Modern terminal emulators (Alacritty, Kitty, WezTerm, Ghostty) use GPU rendering and can display text faster than traditional terminals like GNOME Terminal or Terminal.app. Alacritty (2017, Rust + OpenGL) pioneered GPU-accelerated terminal rendering. Kitty (2017) added image display, ligature support, and a graphics protocol. These advances matter because tools like bat, delta, and rich TUI applications push more content to the terminal than ever.
The fzf + ripgrep + bat trinity is the modern power-user stack¶
The combination of fzf (fuzzy finding), ripgrep (fast search), and bat (syntax-highlighted preview) has become the standard CLI productivity stack. The canonical integration: rg --files | fzf --preview 'bat --color=always {}' provides instant fuzzy file finding with syntax-highlighted previews. This workflow is faster than any GUI file finder for experienced users.