April 15, 2022

Software Minimalism

More minimal software has many advantages. It's easier to understand how it works and to debug. If you like knowing all the ins and outs of a system, it's easier and more enjoyable to work with shorter, simpler code.

Would you rather work on an over-engineered and complicated vehicle, or a simple and beautifully-made vehicle?

Compare and contrast

This is the code for the cat(1) utility, one of the most basic common programs on Unix-like systems:

GNU/Linux: https://raw.githubusercontent.com/coreutils/coreutils/master/src/cat.c

OpenBSD: https://raw.githubusercontent.com/openbsd/src/master/bin/cat/cat.c

Plan9front: https://git.9front.org/plan9front/plan9front/HEAD/sys/src/cmd/cat.c/raw