Google App Engine Deep Dive

Course

April 30th, 2018

Intro Video

Photo of Joseph Lowery

Joseph Lowery

Google Cloud Training Architect II in Content

Length

06:48:50

Difficulty

Intermediate

Course Details

This course is designed for those who want to learn how to use Google App Engine, when App Engine is an appropriate choice, which App Engine environment to choose and how to build an app and then manage it.

Syllabus

Course Introduction

Getting Started

Course Introduction

00:03:03

Lesson Description:

This lesson provides an overview of the course: what it covers, how it's structured and who it's for.

About the Training Architect

00:01:08

Lesson Description:

Meet our course author Joseph Lowery. Joe has been working with Google Cloud for over four years, transitioning websites to the cloud via App Engine, Compute Engine, Cloud Storage, Cloud Datastore and other services.

Working with the App Engine Interactive Diagram

00:02:58

Lesson Description:

The App Engine Interactive Diagram is a tool to provide both an overview and a detailed breakdown of the process of building an App Engine application. You'll see it incorporated into the course when we build and extend our application, and in this lesson, you'll learn how you can also use it independently to fortify your understanding of the App Engine workflow. Download App Engine Interactive Chart

Course Features and Tools

00:02:49

Lesson Description:

This course, like all Linux Academy courses, is more than just a series of video lessons. In this lesson, I'll detail the other features available for students, both online and off.

Exploring Google App Engine

Overview

What is Google App Engine?

00:10:17

Lesson Description:

This lesson explores the fundamentals of Google App Engine: its key characteristics and primary use cases. You'll also see how developers and App Engine relate and how App Engine fits into the overall Google Cloud Platform.

Examining App Engine Capabilities

00:05:56

Lesson Description:

This lesson describes App Engines key features and abilities: important information when it comes to deciding if App Engine is the most appropriate service for your project.

Understanding Costs

00:06:10

Lesson Description:

In this lesson, you’ll see which App Engine services are free of charge, their limitations, and at which point charges are applied.

QUIZ: Google App Engine Overview

00:30:00

GAE in the Real World

Use Cases

00:07:00

Lesson Description:

What's the best way to understand what App Engine can actually do? Explore a number of examples from the real world, as you'll see in this lesson.

App Engine vs. Other Services

00:14:22

Lesson Description:

In this lesson, we'll compare App Engine to other services, both within the Google Cloud Platform and outside of it, to services on AWS and Microsoft Azure.

Signing on to Google Cloud Platform

00:04:32

Lesson Description:

This lesson will take you through the steps for getting started on Google Cloud Platform so you can begin working with App Engine. If you already have a GCP account, click the Complete Section button to continue.

QUIZ: Google App Engine in the Real World

00:15:00

Integrating with other Cloud Platform services

Exploring Integration Use Cases

00:07:10

Lesson Description:

In this lesson, I'll show you a range of use cases that where App Engine combines with one or more other GCP services to provide viable, robust solutions.

Integration Example: Cloud Storage

00:05:30

Lesson Description:

This lesson dives deeper into the connection between App Engine and a GCP service, Cloud Storage, to clarify just how the services work together.

QUIZ: Exploring Google App Engine

00:30:00

Working with Google App Engine

Setting Up

Focusing on Python: Mac

00:05:02

Lesson Description:

This lesson covers setting up Python 2 and Python 3 on the Mac, along with the recommended accompanying toolset. Commands used Install XCODE: xcode-select --install Go to: https://brew.sh/ and then run the command below: /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)" Once HomeBrew is installed we can install Python 2 and Python 3 with one command: brew install python python3 Install the virtualenv package pip3 install --upgrade virtualenv

Focusing on Python: Windows

00:03:21

Lesson Description:

This lesson covers setting up Python 2 and Python 3 on Windows, along with the recommended accompanying toolset.

Focusing on Python: Linux

00:06:07

Lesson Description:

This lesson covers setting up Python 2 and Python 3 on Linux, along with the recommended accompanying toolset. We will also demonstrate how to use the Linux Academy Linux Cloud Servers so that you have everything you need to follow along with us as we build our application together.

Establishing a Project

00:04:25

Lesson Description:

Learn how to create a project for your App Engine application, with a couple of tips designed to make your continued work more efficient.

Setting up your Development Environment

00:07:00

Lesson Description:

In this lesson, you'll complete the necessary steps for preparing your development environment to build an App Engine application. If you are new to using GIT we recommend checking out the following course: https://linuxacademy.com/cp/modules/view/id/88 (GitHub Quickstart)

QUIZ: Setting up a Google App Engine Project

00:15:00

Building an app

Configuring your project

00:07:21

Lesson Description:

This lesson begins the process of actually building our App Engine application by detailing the initial configuration necessary.

Establishing the Back End

00:05:18

Lesson Description:

In this lesson, we'll dive into the back end and I'll show you exactly how our app connects to the data sources as well the core functionality.

Coding the Front End

00:05:11

Lesson Description:

You'll learn, in this lesson, how the visible portion of our application - the front end - is coded, and utilizes the access to Cloud Datastore.

Deploying your App

00:04:56

Lesson Description:

Deploying your developed app is obviously a critical step and one you'll take many times when working with App Engine; this lesson shows you how to achieve that goal from the command line.

Testing your App

00:03:57

Lesson Description:

In this lesson, we'll cover the final step in building an app: run initial tests to verify everything is working as expected.

QUIZ: Building Your Application in Google App Engine

00:15:00

Extending your App

Integrating Images with Cloud Storage

00:07:47

Lesson Description:

This chapter shows how to extend the functionality of your app, starting with connecting to Google Cloud Storage to manage image files.

Enhancing the Front End

00:10:57

Lesson Description:

This lesson details how the front end files connect to the back end and shows how to use the local development server included in the Google Cloud SDK.

Incorporating CSS, Images, and other Static Files

00:09:13

Lesson Description:

Discover a specific technique for handling an app's static files: CSS stylesheets, background and foreground images and more.

QUIZ: Extending Google App Engine Applications

00:30:00

Migrating to a Flexible Environment

Why Go Flexible?

00:04:01

Lesson Description:

Get a better grasp of the differences and similarities between App Engine's Standard Environment and its Flexible Environment before diving into the code.

Updating the Code

00:11:36

Lesson Description:

This lesson covers all the code variations when transitioning from an App Engine standard environment to a flexible one, in addition to detailing how to work with the local development server and deploy your app.

QUIZ: Migrating Your Application from a Standard Environment to a Flexible Environment

00:15:00

Next Steps with your App

Testing your App

Handling Traffic

00:05:38

Lesson Description:

In this lesson, you'll see how App Engine provides a powerful mechanism for managing your out-going traffic: splitting and migrating as desired.

Leveraging Memcache

00:05:09

Lesson Description:

App Engine's Memcache service can enhance app performance significantly. Learn how to take advantage of this service and the available options.

Handling Security Scans

00:05:52

Lesson Description:

Learn how to use App Engine Security Scans to identify and fix common application vulnerabilities.

QUIZ: Testing Your Google App Engine Application

00:15:00

Managing your Project

Touring the App Engine Console

00:06:47

Lesson Description:

Familiarize yourself with the App Engine dashboard and console so that you can find the services and functions you need to get the job done.

Implementing a Custom Domain

00:04:11

Lesson Description:

In this lesson, we'll walk through all the steps necessary to connect a custom domain to an App Engine app, running on Google's appspot.com.

Working with the App Engine Admin API

00:06:09

Lesson Description:

App Engine is an integral part of the Google Cloud Platform and in this lesson, you'll see how that status allows your apps to connect to a myriad of services, both on and off the Platform, everything from Adsense to YouTube. You'll also see how to programmatically provision and manage your app with the Admin API's RESTful interface.

Examining Available Statistics

00:04:18

Lesson Description:

Understanding how your app is being used is extremely important and App Engine provides connections to two robust services: Google StackDriver and Google Analytics. In this lesson, you'll learn how to connect your app to these services and gain access to logs, errors, traces, and the full range of user statistics.

Keeping within Budget

00:05:55

Lesson Description:

Every App Engine project uses resources and once the use of those resources exceed the limits of the free tier, costs are involved. In this lesson, you'll see how to limit your daily costs for Standard environment apps and how to set budgets and alerts for those using the Flexible environment.

QUIZ: Managing Google App Engine Projects

00:30:00

Course Conclusion

Final Steps

What's Next?

00:01:27

Lesson Description:

After finishing the Google App Engine Deep Dive course what should you do next?

Get Recognized!

00:01:01

Lesson Description:

How to get recognized for your certification.