Fuchsia – Revealing the Mystery of Google’s New OS
September 1, 2016
The developer community is abuzz about Google’s new operating system Fuchsia, initially reported on GitHub last week though no one can quite figure out exactly what it is. What we do know according to The Verge is the system currently exists as a growing pile of code on the search giant’s code repository. Google says it’s an operating system designed for “modern phones and modern personal computers.”
With the introduction of this new OS, a software platform war could be brewing. This is a huge deal for the industry, but everyone is asking… what is Fuchsia? And Google isn’t answering. So, we did some investigating of our own to discover the strongest theory out there and who’s on the Fuchsia team, and then we asked our experienced developers their opinions on this revolutionary, secret platform.
Why is Google creating Fuchsia?
I’ve read many theories about why Google is creating an operating system from scratch and to best explain the strongest theory, it begins with the kernel.
“The kernel is an invisible piece of software that sits between the operating system and the computer’s hardware,” said Joe Conway, CEO of stable|kernel. “Most people don’t know it exists, but in order for everything else to work, the kernel must be perfectly stable.”
(Sidenote: this single idea is how our company stable|kernel came to be!)
Even in this fast-paced, innovative industry, software development has been built upon kernels (i.e. Unix, Linux, and Windows NT) created decades ago. Most don’t know this, but as Jared Newman of Fast Company pointed out, our devices run on adaptations of old kernels back from 1991. This Linux kernel is the core of basic code that underpins both Android and Chrome OS.
According to industry analyst Horace Deidu, it’s fine that we’ve been building upon the same kernels all these years. But now that we are connecting everything and anything the Internet, it’s time for a kernel upgrade.
“The thinking behind Fuchsia may be that aging kernels such as Linux are inadequate for this new wave of devices,” said Newman. “As such, its creators are imagining a new one for modern times.”
Even though this is just speculation, it seems like one of the main Fuchsia developers Chris McKillop likes this upgraded kernel theory.
What we know
- The operating system does not use the Linux kernel
- Fuchsia is built on Magenta — a “medium-sized microkernel” based on a project called LittleKernel
- The core code is designed to be lightweight
- Dart is apparently a first class citizen on Fuchsia, much like Swift is a first class citizen on iOS and macOS
- It will run on the Raspberry Pi 3 soon according to Fuchsia developer Travis Geiselbrecht
- It’s open-source so anyone can use, modify or explore the system
- It’s being tested on many different systems
- Magenta is designed as a competitor to commercial embedded OSes, such as FreeRTOS or ThreadX
- The Flutter platform (a Dart framework) appears to be the UI framework for Fuchsia applications serving a similar role to AppKit or UIKit for iOS/macOS
Who’s in on the secret?
According to Google’s GitHub page, these 4 developers are the masterminds behind the project.
- Travis Geiselbrecht– Travis is a platform wizard with loads of experience at Google, Apple, Jawbone, HP and more. He’s been at Google for 6 years as an Android engineer working on the robotics team and now as a huge part of the Fuchsia project.
- Brian Swetland– Brian has also been on the Google team for a long time – more than 10 years. He also worked on the robotics team for Android before it was bought out by Google.
- Chris McKillop– He was a part of the original Apple iPhone and Palm WebOS teams, so he definitely knows his stuff. Currently at Google, he’s worked on numerous projects including home automation, Android TV and a connected car advisory board member. He claims it’s “time to get Googley and change the world.”
- Adam Barth– Adam is also a longtime Google engineer, but has mostly been working on Chrome. He is on the Flutter team and created his own side job called Tau for Raspberry Pi. You can check out Tau here.
What our devs think
One theory we have internally is that Google is creating Fuchsia to replace any need for Java. Sun Microsystems released Java in 1995. Then, Oracle decided to buy out Sun in 2010, thus becoming the owner of Java. Oracle took Google to court in 2012 for copyright infringements for the Android operating system.
Because of that, Google’s been moving away from Oracle’s Java implementation to avoid the patent conflicts. Google still has numerous devices that are heavily dependent on Java to run OS, and Oracle continues to have issues with Google using Java for their own purposes. So now, Google wanted to wash its hands of the Oracle debacle and created Fuchsia to be the future of Android.
The second theory is that Google is forecasting the explosion ina number of different computer-like devices consumers will have in their homes. Google sees the value for having a consistent platform for building software on these different devices, and Fuchsia may serve this purpose.
For example, nearly every iOS developer wants “Swift on the Server,” meaning engineers can write one programming language for mobile, web, embedded devices, web servers and more. If our theory for Fuchsia is true, applications (written in Dart) for Fuchsia would run on all of these types of systems and devices.
Google has a great purpose for its programming language. Between its syntax, standard library and the ability to develop a modern and flexible VM for multiple types of hardware, Dart makes a lot of sense. The language may play a similar role for the Android side and serve as a strong foundation for the Internet of Things.
Speaking of Dart….
We are ecstatic to hear about Fuchsia’s reliance on Dart because we have spent the past year building and deploying Dart applications. As a part of this work, we developed an open-source, server-side web framework called Aqueduct written in Dart.
Early on, we invested heavily into Dart because it is an extremely productive platform. We built Aqueduct so our developers can create backend systems easily and efficiently to ultimately develop the highest quality products for our clients.
Aqueduct is a fully-integrated platform that offers:
- Rapid development with faster feedback cycles
- Simple testing and CI integration
- Easy improvement and maintenance
If you haven’t checked out Google’s Dart or Aqueduct before, we encourage you to take a look. Dart is the perfect opportunity to challenge yourself in learning a new language because it’s a simple, elegant language that Swift, Objective-C and Java programmers will love. Who knows- you might even become the next Dart evangelist. Check out the Aqueduct package on pub to learn more.
Even though we are speculating here, we will only really know once Google officially announces what’s going on. Needless to say, we are really excited to see what Fuchsia holds for the future. What are some of your theories on Fuchsia? Tell us below!