App Engine for Python Training Course

Course Summary

Learn to quickly build scalable web applications in Python using Google App Engine. App Engine is a an exciting new technology that provides a simple framework and basic web tools to build complete web apps.

NewCircle Google App Engine course for Python will teach you everything you need to know to start building interactive web applications.


Duration [top]

2 days.

Objectives [top]

Get a solid overview of all technologies that go into building applications using App Engine, including Python, HTML/CSS, DataStore. Learn to build and deploy sophisticated applications on Google servers.

Audience [top]

This course doesn't assume any specific programming experience to get started. However, if you do have experience in Python, or another language, this course will get you up to speed with App Engine faster.

Outline [top]

Why Build Applications in the "Cloud"?

  • Infrastructure
  • Scalability

What kind of cloud?

  • Infrastructure clouds (e.g. Amazon EC2)
  • Application platform clouds (e.g. AppEngine)

Google's AppEngine

  • How does it compare to Microsoft Azure?
  • ... to Heroku? Stax?

AppEngine Capabilities Overview

  • App Server
  • Database
  • Authentication via Google
  • General terms and pricing

Using Your AppEngine Account

  • Setup
  • Infrastructure
  • Utilities
  • SDK and integration to development tools
  • Online management of your apps and account

Building Web Pages and Web Services with AppEngine and Python

  • Web apps using the webapp framework
  • Integrating other frameworks (e.g. django)

AppEngine Features and Services

  • Caching via Memcache
  • Calling external services via Urlfetch
  • Sending and receiving email
  • Asynchronous communication with XMPP (Jabber)
  • Image processing
  • Authentication (using Google accounts)
  • Cron (scheduled) jobs
  • Task queues

Bigtable and The Google AppEngine DataStore

  • Differences between DataStore and relational databases
  • Entities and Models
  • CRUD operations and the GQL query language
  • Keys and Entity Groups
  • Queries and Indexes
  • Transactions
  • Additional DataStore features

Additional Integration Options with AppEngine

  • Java
  • Using Java to host other languages: JavaScript, Ruby, etc.