Google is working hard on the third operating system after Android and Chrome OS. This is an open source real-time operating system called “Fuchsia”. The OS first appeared in August last year, but then it was just a command line. Now the mysterious project has a crazy new interface that we can take a look at.
Unlike Android and Chrome OS, Fuchsia is not based on Linux – it uses a new microkernel developed by Google called “Magenta”. With Fuchsia, Google would abandon not only the Linux kernel, but also the GPL: the operating system is licensed as a combination of BSD 3, MIT, and Apache 2.0. Abandoning Linux may cause some shock, but the Android ecosystem seems unwilling to keep up with previous versions of Linux. Even the Google Pixel is still stuck on the Linux 3.18 kernel, which was first released in late 2014.
Google’s documentation describes Magenta as aimed at “modern phones and modern personal computers with fast processors, non-trivial amount of RAM with arbitrary peripherals that perform open computing”. Google has not made any public official comments about why Fuchsia exists or what it is intended for, leaving us with only guesses. The cry “modern phone” certainly sounds like something that could eventually compete with Android, but at the moment the OS is so early that it’s hard to tell.
All this brings us to an interesting point right now: the Fuchsia interface is written using the Flutter SDK, which is cross-platform. This means that right now you can take chunks of Fuchsia and run them on your Android device. Fuchsia first went public in August 2016, but then its compilation gave you nothing but the command line. The Fuchsia System user interface called “Armadillo” is actually quite interesting right now.
You can download the source code and compile the Fuchsia System UI into an Android APK and install it on your Android device. It consists of a crazy reinterpretation of the home screen along with a keyboard, home button, and (sort of) window Manager. Nothing really “works” – it’s a set of placeholder interfaces that do nothing. The Fuchsia source also has a great readme file that describes what actually happens.
The main screen is a giant list with vertical scrolling. In the center, you will see a profile image (placeholder), date, city name, and battery icon. Above the “History” cards – mostly “Recent apps” – and below them is a scrollable list of offers, like a Google Now placeholder. Leave the main screen and you will see a Fuchsia-colored home button pop-up at the bottom of the screen, which is just a single white circle.
You can click on the Central profile image, and here is a menu that looks a bit like quick Android settings. The top row of icons shows the battery and connection. Below are sliders for adjusting the volume and brightness, as well as icons for flight mode, “Do not disturb” and auto-rotate. You can interact with buttons and sliders, but on Android they don’t actually do anything. Below are the “exit” and “more” buttons, which do not work at all.
Above the profile section is a stack of cards labeled “History”. The readme file describes stories as “a set of applications and modules that work together to achieve a user’s goal”. This seems pretty close to the recent list of apps, possibly (eventually) with some sort of grouping feature. Clicking on any map will load it as a full-screen interface, and since one of them is marked as “email”, it is quite obvious that these are apps. The list is sorted by “last opened”, so the most recently used maps will be located at the bottom of the list.
This list also includes some window management features. You can tap and drag the card for a long time, and if you place it on top of another app, it will trigger split-screen mode. A split-screen system seems really capable, and it probably needs to be changed a bit. You can make a 50/50 split vertically or horizontally. You can drag the third app and split 33/33/33 horizontally or vertically, or split 50/50 next to the app at full height, or display the tab bar for three full-screen interfaces. You can drag four apps and split 75/25 on one side of the screen and 25/75 on the other, and then you can keep dragging apps until everything fails. Go back to the list of stories and you will see that the split screen layout is also reflected on the card, which is nice.
The bottom “Google Now” panel starts with the layout of the search bar. When you click on it, a keyboard will appear, but it is not the Android system keyboard, but the Fuchsia user interface. It has a new dark theme, and things like long-tapping for characters or settings don’t work. Below, this is similar to Google Now, which has several cards with “offers”. They seem to be slightly different from the Google Now news, weather and calendar offerings, although the documents say: “Conceptually, a sentence is a representation of an action that a user can take to Supplement an existing story or start a new one.” This almost makes it look like an app launcher.
With any new project on Google, it’s hard to predict the scale of the project. Is this a “20 percent” project that will be forgotten in a year, or something more important? Fortunately, we have a direct statement from the Fuchsia developer about this. In Fuchsia’s publicly available IRC channel, Fuchsia developer Travis Geiselbrecht said in a chat that the OS “is not a toy, it’s not a 20% project, it’s not a dump of dead things that we don’t need anymore. ”
Android was conceived long before the iPhone. It started as a camera OS, then became a BlackBerry clone, and then was quickly retooled after the iPhone presentation. With Android, Google is still tied to the decisions it made years ago, even before it learned anything about managing the mobile OS that comes on billions of smartphones. The two biggest problems with Android:
- Getting OS updates in a third-party hardware ecosystem
- Lack of attention to the smooth operation of the user interface.
Although nothing was said about the upgrade plan, the OS’s dependence on the Dart programming language means that it is focused on high performance.
Fuchsia really seems like a project that asks the question: “How would we develop Android today if we could start over?» This is a completely new core developed by Google, which runs a completely new SDK developed by Google, which uses a completely new programming language developed by Google, and all this is designed to run the material Design interface from Google as quickly as possible. Google can get rid of Linux and the GPL, it can get rid of Java and the problems it caused with Oracle, and Google can actually isolate itself from all the upstream Android projects and move all the development inside the company. To do this on the Android scale today would be a large-scale project.
The most difficult thing may not even be developing an OS, but developing some kind of transition plan from Android, which has become the most popular operating system in the world. The” cross-platform ” nature of the Flutter SDK seems important for the transition plan. If Google could get developers to start writing apps on Flutter, it would create an app ecosystem running on iOS, Android, and eventually Fuchsia. Google has also shown that it can and wants to make Android Runtime work on non-Android platforms with Chrome OS, so if Google does decide to implement a transition plan, it might be able to migrate the entire Android stack to Fuchsia as a temporary application solution.
Back in August, when Fuchsia went public, Geiselbrecht told Fuchsia’s IRC channel: “the Magenta Project [started] about 6 months ago,” which should have happened sometime in February 2016. Android remained inside Google for about five years before it was launched on the real market. If Fuchsia goes the same way and everything goes well, perhaps we can expect a consumer product sometime around 2020. Again, this is Google, so it can all be undone before it ever sees the light of day. Fuchsia has a long way to go.