lucke "possums considered harmful"

Software

About six decades ago, some schmuck figured out how to talk to rocks1 and now we all have to deal with the consequences.

I appreciate simplicity, but I’m not a “minimalist”. I believe in keeping code simple and small while actually solving problems for the end user in a meaningful way.

The greatest enemies to good technology are egocentrism, elitism, and rampant complexity.

“An idiot admires complexity, a genius admires simplicity. A physicist tries to make it simple. Anyway, an idiot; anything the more complicated it is, the more he will admire it. If you make something so clusterfucked he can’t understand it, he’s gonna think you’re a god ‘cause you made it so complicated nobody can understand it. That’s how they write journals… in academic journals. They try to make it so complicated people think you’re a genius.”

−Terry Davis2

“Noise comes with sophistication.”

− Rob Pike3

References

  1. Invention of the integrated circuit, Wikipedia
  2. Terry Davis' TempleOS Brutal Take Down (sic) of Linus Torvalds, Terry Davis Old Archive on YouTube
  3. Google Executive frustrated by Java, C++ Complexity, New York Times

“considered harmful”

Some people pride themselves in their disagreeability. I’m not into that kind of thing, but I have no problem getting preachy.

I have personal objections to a lot of common software applications (as in programs but also online services and whole languages). I would like to promote (subjectively) better alternatives to such applications. These are my personal recommendations, and they may not be the best alternatives for your use case. YMMV

instead of consider
arch linux alpine, gentoo, void linux, dérive
fedora silverblue, ubuntu, pop!_os fedora workstation, linux mint, devuan
omarchy just buy a mac
hyprland mangowc, wayfire, niri
fish mksh
bluesky, threads, twitter the fediverse, rss/atom, going outside
Brave, Opera GX Zen Browser, Floorp, or just plain old Firefox
bootstrap, PureCSS, WordPress, Jekyll min, crew, housecat, werc
LaTeX groff, Plan 9's troff, Neatroff, or typst
discord, root, stoat fluxer, or a normal messenger like Signal or Telegram
Searx/SearXNG 4get, omnisearch
cursor, visual studio code, neovim vim, emacs, micro, zed
cmake, meson, ninja mate.h, muon, samurai, wait... why not just a Makefile?
python sh/sed/awk, or Go
coc.nvim ale
snap flatpak
AppImages AppBundles, static binaries, or just plain old tarballs
substack, medium going outside
yaml, ini, XML json, toml

some technologies I find so unpleasant that I’m not sure they even have a meaningful niche:

if this sounds incredibly presumptuous of me, please message me and help me out, because I’m lost.

goto

I am fond of goto in the C programming language. I think most developers fear it irrationally

“I think goto’s are fine” - Linus Torvalds

See also: The case for goto by Srcerer on YouTube

suckless

“this suckless approach of obsessing over "bloat” and ESPECIALLY trying to quantify it is just turbonerdery" - message found in a dump of logs from #cat-v

“minimalism is a scam by big small to sell you more less” - Gunshy

suckless badly imitates pikestyle and other styling advice, so much of their code is much harder to read than it should be.

suckless is right about systemd.

some several years ago they were involved in some weird right-wing crap. one of them incoherently ranted about “cultural marxism” when questioned about it.

rust

Credit: analognowhere

Like any project worth its salt, Rust’s community is full of egocentric people. To the Archetypical Rust Programmer, other languages are only obstacles to overcome. This fictional insane programmer also conveniently ignores that Rust entirely depends on a backend written in C++.

neovim

Stop calling it vim! They are NOT the same thing!

X11, Wayland

Rob Pike was right.

tung tung sahur ecks da everything app xD

X.org is elderly and morbidly obese. The solution? Wayland, I guess.

The Good

The Bad

The Ugly

see: wayland.xml, How does wayland work?

Wayland could be better than X11 in every way, but this is the real world. Stability is on Wayland is a mixed bag, and the bugs I experience with it remind me of when I used Linux as a teenager. Much of the ecosystem in Wayland is simply better than X11’s (all X terminal emulators are terrible), but a lot of it is still beta-quality crap. “Legacy” programs, i.e. the programs everyone still runs daily, are especially not consistent.

I would love to see a Wayland compositor that uses a 9p filesystem like wmii does.

X11 sucks!

I have never seen anything fill up a vacuum so fast and still suck. – Rob Pike, on X. Steve Jobs said two years ago that X is brain-damaged and it will be gone in two years. He was half right. – Dennis Ritchie Dennis Ritchie is twice as bright as Steve Jobs, and only half wrong. – Jim Gettys

X was never a good protocol: The UNIX world bet everything on how desktop graphics would work in the future, and they lost it. We still suffer the consequences many decades later. It’s time to stop.

Recommended Reading

sudo

OBEY SUDO! sudo make me a sandwich

sudo is awful big for what most people use it for. apparently it has some advanced features that some administrators are real thankful for, but the typical user will never know.

did you know that the sudo project’s mascot is a sandwich?

sudo mascot

/etc/sudoers is way harder to read than anything should ever be, especially given its importance to big vital infrastructure. this is such a problem that they scream at you not to edit sudo’s configuration directly, but instead through visudo so nothing will save if there are errors.

most people would do just fine without sudo and with something simpler and easier to use like doas from OpenBSD.

a sudoers file can be hundreds of lines long on a fresh install of Ubuntu. this, however, is my entire OpenDoas /etc/doas.conf file:

permit nopass :wheel

…not only is this easier to read than

%wheel ALL=(ALL) NOPASSWD: ALL

…but the entirety of the OpenDoas config is one line on my machine, whereas this would be one among tens or hundreds of lines in sudo.