







Ever wondered why programming in Bash is so difficult? Bash employs the same constructs as traditional programming languages; however, under the hood, the logic is rather different.
You don't know Bash: An introduction to Bash arrays
Enter the weird, wondrous world of Bash arrays.

Es: A shell with higher-order functions
In the fall of 1990, one of us (Rakitzis) re-implemented the Plan 9 command interpreter, rc, for use as a UNIX shell. Experience with that shell led us to wonder whether a more general approach to the design of shells was possible, and this paper describes the result of that experimentation. We applied concepts from modern functional programming languages, such as Scheme and ML, to shells, which typically are more concerned with UNIX features than language design. Our shell is both simple and highly programmable. By exposing many of the internals and adopting constructs from functional programming languages, we have created a shell which supports new paradigms for programmers.
Its Time for a New Programming Language
Today, when compared to any other point in programming history, we find ourselves spoiled for choice when it comes to programming…

Rethinking the Unix Philosophy: Evolution or Collapse?
Explore the evolution and challenges of the Unix Philosophy in modern software development. Learn its relevance and implications in today's tech landscape.

A break from programming languages
This is a blog post I have been considering writing for a long time.
Arturo programming language
Arturo programming language: Simple, expressive & portable programming language for efficient scripting
Crafting Interpreters
Despite using them every day, most software engineers know little about how programming languages are designed and implemented. For many, their only experience with that corner of computer science was a terrifying "compilers" class that they suffered through in undergrad and tried to blot from th...

No, Really, Bash Is Not Enough: Why Large-Scale CI Needs an Orchestrator - Ian Duncan
A deeper dive into why shell scripts cannot replace a proper CI control plane, drawn from years of building and operating CI systems at scale.
Why scientists are turning to Rust
Despite having a steep learning curve, the programming language offers speed and safety.

Nobody Cracks Open a Programming Book Anymore · unix.foo
A sad look at the state of modern programming books.
Elements of Programming
After ten years in print, our publisher decided against further printings and reverted the rights to us. Elements of Programming is now available in two forms: a free PDF and a no-markup paperback.
The Rust Platform · Aaron Turon
A programming language is much more than its compiler and standard library. It’s a community. Tools. Documentation. An ecosystem. All of these elements affect how a language feels, its productivity, and its applicability.
Basics of the Unix Philosophy
The ‘Unix philosophy’ originated with Ken Thompson's early meditations on how to design a small but capable operating system with a clean service interface. It grew as the Unix culture learned things about how to get maximum leverage out of Thompson's design. It absorbed lessons from many sources along the way.
How To Think Like A Programmer
Unix system programming in OCaml
Translation by Daniel C. Bünzli, Eric Cooper, Eliot Handelman, Priya Hattiangdi, Thad Meyer, Prashanth Mundkur, Richard Paradies, Till Varoquaux, Mark Wong-VanHaren