Plan 9: An exercise in futility
It is my right to exercise my futility wherever, whenever, and with whoever I please
Some ideas about Plan 9:
It's like the uncanny valley of UNIX
Cool, but useless
Can you sum up plan 9 in layman's terms? It does everything Unix does only less reliably - Ken Thompson
If you cannot imagine a use for a computer that does not involve a web browser, Plan 9 may not be for you - 9front FQA
#d/0:28: null list in concatenation
History and description
The boys at bell labs decide UNIX wasn't good enough so they decided to build something better: a distributed multiuser operating system composed of many machines. Many of the same ideas behind UNIX were pushed to absurd extremes. The idea that "everything is a file" is made blatantly apparent to everyone and sometimes, in my opinion, can feel 'overly-abstracted'. Additionally, the concept of private namespaces makes the concept of virtual filesystems seem like 'baby's first filesystem abstraction'.
Just like UNIX, 9 started as a research operating system. Both are enjoyed by hobbyists, both are interesting ways of using a computer, both have a lot of fun in store. But the systems do diverge in one major aspect: UNIX is mainstream and 9 is still a research operating system. Plan 9 is currently distributed under the MIT license.
"What is plan 9?", Taken directly from intro(1):
Plan 9 is a distributed computing environment assembled from separate machines acting as terminals, CPU servers, and file servers. A user works at a terminal, running a window system on a raster display. Some windows are connected to CPU servers; the intent is that heavy computing should be done in those windows but it is also possible to compute on the terminal. A separate file server provides file storage for terminals and CPU servers alike.
In practice, modern 9 users just run all of these services on a single machine because maintaining many machines to achieve a single usable 'operating system' is unnecessary; the 9 user finds himself scared and alone without enough users (1 is rarely enough) to justify building a distributed environment.
Use cases
Intended: distributed multiuser network (ie not mainframe), later embedded since UNIX was too bad to be stopped
Actual: Acting like a UNIX hipster, pretending that 9 is anything other than vaporware, imagining that you are gaining social credit by posting screenshots of abandonware on internet forums. See also: Operating System Tourism
9 in the wild
Unicode is now a plague
rfork
9p
leveraged by microsoft to discourage end users from actually running GNU+Linux as St Ignucius intended
QEMU's VirtFS
various window managers for UNIX, written by people who like the ideas behind 9 but not enough to actually run 9
"cool idea, I'm adding it to Linux"
private namespaces
union directories
see: docker
Design
The goal of 9 was to build a distributed operating system that expands upon Unixy ideas, not to build something that's backwards compatible. "We want to improve UNIX" is mutually exclusive to "we want to port UNIX to this wacky new kernel". UNIX programs (and behemoths like FireFox) are difficult^impossible to port to 9 because of this design decision.
Distributed operating systems
Since 9 was design