#thompson
#RichardThompson 4/3/1949 #Birth English musician and songwriter
https://www.youtube.com/watch?v=HqViJyweNV0
Richard & Linda #Thompson - A #Heart Needs A #Home
US #Gaza doc tells how Israeli troops stripped, humiliated, tortured child doc colleague: Volunteer doctor Ben #Thompson tells horror he saw as #IOF soldiers #tortured doctor for days after he refused to leave sick children â then made him go naked to treat themâ
Untitled (Red Square/Black Square) 1994
#art #sculpture by Richard #Thompson https://richardthompsonart.com/
Elvis and a unicorn-riding alien are here...
#cartoon by Mike #Thompson https://comicvine.gamespot.com/northern-lightz-1/4000-898110/
#RichardThompson 4/3/1949 #Birth English musician and songwriter
https://www.youtube.com/watch?v=HqViJyweNV0
#Richard & #Linda #Thompson - A #Heart Needs A #Home
The Unix philosophy - simple and beautiful (so it "just works")
âThe Unix Philosophy in One Lessonâ
âAll the philosophy really boils down to one iron law, the hallowed âKISS principleâ of master engineers everywhere:â
https://homepage.cs.uri.edu/~thenry/resources/unix_art/ch01s07.html
src: https://homepage.cs.uri.edu/~thenry/resources/unix_art/ch01s07.html
âKeep It Simple, Stupidâ or âKeep It Super Simpleâ (less offensive)
The Unix philosophy emphasizes building simple, short, clear, modular, and extensible code that can be easily maintained and repurposed by developers other than its creators.
This is what allows a system to âboomâ âit just workâ as Mr Jobs puts it.
The Unix philosophy favors composability as opposed to monolithic design.
Later summarized by Peter H. Salus in A Quarter-Century of Unix (1994):[1] This is the Unix philosophy:
- Write programs that do one thing and do it well.
- Write programs to work together.
- Write programs to handle text streams, because that is a universal interface.
- there is more to learn from the âElders of UNIXâ:
would add:
- Keep it as simple as possible and as complex as ABSOLUTELY necessary (more moving parts = more problems)
- simplify & agree on common standards & automate:
- design standards together âopen standardsâ, so they can take care of (almost) all required use cases
- software minimalism
- only run as little software on a system (even if it has plenty of resources) as absolutely necessary
- in GNU Linux Debian that would be:
- 1) âstart from scratchâ with the net install minimal iso (working LAN internet connection required) - if the user knows there are âOpen Sourceâ drivers for (networking, wifi) hardware: go with âFreeâ version https://www.debian.org/CD/netinst/ - otherwise go with the âCloused Sourceâ blobs of evil âNon-Freeâ version: https://cdimage.debian.org/cdimage/unofficial/non-free/cd-including-firmware/current/amd64/iso-cd/
- 2) then from there only install what the system absolutely needs
- in GNU Linux Debian that would be:
- for example: donât run full blown desktop guis on servers that do not need them
- a lot of admins rely on the âhtml guiâ webmin, and virtualmin
- if that helps to keep a system in well working secure shape, thatâs fine but⌠it is not optimal for two reasons: - less software = always better - at least enhance security with a ssh-tunnel, meaning the port to access web-console (80 or 443) should only be accessible by localhost via ssh-tunnel (if there are zero-day exploits against latest OpenSSH (aka OpenSSH hacked) itâs âall internet offline doomsdayâ anyway⌠so this very very critical piece of software needs relentless testing and fast updates/patching) - gui-admins using this software, know âthe gui buttonsâ but not the bash commands - thus: the gui-admins do not really know, what the software is actually doing in the background when they click a button, thus they might be unable to debug the problem, if things fail (that is where this âmonitor all logsâ bash script comes in handy)
- a lot of admins rely on the âhtml guiâ webmin, and virtualmin
- only run as little software on a system (even if it has plenty of resources) as absolutely necessary
genius: âthe genius is in control of chaosâ (maybe true for a while, but long term itâs deadly wrong)
- A true genius keeps everything simple, so that there is no chaos (âmessâ) in the first place and almost everyone immediately can understand the program and fix a bug or develop it further (while always keeping the k.i.s.s principles in mind đ
standards:
- to standardize is a good thing, imagine a world, where every electronic device would have itâs own power plug⌠nobody could plugin anywhere without adapters⌠adding adapters increases complexity (fire hazard?) and decreasing simplicity
- https://dwaves.de/2019/02/26/usb-cable-salad-of-madness-usb-3-0-and-wifi-interference-micro-usb-usb-c-mess-has-finally-arrived/
- what existing standards are there?
- can they be adapted? (try to identify & contact the creators)
- instead of everyone making a new standard -> mess-of-standards (maximum incompatibility to each other)
- is it really necessary to create a new standard? (e.g. one fine day, someone might decide to use /config for config files and not /etc, because what does etc stand for? (it stands for âall other files that do not fall in the /bin /dev /lib /usr /sbin⌠categoryâ it stands for âet ceteraâ (lat. âthe restâ))
- it evolved into âthe directory where config files are storedâ and everyone knows that, so it has âgrownâ into a standard
- it is agreed, that things should be called what they are and the naming of this directory is just bad (not self speaking)
- but changing that standard would mess up this âgrown-into-standardâ and get a lot of users and programs confused⌠worth it?
- imho THE worst idea is to add another directory and place another network config file, so that there are 2, 3, 4, 5 different places to configure network = complete mess
Malcolm Douglas McIlroy: âEverything was small⌠and my heart sinks for Linux when I see the size of it. [âŚ]
The manual page, which really used to be a manual page, is now a small volume, with a thousand optionsâŚ
We used to sit around in the Unix Room saying, âWhat can we throw out? Why is there this option?â
Itâs often because there is some deficiency in the basic design â you didnât really hit the right design point.
Instead of adding an option, think about what was forcing you to add that option.â (src: https://en.wikiquote.org/wiki/Doug_McIlroy)
https://archive.org/details/DougMcIlroy_AncestryOfLinux_DLSLUG
Ken Thompson and Dennis Ritchie, key proponents of the Unix philosophy.
âwe are trying to make computing as simple as possible â in the late 1960s Dennis Richie and I realized that the then current Operating System where much way too complex â we attempted to reverse this trend by building a small simple operating system on a minicomputerâ (Ken Thompson)
âWhat we wanted to preserve was not just a good programming environment in which to do programming â but a system around which a community could form â fellowship â we knew from experience that the essence of communal computing â as supplied by remote access time sharing systems â is not just to type programs into a terminal instead of a key-punch â but to encourage close communicationâ (Dennis M. Ritchie)
https://homepage.cs.uri.edu/~thenry/resources/unix_art/ch01s06.html
https://en.wikipedia.org/wiki/Unix_philosophy
âAs a programmer, it is your job to put yourself out of business. What you do today can be automated tomorrow.â
â Doug McIlroy
Damn this guy is a philosopher.
Working in IT seems to be just like capitalism itself: working to make oneâs job obsolete. âgreatâ outlook.
There need to be alternative lifestyles that make sense and are sustainable.
https://ytpak.net/watch?v=JoVQTPbD6UY
[video width=â586âł height=â436âł mp4=âhttps://dwaves.de/wp-content/uploads/2017/05/Ken-Thompson-and-Dennis-Ritchie-Explain-UNIX-Bell-Labs.mp4âł\]\[/video\]
what happens if companies can not agree on standards:
probably the best example:
- Apple and the âone button vs two button mouseâ
âSteven P. Jobs, once said that one was the obvious answer because that made it impossible to push the wrong buttonâ (src)
- turns out: two button mouses are âeasy enoughâ for users that used them for more than 3 days straight
- by now, approx 99% of Appleâs one-button mouses are in the (recycling?)trash and got replaced by at least two-button mouses (what a waste of resources, right?)
- GNU Linux users would want a 3 button mouse (the middle button is for pasting stuff)
-
- probably: so Apple can sell more power adapters
- turns out: shipping iphones without adapters while charging the same price makes even more money
finally in 2020 (after aprox. 10 years?) they came along and adopted USB-C Macbook ARM M1 CPU
- they are still refusing to make the iPhone charge via USB-C - [![https://dissectiontable.com/best-chargers-iphone-12-pro-mini-max/](https://dissectiontable.com/wp-content/uploads/2020/10/Best-chargers-for-iPhone-12-iphone-12-Pro-12-Mini-iphone-12-pro-max.jpg)](https://dissectiontable.com/best-chargers-iphone-12-pro-mini-max/) > <https://dissectiontable.com/best-chargers-iphone-12-pro-mini-max/> - so the user STILL in 2022 needs a special Apple cable to plug into âeveryoneâs elseâsâ chargers - it is⌠- 1) truly ridiculous - 2) wasting resources (in 2022 the electronic trash recycling quotas are still pretty bad, only [13% to 35%](https://duckduckgo.com/?t=ffab&q=how+much+of+electronic+waste+get%27s+recycled) of disposed electronics becomes new electronics) - 3) #wtf Apple seriously?
#linux #gnu #gnulinux #opensource #administration #sysops #unix #philosophy #m #mcilroy #philosophie #torvalds #itsec #cybersecurity #security #kernel #thompson #ritchie #apple #jobs #standards #standard #gnu-linux #simplify #open #source #openstandards
Originally posted at: https://dwaves.de/2017/05/02/the-unix-philosophy-simple-and-beautiful-so-it-just-works/