
How Google Is Challenging AWS - tortilla
https://stratechery.com/2016/how-google-cloud-platform-is-challenging-aws/
======
seregine
Having worked at both places for ~4 years each, I would say Amazon is much
more of a product company, and a platform is really a collection of compelling
products.

Amazon really puts customers first. Their platform and organization are made
up of small teams that own services with well-defined interfaces, accountable
for customer metrics. All profits are reinvested, so resources and perks are
scarce, efficiency matters, and management is tight. The platform emerged
because internal teams thought of their infrastructure services as products
with customers.

Google really puts ideas (or technology) first; it aims to hire the smartest
people and rewards them for launching new things and solving complex problems
rather than optimizing UX or making customers happy. Resources are ample and
management is loose, so individual contributors can try new things with
greater leisure. It's been compared to grad school. But simplifying customer
experience is less of a priority, so the internal infrastructure was
notoriously complex and hard to use. They're now learning to prioritize
customers, but it's hard to change culture.

Of course, both companies are huge and diverse and evolving, so you'll find
plenty of variance.

App Engine wasn't evidence of Google being a product company, nor does it
exemplify the company's strategy. It was a grassroots project that for years
didn't receive much leadership support, but was still allowed to launch and
grow.

~~~
btilly
I would state the tradeoff very differently.

Amazon gives each team independence. Therefore it is virtually impossible to
insist on consistency between what different teams do. Each team makes sense
on its own, but the whole can be very, very confusing.

Google has a process that results in much greater internal consistency. It may
not be a great UX, but it is consistent. Inside and out.

For small systems, Amazon is going to give a better UX. But for a complex
system, I prefer what Google will produce.

~~~
serge2k
> But for a complex system, I prefer what Google will produce

Having worked there in teams near to their tablets I really think Amazon would
have a hard time producing software of the complexity of Android or Chrome.

~~~
newjersey
I have a question. Do you think this Amazon culture is the cause or the result
of service-oriented architecture at Amazon? Or maybe am I completely off the
mark here.

I found this quote from SEC filings. Jeff Bezos says:

> Service-oriented architecture -- or SOA -- is the fundamental building
> abstraction for Amazon technologies.

This was in 2010.
[https://www.sec.gov/Archives/edgar/data/1018724/000119312511...](https://www.sec.gov/Archives/edgar/data/1018724/000119312511110797/dex991.htm)

It sounds like they have been committed to it at least since 2005?
[https://s3.amazonaws.com/aws001/trailhead/MigratingAmazonCom...](https://s3.amazonaws.com/aws001/trailhead/MigratingAmazonComToAWS.PDF)
I'd imagine internally it'd have to be a lot sooner than that because I think
they were ready to release AWS by 2006.

Sorry, I don't mean to start a holy war. I just wonder if there's any
connection... What do you think?

~~~
kinkrtyavimoodh
If we use Steve Yegge's famous rant for reference, it goes back to 2002.

[https://plus.google.com/+RipRowan/posts/eVeouesvaVX](https://plus.google.com/+RipRowan/posts/eVeouesvaVX)

~~~
deadbunny
Great read, thanks.

------
olimashi
I think Ben (who I generally think is right on) in this post misapprehends the
effectiveness of generalized data for machine learning services and thus the
effectiveness of this approach in Google’s strategy here. Perhaps the slide
makers in Mountain View have the same misapprehension.

1 - Prediction API - you provide your own data there, so no data advantage
from Google there.

2 - Cloud Natural Language API - the effectiveness really depends on what type
of text you want to understand. If Google’s training data includes information
about my type of text application great, but if it doesn’t then what? How do I
know that?

3 - Cloud Vision API - likewise. Can I subset the training set? Provide my own
examples? If they subset, can I inspect the examples?

4 - Translation API seems like the exception here, mainly because the odds are
that customers of translation service are unlikely to have collected language
pairs and this collection is more highly specialized. But it’s unclear that
this one API would be the deciding factor for many companies choosing which
cloud vendor to use.

ML services as a differentiator have yet to be proven out. I am highly
suspect. Yes, some big general data sets will be better on some applications
than others, but an enterprises’ own data about their problem will always be
better than a huge, general data set. And if you’re using your own data
anyway, you’re going to care about all the platformy things Amazon has already
been winning with.

Barring proprietary breakthroughs in unsupervised learning, I don’t believe
that this strategy as outlined will work in practice.

~~~
halflings
I don't think Google is marketing their Cloud NLP/Vision APIs for big
enterprise customers that have very specific needs. Those APIs are meant for
people that have common needs ( = want to identify which items or people are
on a photo, understand queries in commonly used languages, etc.)

If you have specific needs, then you can use TensorFlow running on the app
engine (as they will soon be providing hosted and GPU-accelerated instances),
which at worst makes it equal to Amazon offering... but something tells me the
vast majority of Google Cloud customers will be satisfied with pre-trained
models that can be applied on a very large swath of problems.

~~~
olimashi
I guess that's kind of my point about Ben's argument. Are pre-trained models
going to be the "sustainable advantage" against AWS. I don't think so.

~~~
halflings
They definitely are for most customers: it is extremely expensive to gather
and label enough data for a deep learning model to work correctly. It's very
unlikely that you'll manage to configure and train your models + generate
input data that Google lacks to make your model work much better than what
Google already provide with their "generalist" API.

~~~
olimashi
Say you are an insurance company and you want to use build a model that uses
damage photos and meta data about car as a backstop to make sure that your
repair shops aren't ripping you off.

In this case you already have a bunch of historical labeled data and a pre-
trained model is useless to you application. It doesn't help you that the pre-
trained model can recognized 10 different types of cats, you need a model
trained on photos of damaged cars. Obviously the insurance companies own photo
data will be more useful here because it's data about the application domain.

Google has collected a ton of photos for the purpose of image search and
consumer photo organizing and that models utility has been tuned to those
application area.

The key question is what is the overlap between all applications of images
models and what photos Google has collected.

There will be for some but my guess is that those are the mission critical, I
can only get this performance from Google cloud are few and far between.

I'm not saying there aren't any. Ben's article suggests that Google's data is
somehow going to be a mission critical asset for all applications areas. Which
I think is a terribly naive idea when it comes to ML.

~~~
petra
What about combining your own model with what Google offers you, especially
when you might not have enough data or expertise?

------
darksaints
> Amazon’s AWS strategy sprang from the same approach that made the company
> successful in the first place

I'd argue that Amazon isn't a successful company, they are a popular company
with a few large successes surrounded by decaying and decrepit failures that
won't die. But then again I'm biased.

As far as Amazon's AWS strategy, I can't comment (I worked in the retail
business side). But I can comment on a relatively small aspect of management
that I witnessed. At one point in time I had a very strong need for PostGIS,
and I lamented on an internal email list about AWS not having a Postgres
version of RDS. I received an email directly from Raju Gulabani, VP of
databases in AWS. He scheduled an appointment with me, him, and two product
managers. He asked me pointed questions about why I wanted Postgres over the
other options, how I would be using it, what extensions I wanted, and what
features were important to me. He thanked me for my time, and less than a year
later it was released to the public.

In the retail business side, I never had more than 2 minutes at a time with
someone at the director level, and not once had I spoken to someone at the VP
level. Literally zero communication from the bottom up, everything was top
down. Whether AWS had already been working on it or not I don't know, but they
definitely took the time to hear my case, and when it was released it was
almost perfectly as I had asked for. And that, IMO is waaaay more important
than anything regarding the size of a team or whatever the fluff pieces have
attributed.

~~~
darawk
> I'd argue that Amazon isn't a successful company, they are a popular company
> with a few large successes surrounded by decaying and decrepit failures that
> won't die. But then again I'm biased.

Couldn't you say the same thing about Google, or Microsoft? I think the point
of 'success' is that your big wins outweigh your failures as determined by
your revenue. Is it not?

Creating the largest retailer in the world and the largest cloud services
platform in the world seem like two pretty big wins. Either one on its own
would be an extremely successful company IMO.

~~~
saosebastiao
>Couldn't you say the same thing about Google, or Microsoft? I think the point
of 'success' is that your big wins outweigh your failures as determined by
your revenue. Is it not?

Of course it is. And by that definition, Amazon isn't successful, and nowhere
in the same league as Google or Amazon. Not yet, at least. They've managed to
break even more or less, but it is still yet to be determined if they can
become the wildly profitable company that their stock price suggests they can
become. My opinion after working there is that AWS is to Alibaba as Amazon is
to Yahoo.

~~~
darawk
Their gross profit in 2015 was 35 billion. Google's was 46. The difference in
final profit comes down to how much they reinvest in R&D and future growth.
I'd call that the same league.

~~~
saosebastiao
You are sorely mistaken as to the difference between gross and net profit. R&D
is in there, sure...along with a billion other things that also don't get
accounted for in cost of goods sold.

~~~
darawk
Ya, but Amazon doesn't break it down any further than that. I'm aware that
there are other things in there, but it is well known that the primary
contributor to that figure is R&D.

~~~
saosebastiao
Not a single programmer, manager, or any other central office employee gets
paid out of COGS. There are _at least_ 50,000 of those. Same goes for real
estate costs, legal costs, etc. Servers and their operations costs might go
into COGS on the AWS side, but definitely not on the retail side.

Breaking out investment vs administrative cost is actually very hard to do. Is
a programmer working on a new feature an R&D cost, or an administrative cost?
What if it's a new service? What if it's a new product? What if it's a bug
fix? What if it's a critical vulnerability? What if your programmer does all
of the above at different times of the year? It's pretty much impossible to
separate administrative overhead from research and development in tech
companies, which is why they tend to not do it unless they are forced to. It's
up to their shareholders or the SEC to force them to do it if it happens,
which hasn't been the case for Amazon yet.

It is _assumed_ that they would be turning a profit if they decided to just
keep the lights on and not invest in the future. That's what they tell us, and
that's what we see (new product and service announcements tell us as much).
What we don't know from public information is whether they would be 10% more
profitable or 10,000% more profitable. And that's before we know if their
investments will pay off or if they become another perpetually subsidized
program like Amazon Fresh. That's why Amazon stock is considered to be a
speculative investment, whereas Google and Microsoft are more in the blue chip
camp. My experience and hunch tells me that Amazon stock prices are at least
50% undeserved hype.

------
origami777
There's always the simpler explanation to why Google is getting traction:

\- Price/performance is better in some/many cases for VMs

\- It's easy(ier?) to use

\- Clear technical advantage with some of their other services e.g. Load
balancers

\- Customers prefer when there are multiple companies competing for their
business

I get that there are long-term strategies that involve the likes of container
services. But just the fact that they are better in some areas will help them
get traction. Plus they have a fantastic brand name.

------
daxfohl
Frankly I still like the Heroku model the best. Do one thing and do it well.
Have third-party plugins handle the other things. It fits the "cloud" vision
better, than consolidating all your functionality with one provider. _That_
seems like a regression. I just wish Heroku was cheaper at scale. I don't
understand why it's not. It _seems like_ they could reduce prices and still
remain profitable, while increasing their visibility greatly.

~~~
daxfohl
The article mentioned kubernetes multiple times and I think it's providers
like Heroku that actually stand the most to gain there. With kubernetes in
theory they should no longer have to make you choose between providers, and be
able to run on spot instances of whatever provider is cheapest at the time.
You just choose your max latency at certain geo areas and a budget to balance
by, some AI to help you determine the tradeoffs, and it does the rest. If
Heroku isn't working toward that then there _has_ to be _someone_ doing so
soon. If not it seems like there's a pretty big opportunity there.

~~~
jacques_chester
Cloud Foundry is closest to this vision, in my entirely biased opinion. We're
already able to mount standalone installations on AWS, GCP, Azure, OpenStack,
vSphere and others.

Distributing apps across multiple clouds is easy to say, hard to do. Each IaaS
has peculiarities and wrinkles, different tradeoffs in performance and cost
and so on. It takes a moderately tricky scheduling problem and turns it into a
much gnarlier one.

What's easier is using high-level tools like Terraform and BOSH to manage
installations on different IaaSes, and pushing apps to whichever one you like
as you like. I can easily imagine setting up round-robin deploys.

That said: data has inertia. Any sensible architecture has to bear that in
mind; typically apps will wind up living close to their datastores.

Disclosure: I work for Pivotal, we're the majority donor of engineering to
Cloud Foundry.

------
wangii
>> Microsoft did the same with its Win32 API. Yes, this meant that Windows was
by design a worse platform in terms of the end user experience than, say, Mac
OS ...

The author loses his creditability since here.

------
ap22213
I want to try out Google, but they need to make it easier to try it out. I
have petabytes of data in S3 that I would need to move first (at least some of
it).

~~~
mvitorino
You can try "Cloud Storage Transfer":

`Transfer data to your Cloud Storage buckets from Amazon Simple Storage
Service (S3), HTTP/HTTPS servers or other buckets. You can schedule once-off
or daily transfers, and you can filter files based on name prefix and when
they were changed.`

[https://cloud.google.com/storage/transfer/](https://cloud.google.com/storage/transfer/)

~~~
ap22213
It would be nice if they managed the transfer themselves via AWS Snowball.
Sure, they would have upfront costs, but based on what I spend on AWS monthly,
it's probably worth it to them.

~~~
dekhn
Why would you want to move data between AWS and GCP using a hard drive? The
networks between the two cloud providers are immense.

~~~
ap22213
I didn't realize that they have direct connections. The AWS data center down
the street (Virginia) is directly connected to some google cloud datacenter?
Sorry - I'm generally ignorant of datacenter technology.

So a back of envelope calculation says that it would take around 10 days to
transfer 100 PiB over Gigabit ethernet. When you say immense, do you mean
faster than that?

~~~
mikecb
Google's new NoVa DC will probably be in/around the equinix right down the
street from AWS.

------
daxfohl
> Yes, this meant that Windows was by design a worse platform in terms of the
> end user experience than, say, Mac OS, but it was far more powerful and
> extensible, an approach that paid off with millions of line of business apps
> that even today keep Windows at the center of business.

Is there any validity to this? I don't do much OS-level programming, but is
the Win32 API really that much more powerful and extensible?

~~~
brassic
To give one example: Windows Explorer has been extensible since Windows 95.
That was 21 years ago. Dropbox has to pull nasty hacks to integrate with the
macOS Finder [1]. That's now.

[1]:
[https://news.ycombinator.com/item?id=12463338](https://news.ycombinator.com/item?id=12463338)

~~~
st3v3r
That's not really an OS level thing, though. That's an application level
thing. Finder was chosen not to be extensible, and Explorer was. There are
Finder replacements that are.

~~~
paulddraper
OS is usually taken to mean kernel + core applications.

Are Explorer and Finder "core"? Probably.

------
mixmastamyk
I would like to try out google cloud due to its lower costs, but don't trust
them with my data--partially perception I know. Also Amazon has never failed
me over the last 15 years I've been doing business with them, so I'll probably
continue despite the clunkiness of their products.

~~~
naner
I'm not sure if Google's commercial products are as bad as their consumer-
facing offerings, but if we can't get someone on the phone when a support
issue arises then we'd never consider using them for any cloud services.

~~~
rrdharan
[Disclaimer: I work on GCP at Google]

GCP Gold and Platinum support packages include phone support:
[https://cloud.google.com/support/](https://cloud.google.com/support/)

~~~
naner
Thanks rrdharan for pointing that out, I should have spent a couple minutes
researching first.

------
dxxvi
Nothing can beat the 1 year free for AWS free tier.

~~~
dx034
Full ack. I don't understand why GCE doesn't have the same offer there. Their
free trial is too short to really test it. If you're a developer and
experimenting with cloud offers on side projects, AWS is often free. That way
a lot of people have some experience using AWS. I'm sure the free trial pays
off well for Amazon.

~~~
tobltobs
The AWS free tier is useless imho. If the thing you want to test fits into the
AWS free tier then a AWS or GCloud solution would be overkill anyway.

~~~
dx034
But it's good if you just test a bit as a developer. Not to check if a project
is valid, but to gain some experience. That way, if you hire as a company,
developers more likely have AWS experience than GCE/Azure experience.

~~~
jsolson
I don't agree on the free trial. I think it lets you play around a lot more
than the AWS free tier -- as I said in my comment up the thread, go ahead and
move the slider to the right and scale up a bit (a little -- the free trial is
still quota limited to prevent abuse), see how things perform, slide it back
to the left and have only used a tiny fraction of your credit.

I think you get a lot more "kick the tires" flexibility with a moderately
large up-front credit.

(affiliation: I'm an engineer on Compute Engine)

------
perseusprime11
This is how Amazon is challenging Google as of today.
[https://techcrunch.com/2016/11/30/amazon-launches-amazon-
ai-...](https://techcrunch.com/2016/11/30/amazon-launches-amazon-ai-to-bring-
its-machine-learning-smarts-to-developers/)

------
thiyags
very nice article. well articulated. not just tech but also the different
business models(futuristic)

~~~
sorenbs
I can highly recommend subscribing to
[http://exponent.fm/](http://exponent.fm/) the weekly podcast Ben is hosting
with James.

~~~
throwaway40483
I concur. In fact, I find the podcast better than articles. I'm not sure why
though. I think the conversational tone of the podcast is better. They attack
the problem from different area and then hone in on the main point.

------
NicoJuicy
Denk aan

------
brilliantcode
If Google released an IDE with tight integration to Google Cloud like Azure +
Visual Studio, that's a potential killer app that lowers the perceived
switching cost.

If you told me to use Azure two years ago I would've laughed you out of the
room. But here I am in 2016, using Azure, using ASP.net + IIS on Visual
Studio. _that 's some powerful shit_ and currently AWS has cost leadership and
perceived switching cost as their edge.

By introducing a layer of learning curve, you lock in your customers but
eventually the other guys will race to lower that curve.

~~~
trautlein
Only a few months ago Amazon bought Cloud9, arguably the best online IDE. [1]
Perhaps they might beat Google to the punch?

[1]: [http://thenextweb.com/dd/2016/07/14/amazon-buys-
cloud9-aws/](http://thenextweb.com/dd/2016/07/14/amazon-buys-cloud9-aws/)

~~~
jptman
Doesn't Google already have a web based, but internal only, IDE? I don't know
if that'd be easy to make external, but my understanding is that they've got a
lot of internal users on it.

~~~
JeremyBanks
Yeah, and Cider was getting surprisingly good at the point I left Google (I
was initially a skeptic). But so much of what made it good came from its tight
integration with other internal tooling. I'd be surprised if it's ever
externalized in a form that captures most of that value.

------
aikah
tldr; competition is good.

Google Cloud UI is vastly superior to AWS. It's clear to me AWS didn't put a
lot of effort into their interface, Google console is nice too in order to
quickly experiment with the platform. On the other hand, it seems to me that
AWS is still cheaper than GCloud right now.

~~~
hueving
UI doesn't really matter for people with enough instances to care about money.
Nobody is going to blow $1,000/mo because the interface is nicer.

~~~
brianwawok
Really? Because slack is IRC with a nicer UI. There are many examples of this.

Executives love slick UIs and flashy dashboards. Executives have a lot of
power.

~~~
paulddraper
Are your executives launching servers? Do they care about their IDE's UI too?

~~~
brianwawok
Executives play with all kinds of tech and have all kinds of power.

What world do you live in that a random dev picks the cloud provider for a
company?

------
honkhonkpants
I disagree with the central thesis of this article that Google is a product
company rather than a platform company. I think that's wrong because
throughout its history Google has asked itself "what if we had this?" first,
and built the products around that later. Essentially the company believes
that products will naturally emerge if you hire tens of thousands of engineers
and deploy an unholy number of computers. I said this before on this site:
Google's core product is dirt-cheap computing. Everything else follows from
that.

~~~
fumar
Is company's business model based on what they use to create their Widgets or
what Widgets they sell (and how)? I agree its hard to paint Google solely as a
products company, but its also more than the sum of dirt-cheap computing.

~~~
justicezyx
Dirt cheap computing is like the life line of Google. W/o that, nothing Google
did can sustain at all.

~~~
fumar
Just curious on your thoughts, are not most modern companies (startups)
dependent on cheap computing (+ smart folks)?

~~~
user5994461
Not at all.

Most modern companies don't need cheap computing. They have a lot of users
generating revenues, and they usually need little computing resources.

Google always worked by giving everything free to people. (Google, Gmail,
Maps, Youtube, Android, Chrome). And they have extremely infrastructure
intensive applications to run (e.g. just gotta copy the entire internet to
index it + serve years of videos per second :D).

For every paid click/page a user will see, he will go through hundreds of page
paying nothing, and Google will have to make thousands of pre-computations to
be able to serve it in the first place.

That's the world Google lives in. They had to be hyper efficient since day 1
or they couldn't survive.

(Also note that they started > 15 years ago. The available hardware was 2^5
smaller at the time).

------
lasermike026
What's good for the goose is good for the gander. How about criminal penalties
for false arrest due to bugs?

To be serious this is a catastrophic failure. We can not deprive people of
there freedom because of a glitch. This system doesn't have fail safes.

~~~
wyldfire
You must've replied to the wrong article, this one is not the one about the
California court's new computer system.

