At the Game Developers Conference last month, we held a day of sessions showing developers how to take advantage of Google Cloud Platform to build all kinds of different games. We invited some of our top developers to share their stories and best practices, including LeanPlum, who is building a powerful mobile optimization platform, EA, who is building some really amazing games, Staq, who is creating a unique game management platform. Check out the videos of the sessions below and let us know what you think.
Intro to Google Cloud Platform - PaaS, IaaS, Storage, Analytics (48:18 min)

Google Cloud Platform has everything needed to build highly scalable applications. Launch an app without system administrators, while having the ultimate flexibility of root on a virtual machine. Get high performance asset hosting, and analyze terabyte-sized data to optimize games.
Connect Mobile Apps to the Cloud Without Breaking a Sweat (43:50 min)

Google Cloud Endpoints makes it easy to build OAuth 2-protected, RESTful APIs and instantly generate client libraries for Android, iOS, and JavaScript. See how you can use this feature to trivially connect your Android, iOS, and mobile browser applications to powerful backends built on App Engine.
Create Amazingly Scalable Games on Google Cloud Platform (40:35 min)

Quickly deliver compelling game experiences by leveraging the scalability of Google App Engine combined with the unlimited flexibility of virtual machines on Google Compute Engine. From 1 to 100,000 cores, learn how to unleash your next great game on Google Cloud Platform.
Understanding Your Players Using Near Real-time Data Analytics (41:20 min)

The volume of data generated by games can be immense and the insights one can derive from them invaluable. Learn how to analyze player behavior, virality, segment users, and understand retention in near real-time using //staq and Google BigQuery.
How EA Builds Mobile Game Servers on Google App Engine (44:23 min)

Electronic Arts presents an overview of how Google App Engine propels the production of back-end servers required for connected, social games on mobile, with real-world applications of the platform’s services and built-in automatic scaling.
- Posted by Ryan Boyd, Developer Advocate
Author: John Do
Source: googlecloudplatform.blogspot.com
2 days, 16 hours ago
—
—
Permalink
Pareidolia is a psychological phenomenon that leads us to see familiar objects in random patterns. For example, when we look at aerial imagery of the Earth we might think we recognise faces in the topography.
onformative has created a computer program, called GoogleFaces, that scans Google Maps satellite imagery looking for patterns that humans might believe are human faces. GoogleFaces scans through one satellite image after another on Google Maps, sequentially along the latitude and longitude of the globe. After scanning around the world it then switches to the next zoom level and starts all over again.
As it scans each satellite imagery the GoogleFaces face detection algorithm records the latitude and longitude of any ‘faces’ it finds. The onformative website has a few examples of the faces already found on Google Maps, including the one above, found in the satellite imagery of Russia. 
Author: Keir Clarke
Source: www.mapsmaniac.com
4 days, 13 hours ago
—
—
Permalink
Because of the design changes in the new Google Maps, v4 of the Maps API must be in the pipeline. I expect however that the release is some way off.
Inspired by the new index card effect in Google Maps I decided to have a little Sunday hack to see if I could create something similar. Here’s the result, Not the New Google Maps.
First off to add the new look map base layer it is a simple process to add
google.maps.visualRefresh
to the javascript for the map.
Initially I decided to replace information windows with a slide-down index card. It was simple enough to create a div element for the index card and use jQuery to create a slide-down and slide-up effect for the card. Then it was just a matter of using
document.getElementById('divName').innerHTML
and a call to open the card index, inside the marker’s event listener.
After achieving that however I decided to remove the example marker from the finished map.
One of the really impressive new features in the new Google Maps is the reverse geo-coding that happens when you click on the map. When the user clicks on a location on the map a card opens showing the location’s address and a small thumbnail of the Street View available.
So I decided to use my index card design to achieve something similar. When you click on the map I geo-code the location and add a little static Street View to the slide-down index card. If I get the time it should be a simple enough process to add a function so that when the user clicks on the static Street View the map is replaced with the full interactive Street View.

Author: Keir Clarke
Source:
www.mapsmaniac.com
5 days, 21 hours ago
—
—
Permalink
An in-depth tour of the Android development tools, with a closer look at everything new - along with tips and tricks for getting the most out of them.
Author: Andr.oid Eric
Source: android-er.blogspot.com
6 days, 15 hours ago
—
—
Permalink
Ubilabs have been testing out the new look base map layer that is now available in the Google Maps API.
They have created a simple demo that allows you to compare the new look that is available if you add
google.maps.visualRefresh
to your code. If you mouse-over the demo map you can switch between the old and new designs. So far Ubilabs have confirmed the following design changes in the new base map and map controls:
No shadows for markers
Markers are slightly bigger
Simplified InfoWindow
Smaller MapType toggle
Smaller Google logo (bottom left)
Smaller TOS bar (bottom right)
Tweaked zoom slider
Saturated map color
State borders show up in higher zoom level
Buildings show up in higher zoom level
Icons for all POI places in a small circle
Major streets in cities are desaturated
New font (Roboto) used in InfoWindow
New colors for directions (route & markers)
Some area labels are light grey
Mapperz has also been playing with the new design. He created this JSFiddle page so you can play around with the code yourself and check out how things look with the new Google Maps design. 
Author: Keir Clarke
Source: www.mapsmaniac.com
6 days, 16 hours ago
—
—
Permalink
One of the announcements that seemed to get lost in the noise at this week’s IO conference was that Google Compute Engine (GCE) is now available for everyone.
I took it for a quick test drive yesterday, and here are some of my thoughts about what I found.
Web interface
The web UI is less bad than most of the other public clouds I’ve tried of late, but it’s nowhere near as good as AWS. I see a number of places where I think ‘that works fine now whilst I’m just playing, but I’m not going to like that when I’m using this in anger and I’ve got LOTS of stuff to manage’.
One thing I like a lot about the web interface is how well it has been connected to the REST API and gcutil command line tool. The overall effect is to give the impression ‘this is just for when you’re running with training wheels, if you’re serious about using this platform then you’ll use (or build) some grown up tools elsewhere’.
Gcutil
Google have gone with their own
API, which means you can’t use third party tools adapted to
AWS and other popular APIs. If (as most pundits predict) Google grows to be the #2 public IaaS this won’t be a big deal as an ecosystem will grow around them. For the time being I expect the main way that people will use the
API is through the gcutil command line tool. It’s very easy to get going with gcutil due to the integration with the web interface, though I do wish there were direct links from the
tool guide rather than
links to
links (a trap for those like me that just copy links and paste into wget commands).
Access control
GCE uses
OAUTH2 for access control. This is both a very clever use of standards, and a
Lovecraftian horror to use.
 |
| Beware, Fluffy Cthulhu will eat your brains if you think you can just source different creds to switch between accounts |
This manifests itself when you first use gcutil where the invokation creates a challenge/response - paste URL into browser, authenticate, approve, paste token back into gcutil. A ~/.gcutil_auth file is then written to save you jumping through the same hoops every time. It’s possible to make the tool look elsewhere for the credentials stored in that file (and I guess equally possible to write a script to move files into and out of the default location), but the net effect is to bind a user on a local machine to an account in the cloud, which I think will be jarring to many people who are used to just sourcing creds files into environment variables as they hop between accounts (and providers).
SSH
Google also breaks with convention over how it manages SSH keys. Most other clouds either force you to create a key pair before launching an instance, or allow the upload of the public key from a keypair you made yourself.
GCE creates a keypair for you the first time that you try to access an instance using SSH (with a different name):
- gcutil creates a keypair and copies the private key to ~/.ssh/google_compute_engine
- the public key is uploaded to your project metadata as name:key_string
- new users of ‘name’ are created on instances in the project
- and the key_string is copied into ~/.ssh/authorized_keys on those instances
- meanwhile gcutil sits there for 5 minutes waiting for all that to finish
- I’ve found that the whole process is much faster than that, and in the time it takes me to convert a key to PuTTY format everything is ready for me to log into an instance (whilst gcutil is still sat there waiting).
The whole process is a little creepy, as you end up signing into cloud machines with the same local username as you’re using on whatever machine you have running gcutil. This also feels like another way that gcutil ends up binding a little too hard to a single local account.
Access control redux - multi accounts
The OATH2 system for creating gcutil tokens does support Google’s multiple account sign on - allowing me to choose between my personal and work accounts.
The web interface doesn’t.
If I want to use the web interface with my work account then I have to use my browser in incognito mode (and jump through the 2FA auth every time, which is a pain).
At this stage I’m glad I’m only wrangling two GCE accounts. Any more and I’d be quickly running out of browsers (and out of luck if I was using my Chromebook).
Image management
The entire GCE image library presently fits onto a single browser page, and half of that is deprecated or deleted, so the choice of base OS is limited to Debian (6 or 7) and Centos 6.
There are no choices for anything more than a base
OS (though there are instructions for
creating your own images once you’ve added stuff to a base
OS).
There is no (documented) way to import an image that didn’t start out from one of the official base images.
There is no image sharing mechanism.
There is no image marketplace (or any means to protect IP within images).
Network
This is an area where it seems Google have learned from Amazon how to do things more intelligently. The network functionality is more like an Amazon Virtual Private Cloud (VPC) than the regular EC2 network. By default you get a 10.x.x.x/16 network with a gateway to the outside world and firewall rules that let instances talk to each other on that network, and SSH in from the outside.
Firewall rules apply to the network (like VPC security groups) rather than the instance (like EC2 security groups), and there’s a very flexible source/target tagging system there that can be used to describe interconnectivity.
The launch announcement talks about ‘Advanced Routing features help you create gateways and VPN servers, and enable you to build applications that span your local network and Google’s cloud’, but if those features exist in the API I don’t (yet) see them exposed anywhere in the web UI.
Disks
The approach to disks is much more like Azure’s IaaS than AWS, at least in terms of default behaviour. terminating an instance doesn’t destroy the disk underneath it, and it’s possible to leave that disk hanging around (and the meter running) then go back and attach another instance to it later. If you don’t want the disks to be persistent then that needs to be specified at launch time (or you have to delete the disk after deleting the instance).
There’s no real difference in capability here, it’s just a difference in default behaviour.
Speed
GCE feels fast compared to AWS and very fast compared to most of the other public clouds I’ve used. Launches and other actions happen quickly, and the entire environment feels responsive. I hope this isn’t a honeymoon period (like Azure IaaS storage) where everything is fine for the first few days and crumbles under load once people have the time to get onto the service (given how Google have handled the launch of GCE I’m fairly confident they won’t repeat Microsoft’s mistakes here).
I haven’t benchmarked any instances to see if machine performance is +/- equivalent AWS instances, but I’ve heard on the grapevine that GCE has more robust performance.
Price
Seems to be set to be about the same as AWS benchmarks across instances, storage and network. GCE doesn’t seem to be competing on price (yet), but if might be offering better quality (albeit for fewer services) at the same price.
One thing that has caught people’s attention is the move to per minute billing (with 10m minimum):
I’m not so sure:
Paying for a whole hour when you tried something for a few minutes (and it didn’t work so start again) might be a big deal for people tinkering with the cloud. It might also be a thing for those bursty workloads, but I think for most users the integral of their minute-hour overrun is a small number (and Google will no doubt have run the numbers to know that exactly).
In effect per minute billing means GCE runs at a small discount to AWS for superficially similar price cards, but I don’t see this being a major differentiator. It’s also something that AWS (and other clouds) can easily replicate.
Conclusion
There’s a lot to like about GCE. It gets the basics right, and no doubt more functionality will come with time.
I see room for improvement in the identity management pieces, but the underlying security bits are well thought out and executed.
Image management is the area most in need of attention. People are religious about their OS choices, and having one flavour from each of the big Linux camps is enough for a start but not enough for the long term. Google’s next major area for improvement has to be getting the right stuff in place for a storefront to compete with AWS Marketplace. Some people might even want to run Windows :-0
Author: Chris Swan
Source:
blog.cohesiveft.com
6 days, 17 hours ago
—
—
Permalink
One of the announcements that seemed to get lost in the noise at this week’s IO conference was that Google Compute Engine (GCE) is now available for everyone.
I took it for a quick test drive yesterday, and here are some of my thoughts about what I found.
Web interface
The web UI is less bad than most of the other public clouds I’ve tried of late, but it’s nowhere near as good as AWS. I see a number of places where I think ‘that works fine now whilst I’m just playing, but I’m not going to like that when I’m using this in anger and I’ve got LOTS of stuff to manage’.
One thing I like a lot about the web interface is how well it has been connected to the REST API and gcutil command line tool. The overall effect is to give the impression ‘this is just for when you’re running with training wheels, if you’re serious about using this platform then you’ll use (or build) some grown up tools elsewhere’.
Gcutil
Google have gone with their own
API, which means you can’t use third party tools adapted to
AWS and other popular APIs. If (as most pundits predict) Google grows to be the #2 public IaaS this won’t be a big deal as an ecosystem will grow around them. For the time being I expect the main way that people will use the
API is through the gcutil command line tool. It’s very easy to get going with gcutil due to the integration with the web interface, though I do wish there were direct links from the
tool guide rather than
links to
links (a trap for those like me that just copy links and paste into wget commands).
Access control
GCE uses
OAUTH2 for access control. This is both a very clever use of standards, and a
Lovecraftian horror to use.
 |
| Beware, Fluffy Cthulhu will eat your brains if you think you can just source different creds to switch between accounts |
This manifests itself when you first use gcutil where the invokation creates a challenge/response - paste URL into browser, authenticate, approve, paste token back into gcutil. A ~/.gcutil_auth file is then written to save you jumping through the same hoops every time. It’s possible to make the tool look elsewhere for the credentials stored in that file (and I guess equally possible to write a script to move files into and out of the default location), but the net effect is to bind a user on a local machine to an account in the cloud, which I think will be jarring to many people who are used to just sourcing creds files into environment variables as they hop between accounts (and providers).
SSH
Google also breaks with convention over how it manages SSH keys. Most other clouds either force you to create a key pair before launching an instance, or allow the upload of the public key from a keypair you made yourself.
GCE creates a keypair for you the first time that you try to access an instance using SSH (with a different name):
- gcutil creates a keypair and copies the private key to ~/.ssh/google_compute_engine
- the public key is uploaded to your project metadata as name:key_string
- new users of ‘name’ are created on instances in the project
- and the key_string is copied into ~/.ssh/authorized_keys on those instances
- meanwhile gcutil sits there for 5 minutes waiting for all that to finish
- I’ve found that the whole process is much faster than that, and in the time it takes me to convert a key to PuTTY format everything is ready for me to log into an instance (whilst gcutil is still sat there waiting).
The whole process is a little creepy, as you end up signing into cloud machines with the same local username as you’re using on whatever machine you have running gcutil. This also feels like another way that gcutil ends up binding a little too hard to a single local account.
Access control redux - multi accounts
The OATH2 system for creating gcutil tokens does support Google’s multiple account sign on - allowing me to choose between my personal and work accounts.
The web interface doesn’t.
If I want to use the web interface with my work account then I have to use my browser in incognito mode (and jump through the 2FA auth every time, which is a pain).
At this stage I’m glad I’m only wrangling two GCE accounts. Any more and I’d be quickly running out of browsers (and out of luck if I was using my Chromebook).
Image management
The entire GCE image library presently fits onto a single browser page, and half of that is deprecated or deleted, so the choice of base OS is limited to Debian (6 or 7) and Centos 6.
There are no choices for anything more than a base
OS (though there are instructions for
creating your own images once you’ve added stuff to a base
OS).
There is no (documented) way to import an image that didn’t start out from one of the official base images.
There is no image sharing mechanism.
There is no image marketplace (or any means to protect IP within images).
Network
This is an area where it seems Google have learned from Amazon how to do things more intelligently. The network functionality is more like an Amazon Virtual Private Cloud (VPC) than the regular EC2 network. By default you get a 10.x.x.x/16 network with a gateway to the outside world and firewall rules that let instances talk to each other on that network, and SSH in from the outside.
Firewall rules apply to the network (like VPC security groups) rather than the instance (like EC2 security groups), and there’s a very flexible source/target tagging system there that can be used to describe interconnectivity.
The launch announcement talks about ‘Advanced Routing features help you create gateways and VPN servers, and enable you to build applications that span your local network and Google’s cloud’, but if those features exist in the API I don’t (yet) see them exposed anywhere in the web UI.
Disks
The approach to disks is much more like Azure’s IaaS than AWS, at least in terms of default behaviour. terminating an instance doesn’t destroy the disk underneath it, and it’s possible to leave that disk hanging around (and the meter running) then go back and attach another instance to it later. If you don’t want the disks to be persistent then that needs to be specified at launch time (or you have to delete the disk after deleting the instance).
There’s no real difference in capability here, it’s just a difference in default behaviour.
Speed
GCE feels fast compared to AWS and very fast compared to most of the other public clouds I’ve used. Launches and other actions happen quickly, and the entire environment feels responsive. I hope this isn’t a honeymoon period (like Azure IaaS storage) where everything is fine for the first few days and crumbles under load once people have the time to get onto the service (given how Google have handled the launch of GCE I’m fairly confident they won’t repeat Microsoft’s mistakes here).
I haven’t benchmarked any instances to see if machine performance is +/- equivalent AWS instances, but I’ve heard on the grapevine that GCE has more robust performance.
Price
Seems to be set to be about the same as AWS benchmarks across instances, storage and network. GCE doesn’t seem to be competing on price (yet), but if might be offering better quality (albeit for fewer services) at the same price.
One thing that has caught people’s attention is the move to per minute billing (with 10m minimum):
I’m not so sure:
Paying for a whole hour when you tried something for a few minutes (and it didn’t work so start again) might be a big deal for people tinkering with the cloud. It might also be a thing for those bursty workloads, but I think for most users the integral of their minute-hour overrun is a small number (and Google will no doubt have run the numbers to know that exactly).
In effect per minute billing means GCE runs at a small discount to AWS for superficially similar price cards, but I don’t see this being a major differentiator. It’s also something that AWS (and other clouds) can easily replicate.
Conclusion
There’s a lot to like about GCE. It gets the basics right, and no doubt more functionality will come with time.
I see room for improvement in the identity management pieces, but the underlying security bits are well thought out and executed.
Image management is the area most in need of attention. People are religious about their OS choices, and having one flavour from each of the big Linux camps is enough for a start but not enough for the long term. Google’s next major area for improvement has to be getting the right stuff in place for a storefront to compete with AWS Marketplace. Some people might even want to run Windows :-0
Author: Chris Swan
Source:
blog.cohesiveft.com
6 days, 22 hours ago
—
—
Permalink
Google I/O 2013: Keynote
More is available and more is to come: http://www.youtube.com/googledevelopers
Author: Andr.oid Eric
Source: android-er.blogspot.com
I got my invite through today to connect to the new Google Maps. Colour me fking impressed!
By far and away the stand-out feature in the new Google Maps is the integration with Google Earth - and Google Maps users no longer need a plug-in to view Google Earth imagery in Google Maps. But so what? - With all due respects to my friends at the Google Earth Blog I’ve always thought that 3d maps are a bit of a sideshow when it comes to online maps.

But what a sideshow it is! Google Maps now has real-time cloud overlays and, if you zoom out, it also has real-time sun, moon and star imagery! As I almost said before, colour me fcking amazed.
This imagery is of course stunning and will be important to a significant number of Google Maps users - but for most users it will still remain a sideshow. The majority of Google Maps users, in their day-to-day use of Google Maps, will be far more interested in the basics of finding locations, finding local businesses and getting directions.

Well you know I am biased but there is simply no competition. Google’s huge, no really - unbelievably huge - data of local businesses, public transit and nearly everyone’s individual search patterns means that no other map provider can come close to offering anything close to the new Google Maps.
Open Street Maps may have far better map data in many parts of the world, Waze may be able to provide far better direction data in many locations, and numerous sites might be able to offer you better local business reviews. However no other online map provider can give you anywhere near the whole package that is the new Google Maps. It simply delivers in nearly every department you want from an online map!
Of course this review is just scratching at the surface. One of the big selling points of the new Google Maps is that every user gets their own map. Google Maps now responds to every user’s favourite locations, search patterns and the behaviour of their friends on Google+. I have a feeling that this is going to freak out a few tech-savy users. However most users are simply just not going to notice that their map is tailored to their needs and the technophiles are probably going to love it anyway.
Well I’m biased, I am a technophile, and I do love it!
Author: Keir Clarke
Source: www.mapsmaniac.com
Posted by Greg Hartrell, Angana Ghosh, Francesco Nerieri, Francis Ma, and the Google Play services team
Some of the most exciting Android announcements at Google I/O this year are part of our latest Google Play services release, version 3.1.
The new version brings you Google Play games services, part of a new cloud-integrated platform for social gaming based on Google+ identity. Also included are location-based services that make it easier to build efficient location-aware apps. For apps using the popular Google Cloud Messaging platform, you can now take advantage of XMPP messaging and easier setup. Finally, Cross-Platform Single Sign On for Google+ Sign-In is now available to your apps.
You can get started using these APIs and services right away—Google Play services 3.1 is already rolling out to Android devices across the world, with support reaching all the way back to Froyo.
Google Play games services
Games are always popular with Android developers, and the announcement of Google Play game services raised the volume even more.
Google Play games services lets you make your games more social, with achievements, leaderboards, and multiplayer, and they help you extend your user’s games across multiple devices by storing game saves and settings in the cloud.
Several great Android games are already using these new game services, including World of Goo, Super Stickman Golf 2, Beach Buggy Blitz, Kingdom Rush, Eternity Warriors 2, and Osmos.
You can take advantage of the new services right away using the games services SDK included in Google Play services. For all the details, check out the Google Play games services documentation.
Location APIs
If you build location-aware Android apps, you’ll want to check out the new location APIs. They make it easy to build accurate, fast, and efficient apps, with new contextual features.
The Fused Location Provider intelligently manages the underlying location technology and gives you the best location according to your needs. We’ve simplified the location APIs and completely rewritten our location algorithm to make location more accurate, flexible and use less battery.
Using the new geofencing API, your app can set up geographic boundaries around specific locations and then receive notifications when the user enters the leaves those areas.
With apps becoming increasingly contextual, understanding what the user is doing is critical to surfacing the right content. A new activity recognition API makes it easy to check the the user’s current activity — still, walking, cycling, and in-vehicle — with very efficient use of the battery. We use low-power sensors and machine-learning classifiers to recognize the activity, giving you both both high accuracy and low battery usage.
To learn more, head over to our training classes at Making Your App Location Aware or dive directly into the reference docs.
Google Cloud Messaging
We’ve added APIs to make it easier to set up GCM in your apps, and in the service itself we’ve added new messaging capabilities for your apps to use.
A new registration API lets your app register with the service using a single method call and begin receiving messages as soon as the call returns.
Sign Up for Early Access
If you’d like to try out CCS messaging or the User Notifications API, please sign up for early access.
In the GCM service itself we’ve added support for messaging over XMPP with the new GCM Cloud Connection Server (CCS). Your servers now have a persistent connection over which to send large numbers of messages, very quickly, and with no overhead. New APIs in Google Play services let apps send messages back upstream to third-party servers using CCS, without needing to manage network connections. This helps keep battery and data usage to a minimum.
Also new in the GCM service is a User Notifications API. This new API lets you synchronize notifications across a user’s multiple devices — when the user dismisses a notification on one device, the notification disappears automatically from all the other devices. To get started with GCM, head over to the developer documentation.
Google+ Cross-Platform Single Sign On
Many people use apps on multiple devices throughout the day, switching between their laptops, tablets, and mobile devices. After signing-in to an app on one device, it’s natural that when they pick up a different device and use the same app, they would expect to be signed in there as well.
To help you provide this kind of seamless transition between platforms and stay connected with users across devices, we’re adding Cross-Platform Single Sign On to our Google+ Sign-In capabilities.
If your app is already using Google+ Sign-In, you’ve already got support for Cross-Platform Single Sign On. This feature will be enabled automatically over the coming days.
Cross-Platform Single Sign On gives you a great way to build longer-running, cross-platform user experiences, and it dovetails perfectly with the new Google Play games services for bridging game state across devices using the cloud.
To learn more about Google+ Sign-In, check out http://developers.google.com/+.
More About Google Play Services
Google Play Services is our platform for offering you better integration with Google products, and providing new capabilities to use within your apps. To learn more about Google Play services and the APIs available to you through it, visit the Google Services area of the Android Developers site.
Author: Android Developers
Source: android-developers.blogspot.com