
Google’s Fuchsia OS Confirmed to Have Android App Support via Android Runtime - AlexeyBrin
https://9to5google.com/2019/01/02/android-runtime-app-support-fuchsia/?xyz
======
skybrian
It's interesting how the trend in newer OSes seems to be towards client apps
running in some sort of VM. Windows runs Linux. Some Chromebooks run both
Linux and Android.

I wonder if we'll get to the point where hardly anything is a native app and
the concept doesn't matter much anymore? The host OS just exists to run guest
OSes.

~~~
AnIdiotOnTheNet
Why not? The history of computing is about isolating applications, really. Why
do we have Virtual Memory? Because it allows each process to have an
independent address space. Why do we have preemptive multitasking? Because it
allows each process to behave as though it is the only task running. Why is
hardware virtualization so great? Namespacing and containers?

I think Casey Muratori did a good job outlining the case for removing the OS
from the equation entirely in "The thirty-Million Line Problem" [0]. He
describes a hardware architecture where standardized ABI and hardware
virtualization replaces the OS and drivers, allowing each process to behave as
if it was the only software on the computer, as it was in the olden days with
platforms like the C64. The closest thing to an OS would be a hypervisor,
which should be the kind of thing an enterprising young programmer could write
in their spare time in a month.

[0]
[https://www.youtube.com/watch?v=kZRE7HIO3vk](https://www.youtube.com/watch?v=kZRE7HIO3vk)

~~~
hawski
But isn't it also a problem? We not only want to do things contained within a
program, we also went them to cooperate. Don't we also want accessibility? I
think that middle ground is needed, but currently pendulum is inclined in
other direction.

------
RubenSandwich
This makes perfect sense, it would be naive to think that Flutter would be the
only way to write apps for Fuchsia. Having such a hard break in compatibility
would only succeed is tanking the new platform for consumers.

~~~
fredgrott
fuchsia apps use a different runtime ie part of the runtime ie the rendering
part is in flutter in plain sight

from the web demos I have seen of fuchsia running flutter its the same UX as
android ..different apis that's all and way faster rending pipeline via
flutter rendering engine

~~~
pjmlp
Actually Fuchsia is getting an UI abstraction layer for multiple UI engines,
where Flutter is just yet another UI.

Guess what will happen afterwards.

~~~
neolefty
What will happen afterwards? Will it become the _only_ UI?

~~~
pjmlp
Here is Scenic, the UI agnostic scene graphic composition engine.

[https://fuchsia.googlesource.com/garnet/+/master/docs/ui/sce...](https://fuchsia.googlesource.com/garnet/+/master/docs/ui/scenic.md)

Here is fuchsia-ui, an UI prototype done in Rust, remains to be seen if it
really only meant for the Ermine session shell.

[https://fuchsia.googlesource.com/garnet/+/0a214f5721d723a7d0...](https://fuchsia.googlesource.com/garnet/+/0a214f5721d723a7d0757531d157f76bb54b9f95/public/rust/fuchsia-
ui)

I bet Flutter will either be yet another UI framework and then the one with
market adoption wins, or it will be rebooted somehow.

------
guelo
I'm not really excited about Google dumping linux for something they have more
control of. It will make it harder to create device drivers and utilities. And
lead to an even more closed google-controled ecosystem than the current
Android world.

~~~
segmondy
Yup, that's exactly the plan.

------
solarkraft
This is not super surprising. Google OSes may come and go, but they will put
the Android Runtime on all of them.

------
matthewaveryusa
Is there any indication on how important/significant Dart will be to Fuchsia?
I really like Dart, I think it's a fantastic interpreted language, but it has
very little momentum because javascript es6 is good enough. If Fuchsia makes
Dart its darling (with flutter?) perhaps the tides can turn?

~~~
levosmetalo
I guess if Google want Fuchsia / Flutter to really take off, they will have to
port Flutter to Javascript. One may or may not like Dart as a language, but if
it didn't get any ground in some many years since it exists, why would it all
of a sudden.

~~~
allenbrunson
> I guess if Google want Fuchsia / Flutter to really take off, they will have
> to port Flutter to Javascript.

just like that time when iOS was suddenly hot, but there were no apps for it,
because programmers hated Objective-C and weren't willing to learn it. So
Apple released a new SDK and toolchain that allowed them to write apps in C++
instead.

oh wait.

Okay, all snark aside. Come on, guys. Isn't the fact that high tech is always
new and innovative considered to be a _good_ thing? So why is there always so
much pressure to insist that every new thing has to be exactly like all the
old things?

Learning Dart is not difficult. I did it myself, without even trying. I just
pretended I already knew it, by following examples I found online. After a
couple of weeks, my pretend-knowing turned into real-knowing.

~~~
pjmlp
Thing is, Objective-C was the official language on iOS, and yes they did
release C++ support, it is called Objective-C++ and exists since NeXTSTEP
days.

Dart is just a programming language trying to get its killer app, which was
dropped by Chrome team and gets political answers from Android team.

~~~
allenbrunson
> Thing is, Objective-C was the official language on iOS, and yes they did
> release C++ support, it is called Objective-C++ and exists since NeXTSTEP
> days.

I am well aware, I have used Objective-C++ myself, but it's irrelevant. No,
you cannot write iOS apps completely in C++. you still have to use Objective-C
or Swift when dealing with UI components.

Further, Objective-C is not "just" a programming language, in this case. All
of Apple's native frameworks are very strongly influenced by it. They allow
you to do things that wouldn't be possible in other languages.

Obviously, it's possible to translate that experience to something else (see
Swift), but it's an entirely different experience. Worse, in my opinion.

The same is true of Flutter and Dart. A lot of Flutter's architectural
decisions are tied closely to the strengths (and weaknesses) of Dart. It would
not make sense to switch to a different implementation language at this point.

~~~
pjmlp
Which is why Fuchsia is getting an UI agnostic composition engine, where
Flutter is just another possibility.

While there are experiments in a Rust based UI and now Android.

I bet just like Brillo original plans, Flutter is on its way out.

~~~
hawski
By UI agnostic composition engine do you mean like Wayland? So every app is
supposed to paint itself?

~~~
pjmlp
Every app is supposed to paint itself on any UI toolkit.

~~~
hawski
So what makes UI agnostic composition engine different from other composition
engines?

Your answer means just a yes or "your question is irrelevant"? If the latter
what I meant is a difference between Wayland and X. Wayland is a dumb pipe. X
is mostly used as a dumb pipe, but it offers primitives to do the painting on
the server side. Linux or Wayland does not have UI toolkit, but i.e. GNOME
has.

~~~
pjmlp
Scenic
([https://fuchsia.googlesource.com/garnet/+/master/docs/ui/sce...](https://fuchsia.googlesource.com/garnet/+/master/docs/ui/scenic.md))
is similar to the UI compositor in Android, macOS, Windows.

No different than using the UI toolkit of choice, while the window manager
takes care of window decorations, OS input events and what have you.

Just push the window contents into the scene graph using Fuchsia IPC.

------
Zigurd
ChromeOS already has an Android runtime. There's no reason an Android runtime
couldn't be portable. There's no reason Android apps could not, if using the
APIs appropriately, adapt to all the different devices and other parameters of
an Android runtime that's implemented on a variety of OSs.

As long as their apps work, users won't care.

~~~
servercobra
That's a big if on whether apps work or not though. It's already a pretty big
hassle to design/test for the permutations that exist (with or without Play
services, testing on ChromeOS, etc) compared to iOS development.

~~~
Zigurd
Since very early versions of Android, APIs existed for determining the
characteristics of the hardware/software environment: What sensors exist,
input methods, etc. If your app works on tablets and phones and handles
orientation changes correctly, it will probably work in a window on a Fuchsia
OS device.

------
AJ007
Does anyone else have a suspicion that Google is about to completely screw
this up?

~~~
jbigelow76
I don't know about screw it up, but I am wondering what is the upside in
adopting this new OS in lieu of Android for all phone makers not named Apple?

~~~
untog
Google will just make it a requirement in order to provide the Play Store and
other Google apps on your device. Then most will be forced to follow along.

I could see it being the straw that finally breaks the camel's back for
Samsung, though. They have their own assistant, web browser... they could just
choose to go it alone.

~~~
max76
This sounds like a cost to phone manufacturers, not a benefit.

~~~
toast0
At this point manufacturers don't have a lot of choices. To a reasonable
approximation, the options are Android with google's blessing, android without
play store, beg microsoft for windows mobile 10?, KaiOS, Tizen?, don't make
phones.

About the only one that will sell the final product in the US is Android with
Google's blessing.

~~~
max76
Correct, Google has all the leverage to dictate what non-Apple smartphone
manufacturers sell. Moving to Fuchsia would be expensive for everybody
involved. Google is developing a new OS. Chip manufacturers will have to write
new driver code. Cell manufacturers will have to integrate a new system.
Everyone loses the work they put into the Android Open Source Project and
their private branches of ASOP.

With all this cost, who's getting the upside? Google is clearly getting the
lion's share.

------
zapzupnz
My wondering out loud: is the Android Runtime in Fuschia supposed to be
Google's Blue Box or Red Box? Classic or Carbon?

------
thrillgore
I get the feeling what started as a measure to keep staff has now turned into
the perfect way to replace the Linux kernel for a lot of Google components.

------
benguild
Is Fuchsia only going to run on Google hardware, like iOS?

All third-party manufacturers will be stuck with just legacy Android, and
Google will have a contender to iOS.

~~~
bunnycorn
Considering it's going to be open source, it would be strange to be
proprietary.

------
lastrosade
They were so close to having a .fart file extension

------
returnInfinity
Its Microsoft all over again

~~~
jfoutz
microsoft in the 90's would relentlessly execute. Word and excel spring to
mind, but really hundreds of little software shops woke up to discover their
product was now a windows or office feature.

Think instagram eating snap, but for lots and lots of products.

