Posted:
As students headed back to school, we were busy launching new features and programs. Here’s what we were up to in September:

$100,000 for startups on Cloud Platform
At the Google for Entrepreneurs Global Partner Summit, we announced Google Cloud Platform for Startups, a program to help early-stage companies get off the ground and into the cloud. Armed with $100,000 in Cloud Platform credit, 24/7 support and access to our technical solutions team, startups on Cloud Platform can now launch and scale faster than ever. Find out more info about it here.

New features to make your Cloud Platform experience even better
We’re always looking for ways to improve Cloud Platform. This month, we unveiled HTTP load balancing to all users around the world, released our Cloud Platform-specific Node.js client library gcloud-node, added Google Cloud SQL read replicas for MySQL 5.5, and expanded Push-to-Deploy’s support to Bitbucket Git repositories. Phew, that’s a lot.

VendAsta pulls back the curtain
Our friends at VendAsta help companies manage their brands by figuring out what’s shaping their online reputation and thinking up ways to improve it. They started building on Google App Engine from day one and were able to focus on product development instead of other issues like server redundancy, data replication, peering relationships, power backup, cooling systems, application scaling, and data backups. Now they monitor and analyze mentions of more than 200,000 businesses. Read up on how they did it here.

Sony shed light on how they broke a YouTube record with App Engine
On November 23rd, 2013, Sony held a 7-hour livestream for boyband One Direction, which broke the record for the biggest livestream ever held on YouTube. In September, we published a case study on the App Engine app that Sony built to play alongside the live stream. At its peak, the app performed 9,000 queries per second!

Customer video series kicks off
During Google I/O this year, we met with customers to hear how they’ve achieved greatness with Cloud Platform. In an effort to share these stories, we’ve kicked off a video series featuring customers who use Cloud Platform in a variety of ways. Hear from BetterCloud, Streak, and SMART on how they were able to hit the market running, and learn how Audi uses Cloud Platform as part of their connected car initiatives.

Registrations are rollling in
Over 6000 people have signed up to attend Google Cloud Platform Live - either via Livestream or in-person in San Francisco. We still have a few spots left, so visit cloud.google.com/LIVE to join us on November 4.


-Posted by Charlene Lee, Product Marketing Manager

Posted:

Cross-posted on the Google for Education blog and Google Research blog

Modern mathematics research is distinguished by its openness. The notion of "mathematical truth" depends on theorems being published with proof, letting the reader understand how new results build on the old, all the way down to basic mathematical axioms and definitions. These new results become tools to aid further progress.

Nowadays, many of these tools come either in the form of software or theorems whose proofs are supported by software. If new tools produce unexpected results, researchers must be able to collaborate and investigate how those results came about. Trusting software tools means being able to inspect and modify their source code. Moreover, open source tools can be modified and extended when research veers in new directions.

In an attempt to create an open source tool to satisfy these requirements, University of Washington Professor William Stein built SageMathCloud (or SMC). SMC is a robust, low-latency web application for collaboratively editing mathematical documents and code. This makes SMC a viable platform for mathematics research, as well as a powerful tool for teaching any mathematically-oriented course. SMC is built on top of standard open-source tools, including Python, LaTeX, and R. In 2013, William received a 2013 Google Research Award which provided Google Cloud Platform credits for SMC development. This allowed William to extend SMC to use Google Compute Engine as a hosting platform, achieving better scalability and global availability.
SMC allows users to interactively explore 3D graphics with only a browser
SMC has its roots in 2005, when William started the Sage project in an attempt to create a viable free and open source alternative to existing closed-source mathematical software. Rather than starting from scratch, Sage was built by making the best existing open-source mathematical software work together transparently and filling in any gaps in functionality.

During the first few years, Sage grew to have about 75K active users, while the developer community matured with well over 100 contributors to each new Sage release and about 500 developers contributing peer-reviewed code.

Inspired by Google Docs, William and his students built the first web-based interface to Sage in 2006, called The Sage Notebook. However, The Sage Notebook was designed for a small number of users and would work for a small group (such as a single class), but soon became difficult to maintain for larger groups, let alone the whole web.

As the growth of new users for Sage began to stall in 2010, due largely to installation complexity, William turned his attention to finding ways to expand Sage's availability to a broader audience. Based on his experience teaching his own courses with Sage, and feedback from others doing the same, William began building a new Web-hosted version of Sage that can scale to the next generation of users.

The result is SageMathCloud, a highly distributed multi-datacenter application that creates a viable way to do computational mathematics collaboratively online. SMC uses a wide variety of open source tools, from languages (CoffeeScript, node.js, and Python) to infrastructure-level components (especially Cassandra, ZFS, and bup) and a number of in-browser toolkits (such as CodeMirror and three.js).

Latency is critical for collaborative tools: like an online video game, everything in SMC is interactive. The initial versions of SMC were hosted at UW, at which point the distance between Seattle and far away continents was a significant issue, even for the fastest networks. The global coverage of Google Cloud Platform provides a low-latency connection to SMC users around the world that is both fast and stable. It's not uncommon for long-running research computations to last days, or even weeks -- and here the robustness of Google Compute Engine, with machines live-migrating during maintenance, is crucial. Without it, researchers would often face multiple restarts and delays, or would invest in engineering around the problem, taking time away from the core research.

SMC sees use across a number of areas, especially:

  • Teaching: any course with a programming or math software component, where you want all your students to be able to use that component without dealing with the installation pain. Also, SMC allows students to easily share files, and even work together in realtime. There are dozens of courses using SMC right now.
  • Collaborative Research: all co-authors of a paper can work together in an SMC project, both writing the paper there and doing research-level computations.

Since launching SMC in May 2013, there are already more than 20,000 monthly active users who've started using Sage via SMC. We look forward to seeing if SMC has an impact on the number of active users of Sage, and are excited to learn about the collaborative research and teaching that it makes possible.

-Posted by Craig Citro, Software Engineer

Posted:
We continue to make improvements to Google Cloud Platform and deliver new and better capabilities to enable our developers to add resilience, performance and robustness to their applications on Google Compute Engine.

In June, we unveiled Google’s HTTP load balancing to the world. Since then, many Cloud Platform customers have signed up and experienced its performance. Customers who are using it for their production site experience a significant performance benefit. With countless hours of real-world testing and feedback from you, we are now ready to open it for preview to all customers. As part of the launch, we have added HTTP load balancing to the Developers Console and also added some new commands in gcloud to let you easily administer and monitor HTTP load balancing.

Built on top of the same frontend infrastructure as Google’s own services such as search, Gmail and YouTube, Google’s HTTP load balancing can:

  • load balance HTTP-based traffic over instances in multiple Compute Engine regions
  • intelligently select the optimal path between your users and your instances by using network proximity and backend capacity information,
  • expose your entire app via a single global external IP address, resulting in much simplified DNS setup,
  • filter out TCP SYN flood attacks,
  • route user requests to different backend groups based on host and URL path prefix, and
  • allow you to administer and monitor via RESTful API, Cloud SDK and the newly added UI in Developers Console.

Please review the latest documentation about features and region-free pricing. Also, our YouTube video from Google I/O in June shares some history of Google’s network infrastructure which gave rise to load balancing on Cloud Platform.

Thank you for your continued support. Happy load balancing!

-Posted by Gary Ling, Product Manager

Posted:
Today's post is the latest in our series of videos that look at how customers are taking advantage of Google Cloud Platform. 

All too often, developers spend their time troubleshooting bugs or maintaining existing systems rather than advancing new projects and getting them to market. With Cloud Platform, we want to make sure you can focus on building great features and apps, not troubleshooting bugs. Cloud Platform automates many common infrastructure-management tasks needed to keep your app up and running— so you can focus on code. Hear from our customers including allthecooks, BetterCloud, Streak, and SMART Technologies to learn just how Cloud Platform helps boost their developer productivity in the video below.


-Posted by Kelly Rice, Product Marketing Manager

Posted:
Today’s guest blog comes from Jason Collins, chief technical officer of VendAsta, creator of a platform that helps small and medium businesses monitor and manage their online reputations. VendAsta’s customers are large media organizations, such as Gannett, McClatchy and The Hearst Corporation, that then sell the VendAsta platform to businesses.

When we founded VendAsta in 2008, we had great ideas about helping millions of small local businesses manage their brands and local reputation. At the same time, we knew that we didn’t want to go through the headache of building our own data center – some of us had done that before at a real estate startup and it was painful. With fortunate timing, Google App Engine launched at the same time we founded VendAsta, and it was an easy decision to use Google’s infrastructure for building and testing applications. As Google added even more features to App Engine and made it a better product, we knew we’d made the right decision.

In fact, our very first lines of code were written on App Engine. We liked not worrying about server redundancy, data replication, peering relationships, power backup, cooling systems, application scaling, or data backups. We could simply focus on the business logic of our applications, and what we wanted to deliver to our end users. Focusing on the product got us where we are today – our platform monitors the web for any mention on over 200,000 local businesses, analyzes the social content, and helps them figure out what they need to respond to and take action on. Once a business understands its online reputation, it can take steps to improve it, attracting more customers and increasing revenue.

Large architectural strides can be made when you commit to a platform and align with the platform's vision. VendAsta has made that decision, and we’re realizing the benefits of using the full Google Cloud Platform feature set. Today, we have about 75 applications running on App Engine and Google Cloud Datastore, including Social Marketing, a tool that helps businesses share content across social channels, and Reputation Management, which shows businesses what customers are saying about them online.

We’re leveraging several other parts of Cloud Platform as well: we use Google BigQuery for structured analysis to perform multi-location analyses for large brands. With BigQuery, we can build data analytics “hypercubes,” using data from thousands of local businesses – like a chain of thousands of car dealerships that wants to compare the reputations of East Coast locations against those on the West Coast. We use BigQuery to analyze the data, then we use Google Cloud SQL to generate the reports that clients need. Our large number of applications are able to communicate reliably with one another using Google Cloud Pub/Sub as an asynchronous messaging system.

Running our business on the cloud gives us the scalability we need to remain competitive. We have the freedom to seek out more partners who will buy our platform and bring it to their customers, without being concerned about our ability to handle customer requests to onboard thousands or tens of thousands of accounts. And all that time saved by not worrying about our infrastructure has helped us bring more and better product features to the small and medium businesses that rely on VendAsta.

-Contributed by Jason Collins, chief technical officer of VendAsta

Posted:
A few months ago, we rolled out support for Push-To-Deploy with GitHub repositories. Today we are happy to extend Push-To-Deploy’s support to Bitbucket Git repositories. By connecting your App Engine project to your Bitbucket Git repository, you can trigger a deployment of your Java, Python or PHP app by pushing to the project’s master branch on Bitbucket.

Push to Deploy automates your build, test and deploy process triggered by your familiar git commands. It makes delivering code changes to your application easy, safe and fast. Furthermore, managing your release on Google Cloud Platform gives you access to the other exciting devops tools such as Log to Source linking.

"Bitbucket users can now easily deploy their apps to Google App Engine." said Jens Schumacher, Group Product Manager at Atlassian. "With Push-to-Deploy, developers can trigger a deployment by pushing to the repository’s master branch or by merging an approved pull request on Bitbucket."

Let’s walk through an example.

Connecting the repository
  1. Go to the Google Developers Console and create a project or click on an existing project that you wish to sync with Bitbucket.
  2. Click Source Code and then Browse in the left-hand navigation panel.
  3. The next step is to link your project’s repository to Bitbucket.

    If your project does not have git repo or has an empty git repo, you will come directly to the “Source Repository Settings” page. Click “Connect” below the Bitbucket logo.
    If your project has a non empty git repo, you will see a screen listing the content of the current repo. You can change repo setting to connect with a Bitbucket repo (note that this will override the current content of the Project’s repo). Click the Settings icon to get to the “Source Repository Settings” page shown above and then click “Connect” below the Bitbucket logo.
  4. You will be redirected to Bitbucket to authenticate and grant access to your Bitbucket repositories. Click “Grant access”. You may be prompted to log into your Bitbucket account.
  5. Once you have granted access, you will see a list of all Bitbucket Git repositories that you have access to. Choose the repository that you want to connect this project to.
  6. Read and accept the consent option in the dialog box and click Connect.
  7. The Bitbucket repository now appears on the Repo Settings page
  8. You can setup your release pipeline following these instructions
  9. Once your release pipeline is setup, every time you push to your project’s master branch on Bitbucket using git push origin master the source code will be deployed to App Engine. The Release page also shows you the status of the current and past deployments.
-Posted by Rae Wang, Product Manager

Posted:
Today we are announcing a new category of client libraries that has been built specifically for Google Cloud Platform. The very first library, gcloud-node, is idiomatic and intuitive for Node.js developers. With today’s release, you can begin integrating Cloud Datastore and Cloud Storage into your Node.js applications, with more Cloud Platform APIs and programming languages planned.

The easiest way to get started is by installing the gcloud package using npm:

$ npm install gcloud

With gcloud installed, your Node.js code is simpler to write, easier to read, and cleaner to integrate with your existing Node.js codebase. Take a look at the code required to retrieve entities from Datastore:

var gcloud = require('gcloud');

var dataset = new gcloud.datastore.Dataset({
projectId: 'my-project',
keyFilename: '/path/to/keyfile.json' // Details at 
              //https://github.com/googlecloudplatform/gcloud-node#README
});

dataset.get(dataset.key('Product', 123), function(err, entity) {
console.log(err, entity);
});

gcloud is open-sourced on Github; check out the code, file issues and contribute a PR - contributors are welcome. Got questions? Post them on StackOverflow with the [gcloud-node] tag.

Learn more about the Client Library for Node.js at http://googlecloudplatform.github.io/gcloud-node/ and try gcloud-node today.

-Posted by JJ Geewax, Software Engineer

Node.js is a trademark of Joyent, Inc. and npm is a trademark of npm, Inc.