3 ms·
I believe understand the vision that the author is trying to paint. I don't think he's alone, but the reality is that building a full OS is a pretty massive und
by Xorlev 9y ago
I believe understand the vision that the author is trying to paint. I don't think he's alone, but the reality is that building a full OS is a pretty massive undertaking. Additionally, his idea of simplicity may be complexity for others. I want to explore this a bit from a point of optimism, because it's very very easy to find flaws in a manifesto that desires to redesign an operating system.
There's a lot of interesting experimentation in OS-land. BeOS (and it's successor, Haiku [1]) are called out explicitly by the author. BeOS/Haiku use this idea of apps as modules to expose functionality across a message bus. Redox OS (A Rust OS), is built on the microkernel concept. These are both kind of on the fringe at the moment, so let me bring up one more platform that many of us use daily: the modern web browser.
Chrome (and Firefox, ChromeOS, etc.) actually do take many of these concepts to heart. Now, I know more about Chrome than Firefox or ChromeOS, so let me set those aside for a moment.
- "Everything done via a message bus." This is Chrome extensions in a nutshell.
- "Dockable tabs in any window."
- "A CLI with structured data." Sorta Chrome debugger+JS. With some effort, this could be a lot more powerful. The author's desire to pipe a video call to an analysis service is a fairly tough requirement here and obviously wouldn't fly in Chrome either, but that isn't to say that it'd be impossible.
- "A built-in document database." (IndexedDB)
- "Working sets." Chrome profiles -- try them!
- "Apps become Modules." This is more of a miss, but if you squint enough through a powerful enough lens, the APIs exposed by Chrome to extensions/webpages are a lot like this. That said, given that everything on Chrome is more site-centric vs. computer-centric, things are namespaced vs. Spotify being able to execute arbitrary queries for MP3s.
Now, I'm not going to say that Chrome is IdealOS. There is much from that vision that's missing. And I'd also say that webapps just aren't always an acceptable substitute for native applications. Through massive wastes of computing power, we are getting closer (see: Slack, Atom, all things Electron). We aren't there yet. I'll always take a native app if it's written decently.
It seems to me like in general much of this vision is being expressed through disparate efforts, but only a few are tackling the idea of replacing the full OS. Chrome seems best poised in many ways because it's already on your existing OS. Yes, it's having to use the underlying OS' APIs and such, but you can argue it's just one more layer. ChromeOS seems to do a pretty good job of eliminating even that.
In general, I'm excited to see discussion on operating systems. The OSes used by the general public are already here: Android and iOS. It's up to us to build a better future for those of us using workstations
Disclaimer: I do not work on Chrome, but do work for its parent organization. My views in no way reflect that of my employer's.
[1] https://en.wikipedia.org/wiki/Haiku_(operating_system) https://en.wikipedia.org/wiki/Haiku_(operating_system)
[2] https://en.wikipedia.org/wiki/Redox_(operating_system) https://en.wikipedia.org/wiki/Redox_(operating_system)