Project Fuchsia: Google Is Quietly Working on a Successor to Android
bloomberg.com
bloomberg.com
This has been my therory for a while. You see all these different projects competing against each other (multiple messaging apps are a good example) and you think: why is Google so unfocused? But what Google basically wants to do is hoard engineers so they don't leave and go work for competitors and make them stronger (or start their own companies that could compete against Google).
So Google's management figured out that if they give these enginners some cool stuff to work on, they'll stay at the company, even if the stuff they work on is a duplicate of something else the company has already done.
If you look at the industry as a whole products wax and wane based on market trends. Market leading products often struggle to innovate under the weight of their own success and are eventually replaced by a new innovator that's doing something right.
Google, by virtue of creating many different types of products in one category somewhat insulates themselves from this effect. They have effectively infinite money, so from their perspective they can somewhat emulate the greater market internally. They can let "startup" style teams form internally so if someone supplants one of Google's products, it's likely to be a Google team.
There are significant downsides to this (eroding consumer trust) which may take their toll on Google with time.
I know of several other prominent examples, but can't mention by name because I'd be breaking an NDA.
Also, Fuchsia is a successor, not a competing project, strictly speaking. It would be the "gauntlet" scenario if Google was running multiple ongoing projects all competing to "inherit" Android (which quite possible it does...)
The funny part is that they might be actually emulating an entire marketplace entirely within one company, but it often seems like it's a marketplace where a large entrenched lowest common denominator is the option that everyone uses and dislikes.
Google needs to pick one, no doubt, but I wonder how relevant it is that they do (Android has much of its market share outside the US).
That said, saying "Google's startups-within-a-big-company strategy has driven most users outside of Google's chat ecosystem entirely" isn't a whole lot better.
WhatsApp is free SMS, from and to anywhere. It's an attractive offer for most of the world.
That's a lot of money to pay just for retention of people who are not producing anything of value, consuming many other resources (office space, network, hardware, perks), and deeply committed to a project that supposedly will never benefit their employer.
A rich employer may retain an unproductive employee for a limited amount of time if they expect it to ultimately pay off. It just doesn't make any sense to retain someone indefinitely if they're not going to produce anything of value, and (implicitly) will quit the moment you try to put them on any sort of real-world valuable work. Google is a public company with fiduciary responsibilities to its shareholders and a legally accountable board, it can't just throw tens of millions of dollars away without good reason or explanation.
> You see all these different projects competing against each other (multiple messaging apps are a good example) and you think: why is Google so unfocused?
There are many good reasons to have multiple teams competing against each other, building the same product. Often it will bring a strong drive and pace to all competing projects, as well as cross-pollination, and eventually they often merge to a single deliverable that is better than any of the projects could produce individually.
> what Google basically wants to do is hoard engineers
I'm not sure why all these improbable theories make more sense to you than the plain fact that Android was designed quite a few years ago, has many natural deficiencies, and - like all technologies - will eventually be replaced by a superior successor.
That's exactly what Fuchsia is about. Its existence does not require any elaborate conspiracy theory. On the contrary: given how strategically important the Android market niche is for Google, it would be very surprising if Google was not working on a viable successor. It's as if Sony didn't have a successor for the PS4 in the pipeline, and just expected it to sell forever, with minor patches here and there.
They likely will. Whenever a new projects starts, engineers can be recruited for it from the pre-vetted internal pool. Hiring and the ramp-up time for new hires would cost more. Yeah, if you're an ossified compnay rarely starting new projects it doesn't make sense. But if your Google this is not the case...
You can't really run this sort of revolving-door "talent pool" project for long, certainly not a massive project of 100+ engineers. If every time a new project opens up, its hiring managers get to unreservedly raid the "talent pool" project for star performers, then pretty soon this project will be known internally as a joke, that is at priority zero, and any but its most dysfunctional engineers will be rushing to other projects, either internally within Google or (more likely) outside it.
You'll end up with all the best people quickly leaving for real projects where they can do real work on real products for real pay (bonuses for revenue-yielding projects are much, much higher than for anything else). The project itself will be a dysfunctional joke since you can't run it with the best talent routinely recruited away. The only people who will work on it will be dead weight who don't care to work on real products or even make any progress on a bogus one, which is the definition of the sort of people you should immediately fire.
In fact, the whole initial "pool" of candidates sounds toxic, if the only reason they were given this project is that any other _real_ work would cause them to leave. As a hiring manager, I'd be very skeptical of anyone who seemed to be this sort of indifferent diva, and would not be looking to hire them.
To sum up, it's a fun little theory, but extremely unlikely to work in practice, and I've never seen anything like it. The simple explanation that Fuchsia is an Android successor is much more likely, and there's zero evidence for the far-fetched "talent pool" explanation other than an unsupported comment by some anonymous "one person who has spoken to Fuchsia staff". It's ridiculous.
Silicon Valley basically works on the principle of "Never let your employees do to you what you did to your past employer or competitors." There have been multiple cases where a small group of 10 or so engineers has quit en masse and then gone on to found or strengthen a billion-dollar competitor, eg. Shockley => Fairchild => Intel => AMD, HP => Apple => [General Magic, Claris, Radius, NeXT] => Apple, Cisco's revolving door of startups, [Western Digital, PARC, Bell Labs] => Google => Facebook. The cost to the company of this is easily in the hundreds of millions, oftentimes billions, and sometimes existential. It makes sense to blow $50M or so to keep a proven team of tech talent in-house.
See my comment to nnq. You can't just take "100 of your best engineers", and stick them on some bogus project that regularly gets raided for its best talent by hiring managers.
If they'd rather work on a bogus project than on a real product, they're not very useful engineers.
The project will quickly be seen as a joke, and not just by one unnamed "person who has spoken to Fuchsia staff", but by everyone in the company. No serious engineer would stay on it.
There's literally no evidence for this far-fetched theory, and no verified examples of this happening in the industry at all. If an engineer isn't producing something worthwhile, he's not a good engineer, certainly not "one of my best engineers".
The whole theory is pretty crazy and it's funny it ended up so high in the comment thread that we're discussing it seriously.
> Silicon Valley basically works on the principle of "Never let your employees do to you what you did to your past employer or competitors." [...]
This is a lot of unsubstantiated hand-waving with no real data to back it up. The data I've seen is that involuntary turnover (aka termination) in FAANG is 5-8% annually, which is very reasonable for healthy companies.
Have you worked for a FAANG? People are regularly put on notice and fired for poor performance. Even a very successful company can't afford to keep poor performers indefinitely. If they do, they would not remain successful for long.
You're describing a public company with fiduciary accountability to its shareholders as if it can be run like some corrupt retirement home for aging diva former-engineers. You realize that if Google was throwing away $50-100m of investor money per year, an exec would eventually have to publicly explain to the shareholders why their money is wasted this way, and if Google was trying to hide that it is a bogus project, then they would be lying to investors, which is a criminal offense?
This theory is frankly nonsense.
Not my experience. I've seen amazing engineers happily convince themselves whatever they are working on is important regardless of what it is. In fact its pretty common for really good engineers to simply fall in love with the code - or be convinced if they only finished this refactor it would be beautiful. I almost never hear them talk of business value.
The ones that do have this insight end up going on to be great managers - as they can bridge the divide.
An engineer who isn't doing that is either mismanaged, misplaced, or is no good. In the first two cases, I can possibly make use of them. But if the engineer is a diva who would only work on some made-up fancy project, then he is not a good engineer for me.
Maybe he will be able to do good work elsewhere, but that's not really relevant for me, my business, or my shareholders. Not anymore than the fact he may be a great painter or musician. Good for him, but sadly irrelevant for my business.
An employee refusing to work on something because in their opinion its not worthwhile is a tough place for both the employee and the manager.
I was at Google for 5.5 years and was the beneficiary of an engineer-retention project for a year of that. I'm now working on a startup.
Think of it from the company's perspective: they have an engineer who has already been "paid off" in the sense of having generated more revenue for the company than they are likely to get in salary during a lifetime, and is likely independently wealthy through stock options. That engineer comes to them and says "I'm unhappy here and thinking of leaving so I can work on personal projects." The company does not want to see them on the open market, where they can potentially compete with Google or work for a competitor. So their manager asks them "Well, what is it you really want to work on? Maybe we can make it happen here and you don't have to leave all the perks of Google behind." The engineer says "I've always wanted to do OS development, and there's a bunch of neat research developments like capabilities that haven't yet been incorporated in a production OS." The manager says, "Hmm, I know of some guys over in this other department that have similar ideas. Why don't you connect with them and see if your interests align?"
Google wins because it keeps these talented engineers off the market, and if the project succeeds they can win in a really big way. The employee wins because they don't have to deal with all the risk and bullshit of being unemployed or starting their own thing. Competitors lose but screw them. Consumers probably lose, but it's not a sure thing because if their project succeeds, consumers can win in a big way, so Google doesn't get into antitrust or anticompetitive trouble for it.
This is not unlimited, BTW. The unofficial rule-of-thumb when I was at Google is that "you get one freebie" - if you were instrumental to the success of a project that made Google much more than you're ever likely to make in salary, you get one chance at a self-directed project. If that fails, you either go back to being an ordinary rank-and-file engineer and have to prove yourself, or you get marginalized and usually leave. Public examples of such projects include Google Scholar (Anurag basically ran the crawl single-handedly for many years, and so he gets to indulge his passion project because Google wouldn't exist without him), Golang (Ken Thompson is Ken Thompson and Rob Pike basically built the log handling infrastructure for Google), Google Wave (the Rasmussen brothers basically founded Google Maps), Hello.com (Orkut Buyokokkten's passion project, eventually spun out), and Andy Rubin's robot collection.
What you describe is simply allowing a well-performing engineer to switch to new project, which of course happens all the time.
It's very different from "a bogus project for the sole purpose of retaining some engineers" that OP theorized.
> Google wins because it keeps these talented engineers off the market, and if the project succeeds they can win in a really big way.
So more or less like any ambitious new project? :)
> This is not unlimited, BTW.
Right, and again, goes against what OP was implying, that Google is going to run a huge project indefinitely just to retain a bunch of diva engineers who wouldn't work on anything else.
As I wrote above: "a rich employer may retain an unproductive employee for a limited amount of time if they expect it to ultimately pay off".
This is exactly what you are describing.
> if you were instrumental to the success of a project that made Google much more than you're ever likely to make in salary, you get one chance at a self-directed project.
Right, and Fuchsia is not a "self-directed project" of this kind. It's a big project with over 100 engineers, the vast majority of whom did not have the impact of Rob Pike or the others you mentioned.
Your comment is good and informative, but ultimately does not lend any support to the notion that Fuchsia really is some bogus project with no business case or future, solely for retention purposes, which is what OP was implying and what I am disputing.
At some point the difference between "engineer retention project" and "risky venture that probably won't pan out but could win big" ceases to matter. Larry Page is exceptionally good at "Heads I win, tails I win even more" gambits - historically, these included Google Toolbar (initially conceived as a defensive play against Microsoft, but ended up getting Google Search in front of hundreds of millions of new users - this, BTW, was Sundar Pichai's first big win on the way to CEO); Google Chrome (ditto, with the side effect of becoming the dominant browser); GMail (initially an internal tool to improve productivity, then became a major consumer product); and Google Fiber (worst case, force Internet speeds up through competition, best case, new ISP). It's likely that Sundar & Larry's thinking of Fuchsia is that worst-case, it keeps 100 talented engineers at the company, and best-case, it's a dominant new OS that drives computing forwards. Either one is worth the $50M or so, so they do it.
And they all got canceled once their business case became void.
None of these were bogus projects. They all initially had a business case, and were run by engineers who proved themselves before. When that business case fail to pan out - they were canceled.
> At some point the difference between "engineer retention project" and "risky venture that probably won't pan out but could win big" ceases to matter.
Maybe to you as an employee. Not to Google as a business, nor its shareholders.
If I'm a Google shareholder, and you're wasting hundreds of millions of dollars of my money with nothing to show for it but some vague fears that "my engineers will go to competitors", then I'm going to be unhappy. Beyond a certain point, you're opening yourself up to lawsuits and even criminal charges (Google is a public company).
All of your examples are projects that were interesting and had some passionate senior engineers pushing them forward, but also had a business case. When the business case went bust, so did the project.
To support OP's assertion that Fuchsia is just a retention project with no future, you'd have to show a project of its size (or any size, really) run for the sole purpose of retention with no plausible business case.
I don't think such a thing exists, and it's not in any of your examples.
I have some personal experience with Wave. It had a plausible business case and Google was promoting it heavily. It wasn't bogus. I'm sure the same is true for the others.
"We rely on highly skilled personnel and, if we are unable to retain or motivate key personnel, hire qualified personnel, or maintain our corporate culture, we may not be able to grow effectively."
Acquiring and retaining key people is in the interests of shareholders, and Google invests significantly in this activity. I started this subthread with a comment about $50M acquihires where they shut down the product immediately afterwards. That's just one example - others include funding STEM education for children, the Google Summer of Code, multi-million-$ retention bonuses, and constant recruiting efforts.
This is all disclosed on the prospectus and annual reports. If you don't understand why this is important for a tech company, you should probably not be investing in tech, but I will be happy to buy your shares from you.
[1] https://www.sec.gov/Archives/edgar/data/1288776/000165204416...
Are you a voting shareholder (class A or B)? If you have class C (no vote), they don't have to care. If you have class A (voting public) shares, which get 1/10 the vote of the class B (management) shares, your influence is incidental at best.
I think Fiber was a bit of a miscalculation in that they misjudged where the bottleneck would be. In the early days of Fiber (I worked on it, briefly), the assumption was that key risk factors would be that incumbent ISPs would raise their speeds to match, or that marketing would fail to sign up enough customers to make the build-out economical. These turned out to not be major problems, but the incumbent ISPs blocked expansion to new municipalities through permitting & right-of-way restrictions. The assumption when I was working on it was that if Kansas City could demonstrate a successful deployment, other cities would be lining up to clear roadblocks and bring Google Fiber to their citizens; this didn't happen.
Sure, it took a while after Google Fiber launched, but there was a lot of infrastructure to deploy. I'd argue Google had a hand in this.
I mean, it's not like Google is inventing bogus projects in a top-down sense, with some middle-manager somewhere coming up with "private works projects" and staffing them with engineers Google wants to keep. Nobody is claiming that.
No, what the GP was proposing is that the projects are bogus in a bottom-up sense: they're projects that are entirely useless to Google's shareholders in both a short-term and long-term sense, but which the engineers really want to work on, and which at least aren't actively harming Google (or perhaps they are, but not as much as Google would be harmed if the same project were developed in the wild.) This is very different from "basic research" (Google X et al), which is useless in a short-term sense, but may yield large positive returns later on. These projects are bogus because the best-case scenario for them is no net effect on Google as a business. (They might have quite an effect on the the world, but if there's no way for Google to convert that effect into shareholder value: bogus.)
Fuchsia is a perfect case: at best, it replaces Android, for no net benefit to Google (since they already dominate the mobile ecosystem with Android.) But if the engineers working on Fuchsia couldn't work on it at Google, they'd have started a similar project outside Google... and then Google would be in the position of a non-Google-owned OS displacing Android's share of the mobile-OS market.
Much better that these engineers do something useless [from a business perspective] that merely keeps stable Google's share of a market, than that they do something that actively lowers Google's share of a market.
Google doesn't generally allow projects that everyone knows have zero chance of being useful in a bottom-line sense; you can't, for example, build a D&D campaign index on company time even if you're T9. (There was a big debate over this near the tail end of the Eric Schmidt years, when you actually could, and this was one reason for Larry's "More wood behind fewer arrows" campaign.)
But for something with a small chance of having a large impact, like a new OS or programming language or attempt to speed up scientific progress? Google can totally get behind that, because worst-case, you keep the engineers employed and available for future use, while best-case, you've got a computer science breakthrough. Fuchsia fits right into this case, as does Dart and Go and Unladen Swallow and several other projects.
But you left out the largest retention side project: Jeff Dean and Brain.
I’m thinking of things like the build system, mono repo & the borg etc
Google bought Android, then also created Chrome OS and is now making a tthird OS named Fuchsia.
They had Gchat that they scrapped for Hangouts, which they pivoted into a business chat (Meet), but the Hangouts client is still available for the general public. They also made Allo, which eventually went nowhere, so now they're pushing for the adoption of RCS (Android Messages).
Gchat, Hangouts, Meet, Allo, RCS. That's 5 messaging apps right there.
Consider the project mentioned in the article. Sure, it will cost millions of dollars to develop. But OSes are in high demand, existing OSes have quite a few sore points, and plenty of people have made money selling operating systems or devices that need a custom operating system (MS/DOS, Windows, iOS, etc.) So it is not categorically insane from a business or engineering perspective to say "hey, we're going to invest in the development of a new operating system that will change the world."
On the other hand, maybe all the OS world needs are some patches on top of Linux to smooth over the rough spots.
People that see the project the first way will say they're working on a "moonshot". People that see the project the second way will say they're working on a "senior engineer retention project."
Any big company will likely want to hedge its bets, and indeed... apparently Google has people working on a new OS, and they obviously have people patching the Linux kernel (Android). No matter which approach ends up being correct, Google makes money. I don't think the investors are going to be filing many criminal charges against the board.
Back to the retention aspect, remember what the downside is in this scenario. The people that want to build their own OS to change the world or whatever just leave and go do it. They have money and can probably rope in some investors. If they end up being right about the approach... there is no more Android and that means no more Google ads on mobile phones, no more location history, no more searches... etc. That is quite a downside for Google. So even though the project is "this seems crazy, but we don't want these people to quit", it's 100% the right financial decision.
I think the shareholders can appreciate that.
That said, as an employee... this was all a little too much for me when I was at Google. No matter what you worked on, there was always a competing project with twice as much headcount and 1/10th the users. You would have a meeting with them along the lines of "hey, this thing you're assembling a 30 person team for... my team already made and it's in production and working." They would be like "nah, our use case is slightly different and rather than editing 1 line of code and getting no promotion, I'd like to build a HUGE team and put an EZ promotion packet together." Not for me.
One of the following must be true:
- Fuchsia has perceived product value, and it's an investment
- Google doesn't have enough interesting work right now, the amount of interesting fluctuates up & down, and retaining expensive employees by having them work on "Fun Fuchsia" during the current down cycle is more efficient than hiring expensive employee attrition+recruitment
- Fuchsia has no product value, and Google has too many expensive engineers
Wait uh... are you saying seniors at Google make an average of $500k?
For what it's worth, I just started at Google as a Senior SWE this summer. My base is in the 180s. With an average annual bonus, my moving/starting bonus, and stock grant (ignoring stock price movements), my first four years should be 400ish...very high 300s really.
BTW, https://www.levels.fyi/ is another source of data which might prove useful
190 total comp is more in line with what I expect for an early career person. Welcome to 2018 tech company salaries.
Either way based on my experience as a manager at Google, the answer to your question is yes.
There's a high likelihood that at least some of their work will be of value to the company—or, if everything pans out, they get a fancy new platform. The real motivation is probably somewhere in the middle (retention, product development).
This is a solid bet to make, especially when you are effectively not worried about the cost (thanks, ads!).
A lot of Google is heavily research focused like this: let engineers (mostly) freely explore complicated problem spaces. If it's a product—awesome!—see if there's market fit, and then grow it. If not, no problem; see where it, or parts thereof, can be applied elsewhere within Google.
Source: I worked there.
I'm sure Google is aware that more interesting and ambitious projects do tend to capture and hold the interest of the most talented engineers, and that figures into their business decisions.
What I strongly dispute is this notion that such a project would be subsidized solely for retention. Everyone knows about big Google projects that were shut down when their business case lost its appeal. I've also seen much smaller projects shut down when their value proposition was no longer deemed sufficient, even when their members were talented, passionate, and at real risk of leaving once their project shut down.
I think Google figure it out its real bussiness like MacDonalds did: Not burgers, but real state bussiness. I think Google understood they are not in the make "valuable useful tech" bussiness as one is inclined to think, they are in the "tech talent retention bussiness".
Even if they dont use the talent, if they are able to lock the talent inside Google as a kid in a Circus, their competitors wont have access to the talent pool they need, and this will make a big monopoly on Google.
Of course, this is only possible if you have the ammount of cash and credentials Google have to attract tech people like Disney do to kids.
I think this is their real primary mission; attract human talent, retain and ultimately lock it from the competition.
Do you ever wonder why the startup scene is so dry lately, even with so many enginners and tech focused people no short of ideas? The titans are just sucking all the oxigene in the room making everyone else choke.
Do you have an example of this?
Taken from reddit: I don't think it will be "starting over," just a major platform change. Imagine Fuchsia being Android 13.0. Every OS maker does a major platform rewrite along these lines eventually.
Windows moved from DOS to the NT kernel.
Apple moved from the classic Mac OS nanokernel (is this the right name?) to the Unix-like XNU kernel with OS X.
Google could trade Linux for Fuchsia's kernel.
These projects are always codenamed something else at first. They always come with big compatibility problems that are overcome with time or emulation layers. Sometimes there are major UI changes, sometimes the UI is built to closely replicate the old OS, but everyone does a huge "reboot" transition like this eventually.
First time I've ever heard this phrase. It's funny because it's true.
Of course they did.
A controversial idea, but you know how much easier this would be for everyone if Google offered an option for users to be paid for volunteering your information to them? It's a precedent most fledgling ad companies wouldn't be able to match... even if it's just a few dollars a month, or maybe 30ish bucks a year. It'd cut into Google's bottom line, but it would eradicate the competition.
And then on top of that, you've got the security and privacy wins by baking the product to be secure by default but allowing consumers to accept a paycheck to disable some of it for Google. That risk calculus works for plenty of people (if not for myself).
Google's wins:
• Security and Privacy by default
• Dismantling start-up competition who can't afford to pay for the data they harvest
• Growing marketshare.
Drawbacks:
• Immediate hit to Google's revenue stream
• Permanent assignment of value to data in the perception of consumers
The only big outstanding risk would be posed by rivals with large warchests able to subsidize a similar payment scheme, but honestly once that's done, the winner is a public which now has the ability to monetize their data.
I also see nothing about not still collecting information about you. It appears to just remove showing you some ads.
Much better.
"rent us out to the highest bidder" is the perfect description of Google and FB's business model. It's hard to imagine how either company could change course at this point, even if they wanted to.
Even if there is nothing wrong with the business model, the "prices" can still be unfair. A lot of the values of these things are inherently difficult, if not impossible, to calculate (at least seemingly).
Except that is an awful idea.
Attempting to out-compete those companies has not historically been a very successful tactic. I think that's what's meant.
Even on the other end of the scale,I subscribe to Backblaze and Evernote.
Have you not seen their Opinion Rewards app for Android? They do precisely that.
This is about valuing the usage data itself that's passively collected on the Android platform.
Those things go, outside of Google, for 2$/month minimum, and more often 10$ per month ...
Similar things go for Google's index of the web, phone operating system, ...
There's no reason for the suppliers of raw materials here not to raise their prices (from zero). If anyone wants to provide it for less, so be it, but given that Google wants insight into everyone marketable, there's no reason for people not to raise their own prices for the data they supply.
but maybe only a temporary one. after knifing the babies (i mean honestly outcompeting the startups), Google could discontinue that option and stop all the payments.
at least for a while, until a fresh crop of foolhardy competitors boldly entered that market again.
One might reasonable argue that YT Red just removes ads, but doesn't do anything for privacy / data collection. But I have two questions for them: 1. what makes you think people would gladly pay for privacy (any glaring example)? , 2. even if Google were to offer such an option, would you trust it?
Counterpoint: Apple, one of the most profitable companies.
People have been giving their money to Apple before they even flaunted a strong pro-privacy stance, and I have yet to see an ad from Apple that I did not opt in for (although their recent Apple Pay emails have been slightly annoying, given that I'm in a country where I cannot use Apple Pay but there's no option to opt-out from only Apple Pay related emails while still receiving offers for other Apple services.)
Rich people with lots of disposable income would, not surprisingly, prefer quality for a higher price. But that is not the business model of Google, nor is it applicable for everyone.
[0] https://news.vice.com/article/exclusive-canada-police-obtain...
[1] http://blogs.blackberry.com/2016/04/lawful-access-corporate-...
Sure, don't they make >95% of all google profits.
How making a new OS achive this? What kind of problems Fuchsia could solve when Linux can’t solve?
I personally hope Fuchsia would remain as an experimental project. A new non-GPL OS by a big player like Google is a bad news for hardware dev and enthusiasts from XDA. This will make hardware driver developments more fragmented and closed-source.
Smartphone manufacturers are trying to hide their kernel and device drivers, even they are using Linux. Imagine there are no legal restrictions to hide those.
Android has been trying to fix this with treble[0], which will make many more phones get OS updates going forward. So Android has attempted to work around one of linux major problems.
Another large problem is that Linux was designed for desktop architectures. It's design and focus continues to go that way. This has impact across an entire range of functionality that an OS is supposed to bring.
Fuschia seems to be a research project with a focus on mobile/laptop type devices. It could care less about server type environments, which lets it make different tradeoffs in design.
Android changed Linux kernels with every single release, from 2.6.27 to 4.10 by core release, and vendors often update kernels incrementally in between. Any driver issues are trivial to change presuming they didn't come in a binary blob and the source refused any further changes, which is supposedly the case with Qualcomm hardware in the Nexus 6, for instance.
"Android has been trying to fix this with treble[0]"
Treble is about the intra-Android interfaces, not Linux device interfaces. This is about Google doing large scale, breaking changes that made vendors just throw up their hands.
"Another large problem is that Linux was designed for desktop architectures"
Nope.
The reality is that everyone always thinks they can rebuild it better. Second (Third, Fourth, etc) system effect. It the very basis of NIH syndrome. So some small group at Google wants to research OS'. Whatever. The likelihood that this replaces Android, or that it is in anyone's imaginations that it actually will besides content writers outside of Google, seems very low.
This is why all of the Google's code sits in one big repo (reportedly). It allows them to refactor all dependent code at once when changing interfaces.
The problems they are likely trying to solve are business and legal, not technical. Pesky things like not having to release keys bits of code under a 'free' license (i.e. they have no choice but to release any changes to the Linux kernel under GPL as that's what it requires.) Sure, they'll probably still release large chunks of source code (possibly under MIT/BSD, possibly under a less liberal license) but keep strategic bits closed source. Right now they have to do this via the clunky and somewhat obvious Google Play services layer. And then there's the constant potential exposure to lawsuits. etc.
By being able to decide on what pieces would be released under what licenses, it would allow them to prevent competitors from following in their footsteps as Amazon and various Chinese companies have done with Android. Things like this are the reason Samsung (one of Google's largest problems) keep pushing forward with their Tizen platform so that when the shift comes they have the ability to sidestep it if they want to.
There's basically nothing new in the Bloomberg article.
There is a ton of cruft in the APIs, like any large project would have.
One of the engineer in the Android framework team described creating APIs as generating future regrets.
Some of the mistakes are pretty small. Like internally the system reuse drawable instances in order to save memory, but instead of making this process entirely automatic, before calling let's say `setTint(color)`, you need to call `mutate()` so the UI framework spins a copy of the drawable for you. it would have been easy to integrate this behavior by default without having you know about mutate but since it was done differently, this behavior has been preserved in order to do not break retrocompatibility.
There are many small API issues like this. Big issues of course are corrected but often preserve the old behavior in case you are targetting an old version of the OS.
The View system is incredibly complex. Some of it is due to the inherent complexity of the problem, but some of it is due to the constraints of the time and some decisions that could have been better.
So there are many things you can improve by restarting from scratch and it is often easier than having to deal with the legacy APIs too.
I don't know if Linux/Fuchsia meets those criteria, but given that there are extremely smart people at Google working on it, I would think that it's at least plausible.
IF you consider that there are some fundamental flaws in the Android Framework at the surface level, either oversights or just based on what the landscape looked like 10 years ago, then we have to reach a tipping point where it makes more sense to do a full rewrite than to continue building on this codebase.
FWIW, there are major incremental improvements made at each release, most of them with very few changes to the high level APIs.
The VM itself evolves at each release and has even been completely replaced from Dalvik to ART. The permission system has moved from install time (designed by engineers .. ) to iOS-like incremental runtime permissions.
Not everything can be updated that way though. So it might be worth redesigning the OS with better assumption about its usage and by totally rewriting the APIs from scratch in order to avoid the mistakes made by Android (of course Fuchsia will also make some mistakes in its APIs .. all immense projects do, it does not mean that it can't improve on Android)
And I don't think the OP article applies very neatly here. Android is still being worked on and is constantly improved. We are not in a situation where Android's development is going to freeze for 5 years while Fuchsia is being worked on. Completely different teams work on the 2 projects.
If anything, Fuchsia has a lot of pressure in order to catch up with Android. And it might want to start supporting kotlin so that the dev experience gap is not too wide and to add an Android VM for retrocompat before starting to consider competing with Android.
I doubt this is really a big deal for Google, but a capabilities based OS lends itself a bit better to the mobile OS security model.
1. "Android and Chrome OS are built on Linux, a widely used open-source programming language."
Here they mix up the Linux kernel with the Java programming language.
2. "Moving from Linux, though, could have upsides for Google. Android’s use of the technology, which is owned by Oracle Corp., is at the center of a lengthy, bitter lawsuit between the two companies. Shifting away from using Linux would help Google’s legal case that its software isn’t reliant on Oracle."
While here they mix up the Java programming language with the Linux kernel.
http://www.oracle.com/technetwork/server-storage/linux/techn...
As for Java, if Google actually cared to get away with their actions, they could have bought Sun.
Surely it would have been cheaper than what they already paied their lawyers.
2. Correct
I parsed that comma as an "and".
> While here they mix up the Java programming language with the Linux kernel.
Did they? It might be implied that Google is dropping Java as well. Indeed other sources seem to suggest this is their strategy[1], [2], [3], [4]
My experiences with Bloomberg writers is that they're not lazy, but they elide a great deal of specificity to focus on the business effects and brands instead of technical bits and bobs.
[1]: https://www.theregister.co.uk/2017/11/21/android_the_next_10...
[2]: https://www.quora.com/Is-Google-implictly-going-to-drop-Java...
[3]: https://rethinkresearch.biz/articles/google-reveals-more-fuc...
[4]: https://www.androidauthority.com/we-compiled-fuchsia-os-7104...
> In the code pages, the Googlers working on Fuchsia specify that the software is not finalized.
Really, that needed to be said? An operating system with no practical use or implementation isnt finished? None of the ones in mass use right now are "finished."
>This means Google’s latest services only reach a fraction of Android users.
Google Play Services were split out from the OS back in 2013. https://arstechnica.com/gadgets/2013/09/balky-carriers-and-s... The author repeatedly tries to paint Android as a monolith held back by hardware manufacturers, and google, for the most part has split what we know as Android into two layers, and has fullll control of one of those two.
>"Moving from Linux, though, could have upsides for Google. Android’s use of the technology, which is distributed by Oracle Corp., is at the center of a lengthy, bitter lawsuit between the two companies. Android was also built using Java software technology, which Oracle owns and has claimed Google stole to shore up its mobile business."
Even after a correction, the article still claims Oracle has sued Google over Linux! (Not sure if your copy/paste is from after the correction.) The author demonstrates no understanding of the difference between the Linux Kernel, Common Libraries, Android Runtime, Android Application Framework, and Google Services. Moving from Linux doesnt mean replacing the Runtime or Services. Completely separate layers. Oracles disupte is over the Runtime not Linux.
So quietly that they pitched a story about it to Bloomberg.
I'm curious about this kernel, honestly making something new from the ground up doesn't seem like a good idea.
I wonder how much of an advantage it was for android to use linux as a kernel, but I guess it was a gigantic advantage, which let them focus on what mattered in the development of android.
Other question: any kernel/OS developer here to explain if a micro kernel makes his job easier or harder? Having the flexibility of a micro kernel seems good, but I'm not sure it's that much important.
They made a step in the right direction with Project Treble though.
It isn't actually terribly difficult, the most difficult part being driver support. By using Linux as a base, Google gained a lot of driver support by default, among other things like a well-known base environment.
> explain if a micro kernel makes his job easier or harder
Well, a microkernel usually has well-defined interfaces that allow drivers to communicate with the kernel, instead of these interfaces being decided by the compiler at compile-time. This in turn offers the guarantees of "ABI/API stability" that the Linux kernel usually offers to userspace programs: drivers don't need to be recompiled to work with a new kernel, so you can actually have binary drivers that continue to "work" long after the vendor stopped working on them. This also offers more room for stability guarantees (a driver that crashes can be restarted, as it's not the kernel panicking), and security (drivers don't have access to each other's data).
On the other hand, you trade a bit of performance and flexibility (from the developer's perspective) for this, by committing not to break compatibility. By now, advantages and inconvenient of microkernels vs monolithic ones are well understood and documented.
What's in for Google is mostly licensing-related: since they're making it; they are free to pick their favourite license. And I am pretty sure Google has been uncomfortable with the GPL for a while now. The same could be said about its hardware partners, and manufacturers that have to provide the source code for their drivers (when they comply at all).
Since a GPL kernel is one of the best things that happened to Android so far (allowing custom roms, open source projects, more transparency), I am extremely weary of fuschia, and looking forward to postmarketos as an alternative to android.
When I asked Tanenbaum at FOSDEM why he didn't pick L4 for Minix 3, he just got annoyed and seemed to think I was asking why he didn't just use the L4 OS (which doesn't exist) instead of creating Minix 3 - or something. In any case I didn't get a good answer. He could have created his own implementation if he wanted, L4 is just a specification with a few existing high quality implementations that prove the concept...
There's some discussion of it already on HN: https://news.ycombinator.com/item?id=16813796
Some advantages of the Fuchsia architecture over Linux for Android:
* Capability based system; applications only get access to objects, including files, directories, other processes, etc via capabilities, so they can only affect those objects they have been given access to directly. This is much better for security and isolation of applications.
* Userspace drivers with a stable ABI, or with the possibility of versioned ABIs. This could allow them to ship updates to the underlying system without waiting for vendors, reducing fragmentation.
https://arstechnica.com/gadgets/2018/01/googles-fuchsia-os-o...
Although for the life of me, I cannot figure out why Google suffers so hard from NIH syndrome and didn't go with something like seL4/Genode. Do they just want control of absolutely everything they touch?
Cargo.toml links to https://fuchsia.googlesource.com/garnet/
Fuschia is getting swift support Flutter runs on fuschia Flutter uses dart
Do I learn dart or swift, personally I want to learn swift. Flutter only supports dart??? Fuschia supports swift
Is flutter going to support swift
I'm not terribly familiar with the landscape, but my suggestion is broadly applicable: learn both.
A developer shouldn't be constrained to a single language. Pick the one that's suitable for the project you want to work on. For the next project, do the same. In my experience you'll find it progressively easier to pick up new languages (and stacks, and paradigms, etc.) each time you do it.
IMO, a developer's goal should be to understand and implement design patterns, not individual languages.
... and for the record, I say this as someone who prefers a single language (Python) to all others I've encountered.
In a basic sense, Flutter is based in Dart, but if you want to call into another language like Swift, there is a way to do so, called FIDL. I'm not sure if Swift has FIDL bindings yet, but I'm sure that it and many other languages will, in time.
Even today Flutter has support for Swift code on iOS the same way it supports ObjC, via MethodChannels. (This is also true for Java and Kotlin code on Android.)
I thought one of the core reasons for the fine was the restriction in the Mobile Applications Distribution Agreement that a company couldn't develop a competing OS...
Yet Google is?
Alternatively they will use it as the core for a new "Nexus" line to compete with Apple, and not licence Fuscia as a platform (avoiding dominance of the mobile "Platform Market" by doing what Apple are doing).
Google probably needs fewer OSs, not more.
The idea that this is a senior engineer retention project is what actually makes sense. I think it will probably yield some useful results that can be harvested for their other systems, or perhaps it can fill a niche not already well fillled.
it's a brand new operating system that google is experimenting with.
Fuchsia won't run android apps, but fuchsia apps will run on Android and iOS.
[1] https://9to5google.com/2018/04/26/fuchsia-android-runtime-ap...
Chrome OS already runs Android, so it would be a matter of stitching the Chrome os shell into Fuchsia to have both running in Fuchsia. First with virtualization of Linux, and later without it.
Desktops aren't going away, and Macs are pretty much an US phenomenon, alongside a couple of other countries.
Likewise, Android tablets aren't that good, with most of the apps being phone apps. Google now is playing with ChromeOS for tablets, which also remains to be seen where it goes.
So, most consumer shops around here are now mostly selling iPads and Windows 10 tablets.
According to tablet market share stats they are clearly not winning that war and not even a serious competitor.
>Likewise, Android tablets aren't that good, with most of the apps being phone apps.
Most of the Android apps I use on tablets all resize fine to use the extra space. I consider trying to use desktop apps that are not optimized for a touch interface a much worse experience.
Well, that wasn't the message being discussed at Google IO, specially at the ChromeOS sessions regarding usability.
https://www.statista.com/statistics/276635/market-share-held...
From what I see here there are lots of Windows tablets to be had, from various vendors.
http://www.mediamarkt.de/de/category/_2in1-convertibles-5420...
https://www.saturn.de/de/category/_2-in-1-convertibles-46890...
Which are the ones actually on display when I go to those shops.
So I wonder where they are being bought from, is everyone getting them from Amazon?!
>So I wonder where they are being bought from, is everyone getting them from Amazon?!
Amazon accounts for good percentage of tablets sold. I bought an Amazon Fire 8 HD for $49 during Prime Day. At that price it's an instant purchase.
They are also working on CShell, which is a unified UI/windowing/compositing system that will work across PC, Xbox, Mobile, etc.
CShell + OneCore + UWP are essentially becoming part of a "brand new" OS they're calling Core OS, which will strip the Win32 backward compatibility requirements and just work with UWP apps, primarily targeted at devices like phones and low power tablets.
You can search Project Polaris for more information
Apple had a Project Pink back in '88 to be the successor to System Software 6. They hoped to release it in 1993, instead buying NeXT in 1997 and launching OS X in 2001: https://en.wikipedia.org/wiki/Copland_(operating_system)#Pin...
Microsoft's Project Pink was the result of their Danger acquisition. It didn't fare well either: https://en.wikipedia.org/wiki/Microsoft_Kin
I wish Google the best of luck.
Shifting away from using Linux would help Google’s legal case that its software isn’t reliant on Oracle.
Yeah this is totally wrong.