Class Kiwi

2022-01-31 Full-Stack Python/JavaScript Evening Class

Repo for the PDX Code Guild Python Full Stack evening course starting 01/31/2022

Class is held from January 31st, 2022 to June 10th, 2022
M-F 6:00 pm – 9:30 pm pst


  • February 21st (Presidents Day)
  • May 30th (Memorial Day)


Capstone Dates:

Capstone proposal due: May 13th, 2022
Presentation Day: June 10th, 2022

General Labs Assigned:

Lab Name Date Assigned Due By Start Of Class Hard Due Date
00 Getting Started 01 Feb 04 Feb 14 Feb

Python Labs Assigned:

Lab Name Date Assigned Due By Start Of Class Hard Due Date
01 Unit Converter
02 Average Numbers
03 Number To Phrase
04 Blackjack Advice
05 Pick 6
06 Credit Card Validation
07 ROT13
08 Peaks And Valleys
09 ARI
10 Contact List
12 ATM
13 Tic-Tac-Toe
14 Dad Joke API
Group Jackalope
15 Quotes API
16 Mini-Capstone

Student Presentations

At the end of the Python and JavaScript sections, you’ll give a presentation on an assignment of your choice. This is practice for your capstone presentation which you’ll give on the last day of class.

These presentations help you practice communicating technical topics in English. Being able to speak intelligently about programming is almost as important as programming itself. This skill will allow you to better talk to interviewers, managers, clients, coworkers, and more.

In all three presentations, you should first explain the development process and the different parts of your code. Then run the application and show its features and interaction (entering data, seeing results, etc). Here are some questions to contemplate while planning out your presentation:

  • what problem does your application solve? what is the core function it performs?
  • how did you go about planning?
  • what major issues did you encounter during the course of development? how did you go about overcoming them?
  • how did your vision for the project change over time?
  • what part did you like the most? least?
  • what is the future of the project? what features (if any) will you work on next?

Getting Unstuck

  • Write pseudocode in English
  • Add comments to explain your process to yourself
  • Use functions to “black box” pieces of code
  • Break code into logical bits
  • Only do one thing at a time
  • Don’t do too much on one line
  • There’s no such thing as too many print()s

Odds and Ends

Uploading Files with VueJS and Axios

A Friendly Guide to Promise.all

SQL Island

Select Star SQL

SQL Murder Mystery

An Illustrated (and Musical) Guide to Map, Reduce, and Filter Array Methods

Custom User Model

Tips for using many-to-many fields

Willam Vincent’s tutorials and articles

Django by example

Python Django tutorial

Django girls tutorial

Django polls tutorial

Git branching practice

Oh Shit Git

Atlassian Git Tutorials

Vue Video Tutorial and Solution Repo

Vue Introduction Documentaion

jQuery vs Vanilla vs Vue/React/Angular

Start an HTTP server on your local machine:

cd project/file/path
python -m http.server

XMLHttpRequest properties/methods/etc

Using XMLHttpRequest

Awesome CSS

Sass Basics


Webhook Request Tester

MDN: How To Style Forms

Bootstrap Documentation

Grid Garden

Flexbox Froggy

Grid or Flexbox?

CSS Diner


Adobe Color

Google Fonts

Font Awesome

The Four Major Programming Paradigms

More Programming Paradigms

Big-O Cheat Sheet

More about sorting

15 Sorting Algorithims in 6 Minutes

Awesome Python (list of frameworks/libraries/software/resources)


Regex Crossword

Lena, the first JPEG

All Algorithms implemented in Python

Python concept practice problems (may require registration, may not be Python 3)

Are exceptions good practice? (Includes list of exceptions and a lot of code philosophy)

Official Python Style Guide (PEP 8)

PEP-8 Tutorial and Guide

Pitfalls of Floating Point Numbers and Work-Arounds

Command Line Cheat Sheet

Git Cheat Sheet

Generating a new SSH key and adding it to the ssh-agent

Adding a new SSH key to your GitHub account:

Outside Resources


View Github