7-week Class on Web Programming with Python

The web is everywhere. These days, it even runs on many household devices.

This class will teach you the fundamental concepts that underly the web and give you the ability to build basic web applications with database persistence, user login, and more.

Web Programming in Python

Logistics

Instructor: David Kay

Duration: 7 weeks

Prerequisites: Python Fundamentals or equivalent

Start Date (Vancouver): July 2016

Start Date (Virtual): July 2016

Syllabus

Week 1 - Hello HTTP

Welcome to web programming. In this class, we’ll learn about how the web works and write our first web application.

Topics:
  • Bottle/Flask
  • HTTP
  • GET
  • Query Parameters
Homework

Serve data from a CSV File

Bonus

Provide a drop-down menu to filter the data

Week 2 - HTML & POST

Let’s learn the very basics of HTML and build a website which lets us upload data.

Topics:
  • POST
  • Form Parameters
  • Form Input
Homework

Guestbook / Twitter

Bonus

TBD

Week 3 - Database

What use is a website that forgets everything when you turn off the power? In this class, we’ll learn the fundamentals of databases and how to store data for the long term.

Topics:
  • SQL
  • PostgreSQL
Homework

Database persistence

Bonus

TBD

Week 4 - Distributed Systems / REST API

Now that we understand how web applications work, let’s learn about distributed systems and test our knowledge by playing a programming game called Stockfighter.

Topics:
  • Distributed Systems
Homework

Stockfighter level 2

Bonus

Stockfighter level 3

Week 5 - CSS

We’ve learned how to create a web app, but it’s damn ugly. Let’s take a class to talk about styling and layout.

Topics:
  • CSS
  • Flexbox
  • Box Model
Homework

Style your page

Bonus

Web scraping

Week 6 - Authentication / Authorization

Now that our site is pretty, let’s make it REAL by adding registration and login.

Topics:
  • Authentication
Homework

Login / Registration

Bonus

Sign in with Facebook

Week 7 - Deployment

Our site is looking great, but it only lives on a laptop! Let’s learn how to share it with the world.

Topics:
  • Hosting
  • Heroku
  • SSH
Homework

Deploy your site on Heroku

Bonus

Deploy it on EC2 / Compute Engine

Interested?

If you’re interested, leave your email below:

Be notified when registration opens:

* indicates required
Written on April 18, 2016

David Kay has dedicated his life to the advancement of the technological singularity. He writes on software development, tech entrepreneurship, and transhumanism. If you found this article helpful, join his weekly newsletter.