Command Substitution vs Process Substitution
$(command) captures text; <(command) exposes a live stream as a path-like argument. Buffering, exit-status visibility, and portability differ sharply.
Conceptual, architectural explainers - how a subsystem actually works underneath.
$(command) captures text; <(command) exposes a live stream as a path-like argument. Buffering, exit-status visibility, and portability differ sharply.
Shell variables and the process environment overlap but differ. Export, fork/exec, subshells, pipelines, sourcing, and Shellshock define where changes survive.
Interactive Bash editing is a library-driven state machine: keymaps, completion hooks, history, and terminal escapes all meet inside GNU Readline.
Reliable shell cleanup requires understanding signals, traps, process groups, and the important difference between a normal exit and an uncatchable termination.
PTYs and a persistent server process explain how tmux and screen survive a dropped SSH connection, not just several shells in one window.
Reconstruct the October 29, 1969 UCLA-to-SRI login from the IMP log, and separate ARPANET's first host message from later Internet myths.
Follow C from Bell Labs and K&R practice through ANSI X3J11, ISO C and C23, including what portability guarantees-and deliberately leaves open.
Trace the NIC host table's scaling failure, Mockapetris's delegated DNS design, the staged 1983–85 migration, caching tradeoffs and later DNSSEC.
How Ethernet moved from a 2.94-megabit coax experiment to switched full-duplex links without depending on collisions forever.
How GNU's freedom-centered movement and the 1998 open-source campaign came to share much software while making different arguments.