Rob Pike, a Bell Labs and Go veteran, hosts talks and papers on operating systems, Plan 9, Inferno, and Unix.
HN links it mainly for his "Systems Software Research is Irrelevant" talk, which commenters cite as still relevant about stagnation in operating systems.
>The future is already here — it's just not very evenly distributed.
Nobody is denying it, indeed we see many related development.
However, it's not only about "the lost future that never comes", I think it's also due to the people being increasingly alienated about the current state of computing. Primarily, it's about the lost mentality of the future.
Cyberpunk promised a future where computing is the disruptive technology. Since 2006, the ever-increasing clock speed came to a halt. Since 2013, the general performance of Intel processors remained constant. Selling of PCs keeps declining. No major breakthrough in practical operating systems are made beyond Unix (http://herpolhode.com/rob/utah2000.pdf).
Cyberpunk promised a future where megacorps and governments being increasingly oppressive to the population with technology, it has occurred as predicted. Cyberpunk also promised the "cyberspace" is going to be the electronic frontier where technologists reclaimed liberty... Today, the damn web browser that runs all the craps written in Electron and JavaScript is hardly the "frontier", neither Facebook, Twitter and the endless timeline of buzz, which constitute 90% of the Internet activities count. Also, from 2000-2013, decentralization was killed, not built. Move importantly, today, we don’t even know how to waste time on the Internet anymore (https://news.ycombinator.com/item?id=17068138). Though, It, still, has arguably occurred to some extents too, but progressed…
(In my opinion) Here's a bunch of reasons why Plan9 isn't popular, and then a reason or two why something like it likely will be before too long:
The first obvious answer (also mentioned in other comments) is because "Systems Software Research is Irrelevant". See Rob Pike's paper by that name: http://herpolhode.com/rob/utah2000.pdf
To the reasons Pike offers there, I'll add:
1. The companies that owned the software had poor strategies for encouraging widespread adoption, if that was even ever their goal.
2. The first dot-com boom ca 2000 greatly expanded the IT / programmer workforce and (I claim) significantly dumbed it down. The advantages of a new operating system lack economic impact until a huge number of programmers are trained to use those advantages. We have huge sunk costs invested in maintaining a huge supply of mostly weakly skilled programmers and admins, a sort unlikely to adapt to and adopt a new OS.
3. In a related way, the sectors that could in principle drive something like Plan 9 adoption are heavily invested, by now, in massive amounts of bloatware that, dysfunctional as it is, is both critical and non-portable.
4. Modern hardware is fast enough that fairly high level programming languages and environments tend to dominate. These often include a "least common denominator" view OS capabilities so that programs port easily among Windows, Linux, Unix, MacOS, etc. This hurts demand for OS features other than the "least common…
I do think there is a big difference in academic computer science now and then. Rob Pike has written about it from an operating systems perspective [1], and Richard Gabriel from a programming language perspective [2]. It seems that until the early 1990s, there were lots of projects focused on building "systems", i.e. big pieces of software which are in themselves practically useful; then there is a sharp shift and academic research focus on "theory" (in PL research, e.g. a type safety proof for small core calculi, or a particular algorithm for program analysis).
People have always pursued "small" ideas. But I think the fact that we stopped writing "big" systems is a real change. (I guess the reason is that off-the-shelf operating systems and programming languages gradually got better, until it became impossible to "compete" with them. C.f. the Lua langauge, which got written basically because "western" langauges were not easily available at the time). My impression is that there is a lot less diversity of ideas now than there used to be, because everyone is incrementally improving the same set of OSs/langauges.
[1] http://herpolhode.com/rob/utah2000.pdf
[2] https://www.dreamsongs.com/Files/Incommensurability.pdf (see the section starting on page 10)
> The success of browsers is an indictment of the entire field of operating systems research.
Rob Pike wrote in the year 2000 that systems software research was irrelevant (http://herpolhode.com/rob/utah2000.pdf), and it seems to me that not much has changed since then. How many ideas from the last few decades of operating systems research have actually been put into practice?
The real problem is more fundamental: people want their software to keep working. As Rob Pike put it in the talk linked above, "to be a viable computer system, one must honor a huge list of large, and often changing, standards: TCP/IP, HTTP, HTML, XML, CORBA, Unicode, POSIX, NFS, SMB, MIME, POP, IMAP, X, ... With so much externally imposed structure, there’s little slop left for novelty."
For example, I'm sure some software out there is using the OpenGL API in a fundamentally insecure way. Changing the API to be safe would break this software. And maybe that would be a good tradeoff, if reworking OpenGL were the only thing you needed to do to safely run untrusted code. But almost every part of the system would have to change. You'd be left with a system which breaks or degrades pretty much everything you try to run on it.
This reminds of Robert Pike's "Systems Research is Irrelevant" speech [1]. Now, 20 years after his speech, we are still stuck with the same notions (such as everything being a string). It's not that there are not plenty of alternatives around, however, expectations are so high that it's almost impossible to make a new computer system economically viable. On the other hand, the hacker and maker scene is very active, some of them building operating systems and hardware such as tiny Lisp-based machines [2] and OSes [3]. (My only gripe is that most of the new "avant-garde" systems are still text/file-based.)
I'd love to see a next wave in personal computing, starting with a clean slate, building on the research, insights and learning from the mistakes that have been made. I have no doubt that it will happen, the question is only when.
As for interoperability: Even on the same platform there are countless problems getting software to talk to each other, so I don't think that a new system will make the situation any worse.
[1] http://www.herpolhode.com/rob/utah2000.pdf
[2] https://www.tindie.com/products/lutherjohnson/makerlisp-ez80-lisp-cpm-computer/
[3] https://mezzanos.herokuapp.com/
What Rob Pike is refering to is of course Plan 9 and its derivatives (say Inferno). Whether you want to consider them Unix-likes or not is your choice (many HNers will say it's more Unix than Unix).
If you look for desktop alternatives to Unix, OSes to look at are BeOS (an open source clone is developed under the name HaikuOS) and the Windows NT kernel (don't hurt me: the Windows NT kernel is IMHO far more elegant than, say Linux or Mach. What is crappy is especially the WinAPI; please look deep below the surface: Here Windows gets nice).
The reason why you won't find many desktop/server alternatives to Unix can be read here: http://herpolhode.com/rob/utah2000.pdf
Thus lots of OS reserach is either focused on embedded stuff or virtualization instead of desktop or server.
Accepting this, especially have a look at the L4 kernel family (a family of very small and fast microkernels). If you like highly secure designs, you'll probably like seL4, the first formally verfied kernel. Also QNX is worth a look (QNX is Unix, accepted; nevertheless a very elegant kernel design).