5 ms·
> they match, more or less, those of UNIX's philosophy 1. Good design is innovative UNIX innovated by simplifying Multics - throwing away
by musicale 2y ago
> they match, more or less, those of UNIX's philosophy
1. Good design is innovative
UNIX innovated by simplifying Multics -
throwing away ring security and PL/I's memory safety features.
Linux innovated by cloning UNIX, giving it away for free,
and avoiding the lawsuit that sidelined BSD.
2. Good design makes a product useful
Yet somehow people managed to use UNIX anyway.
3. Good design is aesthetic
UNIX threw away clear, long-form command forms and kept
short, cryptic abbreviations like "cat" (short for "felis cattus")
and "wc" (short for "toilet").
Its C library helpfully abbreviates "create" as "creat",
because vowels are expensive.
4. Good design makes a product understandable
See #3
5. Good design is unobtrusive
That's why UNIX/Linux enthusiasts spend so much time
configuring their systems rather than using them.
6. Good design is honest
The UNIX name indicates it is missing something
present in Multics. Similarly, "Linux" is the
gender-neutralized form of "Linus".
7. Good design is long-lasting
Like many stubborn diseases, UNIX has proven hard to eradicate.
8. Good design is thorough down to the last detail
UNIX/Linux enthusiasts love using those details
to try to figure out how to get Wi-Fi, Bluetooth,
and GPU support partially working on their laptops.
9. Good design is environmentally-friendly
Linux recycles most of UNIX's bad ideas, and many
of its users/apologists.
10. Good design is as little design as possible
Linux beats UNIX because it wasn't designed at all.
- grose 2y agoReads like it came straight out of the UNIX-HATERS Handbook, nice. (For those unfamiliar: https://web.mit.edu/~simsong/www/ugh.pdf https://web.mit.edu/~simsong/www/ugh.pdf)
- pjmlp 2y agoUNIX haters handbook exists, because many of us don't worship at the fate of UNIX church. Yes, it did some things right, but also did plenty of them bad, lets not worship it as the epitome of OS design, cloning it all the time without critical thinking. Alone the fact that its creators went on to design Plan 9, Inferno, Alef, Limbo and Go, shows even they moved on to better approaches.
- iforgotpassword 2y agoGranted, fortunately lots of that book is now obsolete and mostly just good for laughs about the bad old times. And most of the predictions it had about future innovation never turned out that way either.
- pjmlp 2y agoUnfortunately many of those critics are as up to date as when the book was originally published.
- lproven 2y ago> fortunately lots of that book is now obsolete I have read and re-read it. I would, coldly and seriously, say that significantly less than 50% of it is obsolete. Yes, some parts definitely are. Many of the specific technical details that are attacked are. But the architectural points, the design points, the usability issues -- those mostly remain entirely valid.
- iforgotpassword 2y agoThe usability issues are mostly "I'm used to X, so I don't like Y". I've started out on dos, then went from win3.11 to XP/7 and switched to Linux fully when 8 came out. They all suck in their own ways, but nowadays I just prefer Linux because it has become "it just works" for me. Mostly. Because while there is the occasional technical issue with some software or hardware, I personally just prefer the technical problems of Linux over the bullshit problems over on windows. Edge jumping in your face, the "office key", updates interrupting when you don't want them, ads in my start menu, telemetry, major UI changes between versions that seem half-baked and take a decade to be completed,...)
- tmcdos 2y agoI feel the same with Win7 - for me "it just works" and I don't want to upgrade for as long as possible. I even don't install updates - especially since several of them contain telemetry. I simply don't have the time to fight with Linux. There were other good OSes (e.g. BeOS or OS/2) which were simply killed instead of open-sourcing the code. Haiku seems to be the successor of BeOS but it has too few donations.
- mjcohen 2y agoI read UHH over 30 years ago and learned a lot about UNIX. Very useful.
- musicale 2y agoA classic that needs to be updated for the modern (hellish) macOS/Linux/WSL/BSD/Dockernetes era, but it is still (or should be) an inspiration to us all.
- ripped_britches 2y agoI don’t know enough about kernel development to agree or disagree but I am thoroughly entertained
- cjfd 2y agoAbbreviating create as 'creat' is a bit stupid but it is the kind of quirk that makes me feel at home. The opposite can be found here: https://devblogs.microsoft.com/scripting/weekend-scripter-use-powershell-to-find-longest-cmdlet-name/ https://devblogs.microsoft.com/scripting/weekend-scripter-us... . That is a world where well... I have switched jobs once specifically to get out of that world....
- yencabulator 2y agoUnconfirmed speculation: The linker at the time ignored letters past the first 6. The compiler prefixed the symbols with '_' to namespace them, to separate user code vs compiler internals. People started writing only the part that mattered. Since either short or long name worked, it wasn't a hard rule that everything had to be shortened, but that still tended to happen. https://news.ycombinator.com/item?id=34814268 https://news.ycombinator.com/item?id=34814268