"What UNIX Cost Us" - Benno Rice (LCA 2020)
"What UNIX Cost Us" - Benno Rice (LCA 2020) on HackerTube: recommended by 3 Hacker News commenters across 3 separate months, 2022–2025.
Benno Rice's linux.conf.au 2020 talk asks whether UNIX was the best design we could have had. He looks at what alternatives existed, what was gained and lost, and what could be re-learned, including the limits of treating everything as a file.
What HN commenters said
6 Hacker News comments link this video. Each one links back to its thread.
favoritedMar 2025Strongly recommends
> for instance, Linux handles network socket, special files (like /proc/cpuinfo) or even USB devices as files. This is a powerful idea that can make easy to write or use programs for linux since we can rely in a set of well known operations from this abstraction called file. Benno Rice gave a fantastic talk a few years ago called "What UNIX Cost Us," which he starts off by showing how to write some USB device code in macOS, Windows, and Linux. It only takes a few minutes to demonstrate how pretending that everything is a file can be a pretty poor abstraction, and result in far more confusing code, which is why everyone ends up using libusb instead of sysfs. ▶ this video
in “Exploring Polymorphism in C: Lessons from Linux and FFmpeg's Code Design (2019)” · View on HN
pxcAug 2024Strongly recommends
I'll second this recommendation! Benno Rice is an insightful, energetic, witty, and just plain enjoyable tech speaker. 'What UNIX Cost Us'[1] is another favorite of mine that the audience on this post might enjoy: ▶ this video
in “Systemd, 10 years later: a historical and technical retrospective (2020)” · View on HN
sphDec 2023Recommends
Not the author but I recommend: "What UNIX cost us" by Benno Rice: ▶ this video In fact, this video argues that file descriptors are not as good as the author claims in their opening paragraph. They are another runaway idiosyncrasy borne out of the "everything is a file (but not really)" philosophy that underpins Linux.
in “Reforming Unix” · View on HN
throwaway1194Jul 2024Cites it
> I get that in abstract improvements "could" trickle down from that but once again without any performance benchmarks that is the definition of speculation. Fair enough, I am not sure whether CPU schedulers are shared across architectures, I am also not aware of any recent benchmarks other than: [link] Where I was going with my original statement/post is that I wouldn't be surprised to see Linux doing better in some benchmarks due to improvements in the kernel, there has been many recent developments such as io_uring[0], MGLRU, etc. that could make a difference compared to other systems. [0] ▶ this video
in “Ask HN: Performance of Apple Sillicon vs. ThinkPads (Or Other Linux Laptops)” · View on HN
DonHopkinsJan 2024Cites it
Even PowerShell's flawed and limited execution definitively proves how terribly misguided and morally bankrupt the pin-headed one-dimensional "everything is a file" Unix philosophy is, especially with its the ridiculously hard-to-parse ad-hoc non-standard mixed-bag syntax of /proc and /etc files, which would have been much better simply using xml or json, yet which don't even come close to achieving that low bar of machine readability and ease of scripting. If everything is a file, then why the fuck is the insufferable abomination of ioctl so crucial to haphazardly papier-mâché and duct tape over all the uncanny gaps and gaping cracks? Yet another strike against the mindless cargo cult nonsense and unquestioning sycophantic hero worship of TAOUP. [link] 13 The File System Sure It Corrupts Your Files, But Look How Fast It Is! Pretty daring of you to be storing important files on a Unix system. —Robert E. Seastrom The traditional Unix file system is a grotesque hack that, over the years, has been enshrined as a “standard” by virtue of its widespread use. Indeed, after years of indoctrination and brainwashing, people now accept Unix’s flaws as desired features. It’s like a cancer victim’s immune system enshrining the carcinoma cell as ideal because the body is so good at making them. Way back in the chapter “Welcome, New User” we started a list of what’s wrong with the Unix file systems. For users, we wrote, the the most obvious failing is that the file systems don’t have versio
in “Everything Is a File” · View on HN
ddulaneyDec 2022Cites it
Eh, having worked with both systems, I'd say they're roughly equally impenetrable. For sure, the registry sucks. But at least it's uniform and scriptable. Once you know what needs to be changed, you can write a .reg file and be reasonably confident it will at least change the registry in a valid way. On the other hand, if the solution to a problem on Linux is to change some dotfile controlling some daemon, reliably scripting it can be difficult to impossible. Did the distro put the config file somewhere weird? Is awk good enough here? What if the key I'm looking to update is found in a comment, and what is the commenting structure for this file anyway? What if the daemon rewrites its config file on exit [0]? Or has a config file with an extremely complex format [1]? Or I need to poke several /sys files in a particular order [2]? Both systems are hard to reason about, especially if you don't know them. But Linux isn't easy to approach for the first time, and there are advantages to the way Windows does things. [0]: [link] [1]: [link] [2]: ▶ this video
in “A Linux Evening” · View on HN