Go and the Google Cloud Platform
12 Jun 2013

Andrew Gerrand

* Introduction

In 2011 we announced the [[https://developers.google.com/appengine/docs/go/overview][Go runtime for App Engine]]. Since then, we have continued to improve the Go App Engine experience, and generally improved Go support for the Google Cloud Platform. For instance, the [[http://code.google.com/p/google-api-go-client][google-api-go-client]] provides a Go interface to a range of Google's public APis, including Compute Engine, Cloud Storage, BigQuery, Drive, and many more.

Learn more by watching these talks from Google I/O this year:

* High Performance Apps with Go on App Engine

_The_Go_runtime_for_App_Engine_is_a_high_performance_engine_for_
_running_web_applications._It_produces_fast_responses,_
_starts_instances_in_a_fraction_of_a_second,_makes_the_most_use_
_of_instance_hours,_and_allows_your_app_to_do_serious_processing_
_at_full_machine_speed._
_Come_along_to_hear_how_to_fully_exploit_the_power_of_Go_on_App_
_Engine_and_make_your_web_applications_the_best_they_can_be._

.iframe http://www.youtube.com/embed/fc25ihfXhbg 309 549

* All the Ships in the World

Visualizing Data with Google Cloud and Maps

_Tens_of_thousands_of_ships_report_their_position_at_least_once_
_every_5_minutes,_24_hours_a_day._
_Visualizing_that_quantity_of_data_and_serving_it_out_to_large_
_numbers_of_people_takes_lots_of_power_both_in_the_browser_and_on_the_server._
_This_session_will_explore_the_use_of_Maps,_
_App_Engine,_Go,_Compute_Engine,_BigQuery,_Cloud_Storage,_
_and_WebGL_to_do_massive_data_visualization._

.iframe http://www.youtube.com/embed/MT7cd4M9vzs 309 549
