The Blog

I played around with Google Cloud, expecting it to be terrible. It wasn’t.

Calendar Icon 03.25.2020
aws-section-divider aws-section-divider

A few weeks ago, I decided to play around with IBM Cloud to see what was what. To sum it up, it left an impression—and not in the good way.

On the heels of that experience, I dove into Round 2 with a look at Google Cloud Platform (GCP).

To be honest, I expected to be appalled. I mean, I’m effectively reviewing how cloud computing companies speak to customers, and basically everything Google ever says to customers is delivered in a voice heavily accented by condescension.

Truth be told, I was pleasantly surprised by what I found. Here are some takeaways from this experiment.

1. Signing up was incredibly easy

Right away, Google wants a credit card for identity verification. But they say they won’t charge you unless you manually upgrade your account.

I played around with Google Cloud, expecting it to be terrible. It wasn’t.

That’s fair and makes the AWS free tier seem like something Comcast would build.

Just like that, my account was provisioned. The process was disturbingly quick, and they even gave me $300 in credits to use over the next year.

But the joke’s on them: I have $20,000 in credits from another program. DNS databases for days!

Get the Newsletter!!

Get the latest AWS news, opinions, and tools all lovingly sprinkled with a bit of snark.

  • This field is for validation purposes and should be left unchanged.
Billie Leaning on Mailbox

2. The user experience is intuitive and helpful

The GCP dashboard is clearly the product of some thought. It highlights capabilities while simultaneously suggesting the most common things I might want.

I played around with Google Cloud, expecting it to be terrible. It wasn’t.

If I want something arcane, I likely already know that. 

3. Creating an instance is seamless, mostly

I opt to spin up a GCE instance because I want to keep things simple–and consistent between various cloud providers as I put them through their paces.

Maybe I’ve moved too quickly because I catch Google off guard:

I played around with Google Cloud, expecting it to be terrible. It wasn’t.
Slow down there, hasty pudding—we’re not ready for you quite yet. 

I apparently called GCP’s click to do this thing immediately quickstart bluff and they weren’t prepared. I’m entirely too quick on the draw…

I played around with Google Cloud, expecting it to be terrible. It wasn’t.

OK Google, hurry up: I want to spin up a VM before you discontinue the platform!

After a bit, the instance spins up and defaults to Iowa. A quick spot check shows that this is the cheapest region GCP offers, presumably due to corn subsidies. It also defaults me to Generation 1; Generation 2 is beefier, but more expensive.

At this point, I have a decent selection of options. I have no choice but to go with my first sysadmin love, FreeBSD. The marketplace spits out an image and returns me to my previous screen, wherein I name it something passive-aggressive as is my tradition:

I played around with Google Cloud, expecting it to be terrible. It wasn’t.

And there you have it. The instance just launches. There aren’t any firewalls to muck around with, no never-ending sections of screen to work through, and no setting SSH keys.

I click the SSH button, a new window pops up, and I presume it will become a console.

Oh no! I’ve had this account for less than 15 minutes and already Google has deprecated something on me:

I played around with Google Cloud, expecting it to be terrible. It wasn’t.

4. Logging in through the console is likely to get old, but there are workarounds

Now it’s up!

Logging in through the console will likely get old, so here’s what I do to get my user environment working:

I played around with Google Cloud, expecting it to be terrible. It wasn’t.

Some ancient sysadmin wisdom for your day: Always have a quick script that sets up your user account. You’ll find it’s handy at the strangest of times.

And, remember that that bash came late to FreeBSD.

I played around with Google Cloud, expecting it to be terrible. It wasn’t.

There are probably 15 ways to make this “build me a user” script more portable between platforms. But I don’t do much FreeBSD anymore, so let’s take the long way around:

I played around with Google Cloud, expecting it to be terrible. It wasn’t.

A touch of visudo to uncomment the wheel group option that doesn’t mandate a password, and we’re good to go.

Another note: The console gives me the public IP. While AWS recently added a “click to copy IP” feature, Google makes me copy and paste like an animal. (Update: this has since been resolved! Google built and shipped the feature faster than I could turn my Twitter thread into this blog post. That’s damned impressive.)

But GCP does offer the here’s how to do the thing you just did by hand programmatically the next time, which is pretty sweet. To get that in AWS you’re once again reduced to acts of code terrorism.

I played around with Google Cloud, expecting it to be terrible. It wasn’t.

I really can’t stress enough just how great this is.

5. Stackdriver isn’t as bad as people say it is

Everyone likes to whine and cry about logging and monitoring. I decide to try to see what demons Stackdriver possesses:

I played around with Google Cloud, expecting it to be terrible. It wasn’t.

It’s a bit peculiar, to be sure. But I don’t understand the hate. I find it way more intuitive than CloudWatch. Everything is about where I’d expect it to be. It’s easily discoverable, and thus I’m forced to conclude that most logging/monitoring people are simply irredeemably whiny.

6. Odds and ends 

Cloud Shell is supposedly awesome. It’s just that Firefox kills it due to cross-origin issues.

I played around with Google Cloud, expecting it to be terrible. It wasn’t.

That’s a swing and a miss!

(Note: Someone from GCP reached out after my Twitter thread, got a bunch of data, and has now reportedly fixed the issue. Phenomenal customer experience and outreach.)

And here’s something fancy: I can see how metadata applied to the entire project could be super handy for affinity stories, service discovery, and, of course, replacing my DNS-based CMDB:

I played around with Google Cloud, expecting it to be terrible. It wasn’t.

7. GCP’s billing control is phenomenal

At this point, I’ve had a great time playing slap and tickle with GCP’s technical offering.

Now, I want to talk business: What’s going to make me regret this come morning?

I played around with Google Cloud, expecting it to be terrible. It wasn’t.

Bummer. There’s not a lot of useful data yet. Turns out that it takes time for billing systems to catch up to the speed of the cloud.

But wait a sec. What magic is this?!

I played around with Google Cloud, expecting it to be terrible. It wasn’t.

No I played with GCP this one time so now I’m paying 22 cents a month for the rest of my life—which is depressingly common with AWS until you’re forced to change your name and enter Witness Protection to escape it. 

I’m impressed.

Unfortunately for Google, it’s impossible to dominate the cloud with that kind of defeatist attitude—what with letting users turn off the billing things and all. You’re not going to build your next billion dollar line of business without charging 200 million people a couple cents a month each because they can’t find the off switch…

Bottom line

  • GCP offers exceptional billing control
  • The console navigation is pretty decent
  • Cloud Shell still needs to figure out how computers work in 2020
  • This makes AWS’s console developer experience look like garbage (this tool is effectively native here)

Add it all up, and I wouldn’t shy away from building something more meaningful than a Unix box on this platform.

The user flows are straightforward. GCP put some serious effort into the developer experience, and it shows.

Credit where credit’s due: Well done.

aws-section-divider