Cloud World

  • Subscribe to our RSS feed.
  • Twitter
  • StumbleUpon
  • Reddit
  • Facebook
  • Digg

Thursday, 28 February 2013

Improve your App Engine skills with Google Developers Academy

Posted on 14:22 by Unknown


Are you developing on Google App Engine today or interested in learning how to use it? If you've gone through all the great App Engine docs and Getting Started tutorials (Python, Java, or Go) but want to take your App Engine skills a step further, then Google Developers Academy (GDA) is the place to go! We launched GDA this past summer at Google I/O 2012, with content for beginners as well as seasoned developers. What can you find on App Engine in GDA today?







If you’re interested in getting more background on what cloud computing is and where App Engine fits into that ecosystem, then this intro class (Introduction to Google App Engine) is for you. Once you’re done with this class, you’ll be ready to tackle the Getting Started tutorial, and after that, move on to the App Engine 101 in Python class.

While some of the material found in App Engine 101 is similar to what's in the Getting Started tutorial, the 101 class targets developers who skipped the tutorial or completed it at some point in the past but don't want to repeat the exact same thing. The main differences include the following changes to the tutorial's content:





  • Use of the Python NDB API

  • Jinja2 templates

  • Discussion of data consistency and datastore indexes



You can use the relational MySQL-compatible Google Cloud SQL service as an alternative to App Engine's native non-relational datastore. Some applications do require a relational database, especially if you’re porting an existing app that relies on one. In this case, you want to learn about Cloud SQL and how to use it with App Engine. That’s why we have the Using Python App Engine with Google Cloud SQL class.

Of course, Google is best known for search. With App Engine's powerful Search API, you can index not only plain text, but also HTML, atoms, numbers, dates, and locations (lat/long). Getting Started with the Python Search API is a two-part class that will indeed get you started: in the first part of the class, you’ll create an application using a variety of data and learn how to index such data (using “documents”). In Part 2, you’ll learn how to execute queries as well as how to update your indexes when you modify your data.

If variety is what you're after, then look no further than the newest class in GDA: Getting Started with Go, App Engine and Google+ API. You will not only learn how to create an App Engine app using the Go programming language, but also learn how to connect to the Google+ API with the Google APIs Client Library for Go.

These are just a few examples of the types of classes you'll find in GDA. We also have content that features many other Google technologies, including Android, Chrome, YouTube, Maps, Drive, and Wallet. We invite you to swing by for a visit soon.




-Posted by Wesley Chun, Google Developer Relations team
Read More
Posted in | No comments

Wednesday, 27 February 2013

Deploying App Engine apps with DevTable

Posted on 11:20 by Unknown


Today’s post comes from Jake Moshenko, founder of DevTable. DevTable is a collaborative hosted IDE which aims to provide a single development environment that can be accessed online from any device or location. It also allows you to collaborate on projects in real-time with your teammates. DevTable supports development and deployment of Google App Engine projects in the cloud.

At DevTable, we support development of Google App Engine apps with Python directly on the cloud, without having to install and run the App Engine SDK locally.  While the App Engine SDK development experience is excellent, it is not yet supported on mobile or web platforms.

Some of the major reasons to use DevTable for App Engine are:



  • Cloud based editing and deployment of your App Engine projects

  • Autocomplete for Python code, including built-in App Engine libraries

  • OAuth deployment, so DevTable never has access to your Google Credentials

  • Native App Engine deployment for production releases

  • Git DVCS integration, including GitHub support

  • Mimic deploy, for faster intermediate testing feedback



To get started, first log in to your DevTable account and create a new project using our Google App Engine template.  This template loads the basic webapp "hello world" project that you’re probably already familiar with from the App Engine documentation.  Follow the instructions to create a new App Engine app and to authorize DevTable to deploy on your behalf.  Don’t worry, we use OAuth deployment, which means we will never ask you for your Google password.








Now that you have everything set up, press the Run Project button and select View on App Engine Mimic, which will deploy the Mimic bootstrap code to a special version of your app.  This may take up to a few minutes, but each test deploy after this should happen instantaneously.  Once Mimic has been deployed, you will see “Hello, world.” proudly displayed in a new browser tab.  Each time you refresh this page, the newest code is pulled from your DevTable project, so editing and testing code is seamless.  Try it now; change the message in your app’s main .py file, then refresh the tab which is showing your project.






Python autocomplete and documentation in DevTable

Mimic works by creating a proxy which intercepts requests to your app and loads your app code dynamically from the datastore.  DevTable keeps this code in sync with your latest changes.  One added bonus to testing your code using DevTable and Mimic is that your test code will be running in the production App Engine environment, so some APIs and capabilities will work that don’t work on the Development Server, such as the App Identity API and making multiple concurrent requests.






Mimic bootstrap code deployment

Once you are happy with how your app works in Mimic, you may want to deploy your application to production. Click the Deploy button, to deploy your app directly to App Engine, which may take a few minutes.  Once deployment is complete, you can view your app at the production url, which is probably something like .appspot.com.

What can you do with this? You can build and deploy apps completely in the cloud.  You can use DevTable as an emergency backup editor to check out your code from Git, fix a small bug, and push to production, without having access to your development machine, from the beach!  You can use our real-time collaboration support to pair program an App Engine app concurrently across the world.  Our users are constantly surprising us with new ways to use DevTable, and we’re excited to see what you can come up with too!

We encourage you to get started now building apps using DevTable on App Engine.  If you have any questions or suggestions, we are always available at support@devtable.com.  Just send us an email and we’ll get back to you as quickly as we can.




- Contributed by Jake Moshenko, founder of DevTable
Read More
Posted in | No comments

Tuesday, 26 February 2013

New Google Cloud Platform case studies - including Angry Birds and more

Posted on 10:34 by Unknown


One of the most rewarding parts of working on Google App Engine is seeing our developers create groundbreaking new applications on top of our infrastructure.  To help our current and prospective users gain insight into the vast array of these applications, we recently added a section to the Google Cloud Platform site with a collection of case studies.  Whether you’re interested in learning about how businesses are building on our platform or just looking for inspiration for your next project, we hope you find these pieces informative.

Rovio
Creator of the blockbuster “Angry Birds” game series used App Engine when creating web versions of their game.  They were able to create customized versions of their game in just 2 weeks using App Engine, allowing them to capitalize on opportunities to grow their business.

GetAround
TechCrunch Disrupt award-winning car sharing service used App Engine to build a marketplace connecting car owners to people looking to rent cars.  They scaled their product without adding additional staff.

MAG Interactive
Developer of mobile casual games, including the hit game Ruzzle, scaled their backend using App Engine.  They grew to over 5 million users, and experienced “no scalability issues at all.”

Nubbius
The Cloud Gate used App Engine to create nubbius, a software-as-a-service offering for lawyers to manage their workflow from anywhere.  They saved more than $130,000 per year while scaling rapidly.

RedBus
Online travel agency used Google BigQuery to unify tens of thousands of bus schedules into a single booking operation.  They analyzed data sets as large as 2 TB in less than 30 seconds, and spent 80% less than they would have on a Hadoop infrastructure,

This is a sample of the many case studies we have on our site.  Check out cloud.google.com/customers to see the full list.  You can read about companies varying in size, industry, and use cases, who are using Google Cloud Platform to build their products and businesses.




- Posted by Zafir Khan, Product Marketing Manager
Read More
Posted in | No comments

Thursday, 21 February 2013

Google Cloud Platform introduces new support packages

Posted on 11:00 by Unknown


Support is as important as product features when choosing a platform for your applications. And let’s face it, sometimes we all need a bit of help. No matter which Google Cloud Platform services you are using—App Engine, Compute Engine, Cloud Storage, Cloud SQL, BigQuery, etc.—or what time of day, you should be able to get the answers you need. While you can go to Stack Overflow or Google Groups, we realize some of you may need 24x7 coverage, phone support or direct access to a Technical Account Manager team.

To meet your support requirements, we’re introducing a comprehensive collection of support packages for services on Google Cloud Platform, so you can decide what level best fits your needs:



  • Bronze: All customers get access to online documentation, community forums, and billing support. (Free)

  • Silver: In addition to Bronze, you can email our support team for questions related to product functionality, best practices, and service errors. ($150/month)

  • Gold: In addition to Silver, you'll receive 24x7 phone support and consultation on application development, best practices or architecture for your specific use case. (Starts at $400/month)

  • Platinum: The most comprehensive and personalized support. In addition to Gold, you’ll get direct access to a Technical Account Manager team. (Contact Sales for more information)



Sign up or click here to find out more information about the new Google Cloud Platform support options.




Posted by Brett McCully, Google Cloud Platform team
Read More
Posted in | No comments

Java 7 and Cloud Endpoints Preview

Posted on 10:16 by Unknown


Today we are announcing two new preview features: Google App Engine Java 7 runtime support and Google Cloud Endpoints. Preview features are ‘experimental’ features on a path towards general availability.




Java 7 Runtime Support for App Engine




The App Engine Java 7 runtime allows App Engine developers to keep pace with innovations in the Java language and runtime. It is important that you begin testing your applications with the new Java 7 runtime before the complete rollout in a few months.



Some of the language features you now have access to include:



invokedynamic support, which allows developers, tools providers, and language implementations to take advantage of a new bytecode, invokedynamic, to handle method invocations efficiently even when there is no static type information. For example:





public static void invokeExample() {
  String s;
  MethodType mt;
  MethodHandle mh;
  

  MethodHandles.Lookup lookup = MethodHandles.lookup();
  MethodType mt = MethodType.
methodType(String.class, char.class,
         
char.class);
  MethodHandle mh = lookup.
findVirtual(String.class, "replace", mt);
  s = (String) mh.
invokeExact("App Engine Java 6 runtime",'6','7');
  System.
out.println(s);
}




Try-with-resources, which helps avoid memory leaks and related bugs by automatically closing resources that are used in a try-catch statement.





public static void viewTable(Connection con, String query) throws SQLException {
  
try (
     Statement stmt = con.createStatement();
     ResultSet rs = stmt.executeQuery(query)
  ) {
     
while (rs.next()) {
        
// process results
        
//
     }
  }
catch (SQLException e) {
     
// con resource is auto-closed, no need to do anything here!
     
//
  }
}




Flexible Type Creation when using generics, enabling you to create parameterized types more succinctly. For example, you can write:





Map> myMap = new HashMap<>();



instead of:



Map> myMap = new HashMap>();



In addition to the language features listed above, the App Engine Java 7 runtime also includes:


  • Use of String class in Switch statements.


  • Expression of binary literals using simple prefixes 0b or 0B.


  • Single catch blocks that can handle multiple exceptions.


  • Simplified varargs method invocation.



Want to get started now? Download the latest App Engine Java SDK and then check out the docs here.





Cloud Endpoints Preview




Have you ever wanted a simple way to get a cloud backend for that Android or iPhone app you are working on? Wish it was easier to expose RESTful APIs from your web application? Google Cloud Endpoints simplifies building highly scalable and flexible backends for your web and mobile applications. Use Cloud Endpoints to store application data in the cloud that spans both devices and users. You can now easily expose your own authenticated, reliable, REST-based APIs hosted from an App Engine application and consume them in your Android, iOS, or web clients. Deeply integrated authentication support allows your users to have a transparent yet secure experience accessing your services. You have access to strongly typed client libraries for your custom service optimized for Android and iOS.






To use Cloud Endpoints, you simply write a Java or Python class with methods you want to expose to web or mobile clients. You then annotate the methods with attributes that control exactly how they are represented in REST interfaces on the wire. Finally, use Cloud Endpoints to generate your strongly-typed client libraries for Android, iOS and a lightweight JavaScript library.

For example, you can create a simple class to list some important data:



public class SuperHeroes {
  
public List listSuperHeroes() {
     List list =
new ArrayList();
     list.
add(new SuperHero ("Champion of the Obvious", "Brad Abrams"));
     list.
add(new SuperHero ("Mr. Justice", "Chris Ramsdale"));

     
return list;
  }
}




Then, expose it over a standard REST interface with a simple attribute and a versioning pattern.





@Api(name = "superheroes", version = "v1")public class SuperHeroesV1 {   ...
}



Now you have a simple REST interface.





$ curl http://localhost:8888/_ah/api/superheroes/v1/superheroes
{
"items": [
 {
  
"knownAs" : "Champion of the Obvious",
  
"realName" : "Brad Abrams"
 },
 {
  
"knownAs" : "Mr. Justice",
  
"realName" : "Chris Ramsdale"
 }


And you can make strongly typed calls from your Android clients:





Real result = superheroes.list().execute();



Or Objective-C iOS client:



GTLQuerySuperHeroesV1 *query = [GTLQuerySuperHeroesV1 queryForSuperHeroesList];
[service executeQuery:query completionHandler:^(GTLServiceTicket *ticket,

GTLSuperHeroes *object, NSError *error) {

 NSArray *items = [object items];
}];




Or the web client in JavaScript:





// ...
var ROOT = 'https://' + window.location.host + '/_ah/api';
gapi.client.load(
'superheroes', 'v1',
                loadSuperheroesCallback, ROOT);
// Get the list of superheroes
gapi.client.superheroes.superheroes.list().execute(
function(resp) {
 displaySuperheroesList(resp);
});



Read the documentation for Java or Python to discover how you can build a simple tic-tac-toe game using Cloud Endpoints.



To get started with Cloud Endpoints, download the App Engine 1.7.5 SDK and the latest Google Plugin for Eclipse. Be sure to look at the docs and follow along in the discussion forums on Stack Overflow.



For more on using Cloud Endpoints with Python, check out +Danny Hermes and +Dan Holevoet on Google Developers Live.



-Posted by Brad Abrams, Product Manager, and Chris Ramsdale, Product Manager
Read More
Posted in | No comments

Thursday, 14 February 2013

New Google App Engine training videos now available

Posted on 12:33 by Unknown


Do you wonder how App Engine orchestrates hundreds of instances so smoothly? Can you imagine how Datastore queries and transactions work behind the scenes? Do you want to know the magic of how App Engine experts dramatically reduce traffic costs using edge caching? 



We’ve just published a series of great App Engine training videos to help you better understand our platform. These seven voice-over technical videos provide insight for both newbies as well as seasoned App Engine developers.  The videos delve into each major App Engine component’s operation and how a developer can best utilize them. 









Each video runs for half an hour or less. We recommend you follow the videos in sequence if you are new to App Engine, or you can pick and choose if you’re already familiar with the platform.



Throughout the year, we intend to publish codelabs to complement the voice-over training videos, not only for App Engine, but for  Google Cloud Storage, Google Cloud SQL, Google BigQuery, and Google Compute Engine as well.  So stay tuned for updates!


-Posted by Gary Downing, Cloud Platform Solutions Technical Training Manager
Read More
Posted in | No comments

Wednesday, 13 February 2013

App Engine 1.7.5 Released

Posted on 12:09 by Unknown


After a brief break last month, the App Engine team is back on our monthly release cycle.  We made lots of improvements to our platform in 2012 and look forward to delivering more this year.

In 1.7.5, we are releasing High-Memory Instances and Mail Bounce Notifications to General Availability.  We’ve heard the feedback that you would like to have more memory without having to pay for more CPU.  With this release, you can now utilize F4 or B4 instances with 1GB memory, which is double the amount of memory available before. Mail Bounce Notifications notify apps when mail sent through App Engine fails to deliver, so you’ll always know whether your communications are going through.

We are also introducing Experimental support for the Java 7 runtime and Google Cloud Endpoints.  Improvements in Java 7 include strings in switch statements, improved type inference for generic instance creation, and the ability to use InvokeDynamic().  Cloud Endpoints makes it easy to expose your code as RESTful and RPC services that can be easily consumed by your own web and mobile applications. Finally, an update to the Google Plugin for Eclipse makes it possible for developers to build App Engine backends that communicate with client-side Android applications via Google Cloud Messaging for Android and Cloud Endpoints.

The complete list of features and bug fixes for 1.7.5 can be found in our release notes. For App Engine coding questions and answers check us out on Stack Overflow, and for general discussion and feedback, find us on our Google Group.  You can also subscribe to the Google Cloud Platform newsletter and read our February edition.  

-Posted by Chris Ramsdale, Product Manager



Read More
Posted in | No comments

Tuesday, 12 February 2013

Research Projects on Google App Engine

Posted on 10:15 by Unknown


Last spring Google University Relations announced an open call for proposals for Google App Engine Research Awards. We invited academic researchers to use Google App Engine for research experiments and analysis, encouraging them to take advantage of the platform’s ability to manage heavy data loads and run large-scale applications. Submissions included proposals in various subject areas such as mathematics, computer vision, bioinformatics, climate and computer science. We selected seven projects and have awarded each $60,000 in Google App Engine credits recognizing their innovation and vision.




Today we would like to share a brief introduction of the winning projects and their Principal Investigators:



  • K. Mani Chandy, Simon Ramo Professor and Professor of Computer Science, California Institute of Technology

    Cloud-based Event Detection for Sense and Response: Develop a low-cost alternative to traditional seismic networks. The image below is taken from the Community Seismic Network map showing active clients and events in real time.





  • A dense network of seismic stations enables the Community Seismic Network to perform a finer-grained analysis of seismic events than possible with existing seismic networks.

  • Lawrence Chung, Associate Professor, The University of Texas at Dallas

    Google App Engine: Software Benchmark and Google App Engine Simulation Forecaster: Develop a tool to estimate software performance and cost on Google App Engine.

  • Julian Gough, Professor, University of Bristol, UK

    Personalised DNA Analysis: Develop a service that provides personal DNA analysis.

  • Ramesh Raskar, PhD, MIT Media Lab; Dr. Erick Baptista Passos, IFPI (Federal Institute of Technology, Brazil)

    VisionBlocks: develop a tool that delivers computer vision to people everywhere. The image below shows a current prototype implementation of VisionBlocks.




  • Many algorithms are already included, and you'll be able create your own blocks as well.

  • Norman Sadeh, Professor, Director of Mobile Commerce Lab, School of

    Computer Science, Carnegie Mellon University

    Mapping the Dynamics of a City & Nudging Twitter Users: uncovering local collective knowledge about the a city using social media.

  • William Stein, Professor of Mathematics, University of Washington

    Sage: Creating a Viable Free Open Source Alternative to Magma, Maple, Matlab, and Mathematica.

  • Enrique Vivoni, Associate Professor, Hydrologic Science, Engineering & Sustainability, Arizona State University

    Cloud Computing-Based Visualization and Access of Global Climate Data Sets: provide scientific data on global climate trends.


Congratulations to the award winners! We are excited about the proposals’ creativity and innovation and look forward to learning about their discoveries. To read more about specific projects, go here.


-Posted by Andrea Held, Program Manager, Google University Relations



Read More
Posted in | No comments

Monday, 4 February 2013

Scaling SongPop to 60 million users with App Engine and Google Cloud Storage

Posted on 11:41 by Unknown


Continuing our Developer Insights series, today’s guest bloggers are Olivier Michon, CTO, and Alexis Hanicotte, software engineer, from Fresh Planet, maker of the popular mobile application SongPop.  SongPop is a social application where players compete to be the fastest to guess the name of a song or artist.




SongPop is a social mobile app where players compete on who will be the fastest to guess a songs’ artist or title. It is a huge success for our very small team of just 6 engineers. We now have more than 60 million users, were the number 5 most downloaded iOS game of 2012, and went from 0 to more than 10k queries/second on our servers in less than 6 months. This has been made possible in large part because we run on Google App Engine.






App Engine allows us to quickly prototype, iterate and release our games.  We’ve been accumulating experience with the platform since 2009, but really saw the power of autoscaling once SongPop became a hit.





Our experience scaling with App Engine




SongPop was released in May 2012.  During our growth to our first 100,000 daily active users (DAU), our App Engine backend scaled smoothly.  This allowed us to spend our time making actual improvements to the game experience, while our user growth continued at a rapid pace.



We opened a Premier Account with App Engine around the time when we reached 100,000 DAU which gave us access to live customer support.  It came in handy when we encountered two downtimes, with one lasting just 10 minutes and the other for 1 hour.  But we were able to promptly reach Premier Support and had Google engineers investigate these issues with us.  



Once we reached 500,000 DAU, we applied a variety of optimization ideas to reduce latency.  For example, we used to have user data spread over many models, but we combined them into a single entry in the Datastore to reduce read operations.  We also often needed the list of a user’s opponents, so instead of querying every time, we cached this result using Memcache.  It only took one engineer and just 4 days of work to reduce the latency with these optimizations.   



As we reached the milestone of 1 million DAU, some Datastore queries (used to find random opponents in the game) showed high latencies and a high rate of timeouts.  We had to enforce deadlines, implement better fallbacks and identified, with the help of Premier Support, that degraded performance came from the fact that our queries were relying on many different indexed properties.  So the solution was simple - either add a composite index with all the properties we needed or combine into a single one.



Using App Engine + Google Cloud Storage



For each game session, our users need to download song samples in order to play. It is critical that this data gets delivered fast and reliably wherever the user is located. We chose to use Google Cloud Storage for this use case.   It has proved to provide high performance content delivery, as we have been able to serve 17 terabytes/day of songs and images worldwide.


In addition to its reliability, Cloud Storage is great because of its integration with App Engine. We can easily read and write files from our application to Cloud Storage using the same syntax as we would use to write local files (using Python). We found it intuitive and convenient because you do not have to manage opaque keys to retrieve your files (just use the path you specified), and you can browse your files through a directory-like structure. Cloud Storage also allows you to manage access rights, can be used with Google BigQuery, and it is priced affordably compared to other solutions we considered.









Architecture diagram of SongPop









Long live App Engine!






When we speak to other game developers, we always recommend that they use App Engine.  We’ve used other services such as EC2 from Amazon Web Services for other games before, but we’ve found App Engine to be a better service for our needs.  We don’t want to spend time setting up servers and load balancing, when we could instead use that time to build great games and let our service provider handle the infrastructure for us.






When we compare the development of SongPop to stories of other apps, we’re thankful that App Engine allowed us to have only one engineer working full-time on the backend portion of our app.  Even better, he was able to do additional work on adding new features to the game instead of solely focusing on infrastructure issues.  With App Engine, scaling our game was easy.





Others things we want to share




  • Do not worry if documented resources limits and rates look too small, they are just there to make sure one app does not abuse any resource, but they can scale. Most of our limits have been increased by 18-fold! We had days where we made 230,000,000 UrlFetch API calls, for instance.

  • The Location headers is a really great feature,  because it is easily accessible for a wide variety of use cases, such as selecting users’ opponents or building their game profile.




Contributed by Olivier Michon and Alexis Hanicotte, FreshPlanet



Posted by Zafir Khan, Product Marketing Manager, Google App Engine

Read More
Posted in cloud-storage, developer-insights | No comments
Newer Posts Older Posts Home
Subscribe to: Posts (Atom)

Popular Posts

  • A Day in the Cloud, new articles on scaling, and fresh open source projects for App Engine
    The latest release of Python SDK 1.2.3, which introduced the Task Queue API and integrated support for Django 1.0, may have received a lot ...
  • Tutorial: Adding a cloud backend to your application with Android Studio
    Android Studio lets you easily add a cloud backend to your application, right from your IDE. A backend allows you to implement functionality...
  • Outfit 7’s Talking Friends built on Google App Engine, recently hit one billion downloads
    Today’s guest blogger is Igor Lautar, senior director of technology at Outfit7 (Ekipa2 subsidiary), one of the fastest-growing media enterta...
  • Pushing Updates with the Channel API
    If you've been watching Best Buy closely, you already know that Best Buy is constantly trying to come up with new and creative ways to...
  • Bridging Mobile Backend as a Service to Enterprise Systems with Google App Engine and Kinvey
    The following post was contributed by Ivan Stoyanov , VP of Engineering for Kinvey, a mobile Backend as a Service provider and Google Cloud ...
  • New in Google Cloud Storage: auto-delete, regional buckets and faster uploads
    We’ve launched new features in Google Cloud Storage that make it easier to manage objects, and faster to access and upload data. With a tiny...
  • TweetDeck and Google App Engine: A Match Made in the Cloud
    I'm Reza and work in London, UK for a startup called TweetDeck . Our vision is to develop the best tools to manage and filter real time ...
  • New Admin Console Release
    Posted by Marzia Niccolai, App Engine Team Today we've released some new features in our Admin Console to make it easier for you to mana...
  • SUSE Linux Enterprise Server Now Available on Google Compute Engine
    Today's guest post comes from Michael Miller, Vice President of Global Alliances and Marketing at SUSE. In this post, Michael describes ...
  • SendGrid gives App Engine developers a simple way of sending transactional email
    Today’s guest post is from Adam DuVander, Developer Communications Director at SendGrid. SendGrid is a cloud-based email service that deliv...

Categories

  • 1.1.2
  • agile
  • android
  • Announcements
  • api
  • app engine
  • appengine
  • batch
  • bicycle
  • bigquery
  • canoe
  • casestudy
  • cloud
  • Cloud Datastore
  • cloud endpoints
  • cloud sql
  • cloud storage
  • cloud-storage
  • community
  • Compute Engine
  • conferences
  • customer
  • datastore
  • delete
  • developer days
  • developer-insights
  • devfests
  • django
  • email
  • entity group
  • events
  • getting started
  • google
  • googlenew
  • gps
  • green
  • Guest Blog
  • hadoop
  • html5
  • index
  • io2010
  • IO2013
  • java
  • kaazing
  • location
  • mapreduce
  • norex
  • open source
  • partner
  • payment
  • paypal
  • pipeline
  • put
  • python
  • rental
  • research project
  • solutions
  • support
  • sustainability
  • taskqueue
  • technical
  • toolkit
  • twilio
  • video
  • websockets
  • workflows

Blog Archive

  • ▼  2013 (143)
    • ►  December (33)
    • ►  November (15)
    • ►  October (17)
    • ►  September (13)
    • ►  August (4)
    • ►  July (15)
    • ►  June (12)
    • ►  May (15)
    • ►  April (4)
    • ►  March (4)
    • ▼  February (9)
      • Improve your App Engine skills with Google Develop...
      • Deploying App Engine apps with DevTable
      • New Google Cloud Platform case studies - including...
      • Google Cloud Platform introduces new support packages
      • Java 7 and Cloud Endpoints Preview
      • New Google App Engine training videos now available
      • App Engine 1.7.5 Released
      • Research Projects on Google App Engine
      • Scaling SongPop to 60 million users with App Engin...
    • ►  January (2)
  • ►  2012 (43)
    • ►  December (2)
    • ►  November (2)
    • ►  October (8)
    • ►  September (2)
    • ►  August (3)
    • ►  July (4)
    • ►  June (2)
    • ►  May (3)
    • ►  April (4)
    • ►  March (5)
    • ►  February (3)
    • ►  January (5)
  • ►  2011 (46)
    • ►  December (3)
    • ►  November (4)
    • ►  October (4)
    • ►  September (5)
    • ►  August (3)
    • ►  July (4)
    • ►  June (3)
    • ►  May (8)
    • ►  April (2)
    • ►  March (5)
    • ►  February (3)
    • ►  January (2)
  • ►  2010 (38)
    • ►  December (2)
    • ►  October (2)
    • ►  September (1)
    • ►  August (5)
    • ►  July (5)
    • ►  June (6)
    • ►  May (3)
    • ►  April (5)
    • ►  March (5)
    • ►  February (2)
    • ►  January (2)
  • ►  2009 (47)
    • ►  December (4)
    • ►  November (3)
    • ►  October (6)
    • ►  September (5)
    • ►  August (3)
    • ►  July (3)
    • ►  June (4)
    • ►  May (3)
    • ►  April (5)
    • ►  March (3)
    • ►  February (7)
    • ►  January (1)
  • ►  2008 (46)
    • ►  December (4)
    • ►  November (3)
    • ►  October (10)
    • ►  September (5)
    • ►  August (6)
    • ►  July (4)
    • ►  June (2)
    • ►  May (5)
    • ►  April (7)
Powered by Blogger.

About Me

Unknown
View my complete profile