Skip to content

PdxCodeGuild/class_koi

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

20220314-Python-FullStack-Day

Repo for the PDX Code Guild Python Full Stack day course starting 3/14/2021

Class is held from March 14th, 2022 to June 24th, 2022 M-F 9:30 am – 4:30 pm

koi

Holidays / Days Off

  • April 4th (Day Off)
  • April 11th (Snow Day)
  • May 30th (Memorial Day)
  • June 6th (Day Off)
  • June 20th (Day Off)

Staff

Capstone Dates:

Capstone proposal due: June 1st, 2022

Presentation Day: June 24th, 2022

JavaScript Labs Assigned:

Lab Name Date Assigned Due By Hard Due Date
01-03 Pick3 May 10th May 16th May 24th
04 Mob Todo List NA NA NA
05 Vue Todos May ??th May ??th Jun 3rd
05 JavaScript Mini-Capstone May ??th May ??th Jun 3rd

Optional JavaScript Labs

Bouncing Ball, Clock, Hacker Typer, Random Redirector

Django Labs Assigned:

Lab Name Date Assigned Due By Hard Due Date
00 Polls Apr 25th Apr 29th May 9th
01 Grocery List Apr 27th May 4th May 11th
02 Library Apr 29th May 4th May 13th
02 Chirp May 4th May 11th May 18th

Optional Django Labs

URL Shortener

HTML/CSS Labs Assigned:

Lab Name Date Assigned Due By Hard Due Date
01 Bio Apr 12th Apr 15th Apr 26th
02 Blog Apr 13th Apr 15th Apr 27th
03 Company Apr 18th Apr 22nd May 2nd
04 Mob Class Mascot NA NA NA
05 Personal Portfolio Apr 20th Apr 20th Apr 22nd

Optional Flask Labs:

Python Labs Assigned:

Lab Name Date Assigned Due By Hard Due Date
01 Unit Converter Mar 15th Mar 18th Mar 29th
02 Average Numbers Mar 15th Mar 18th Mar 29th
03 Make Change Mar 16th Mar 18th Mar 30th
04 Number To Phrase Mar 16th Mar 18th Mar 30th
05 Blackjack Advice Mar 16th Mar 18th Mar 30th
06 Pick 6 Mar 21st Mar 25th Apr 4th
07 Mob Jackalope Mar 21st NA NA
08 Credit Card Validation Mar 22nd Mar 25th Apr 5th
09 Peaks And Valleys Mar 22nd Mar 25th Apr 5th
10 ROT13 Mar 24th Mar 30th Apr 7th
11 ARI Mar 24th Mar 30th Apr 7th
12 Contact List Mar 28th Apr 1st Apr 11th
13 ATM Mar 30th Apr 5th Apr 13th
14 Mob Tic Tac Toe Mar 30th NA NA
16 Dad Joke API Apr 1st Apr 6th Apr 15th
18 Mini-Capstone Apr 6th Apr 8th Apr 19th

Optional Python Labs

Connect Four, Count Words, Currency Converter, Grading, Guess The Number, Image Manipulation, LCR, Mad Libs, Magic 8 Ball, Rain Data, Random Emoticon Generator, Random Password Generator, Road Trip, Rock, Paper, Scissors, Searching & Sorting, Simple Calculator, Sock Sorter, Stack And Linked List, Quotes API

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

An Illustrated (and Musical) Guide to Map, Reduce, and Filter Array Methods
https://css-tricks.com/an-illustrated-and-musical-guide-to-map-reduce-and-filter-array-methods/

Custom User Model
https://learndjango.com/tutorials/django-custom-user-model

Tips for using many-to-many fields
https://www.revsys.com/tidbits/tips-using-djangos-manytomanyfield/

Willam Vincent's tutorials and articles
https://wsvincent.com/

Django by example
https://www.youtube.com/playlist?list=PLAF3anQEEkzS-mjdX7s-D63bjLWRdhuFM

Python Django tutorial
https://www.youtube.com/playlist?list=PL-osiE80TeTtoQCKZ03TU5fNfx2UY6U4p

Django girls tutorial
https://tutorial.djangogirls.org/en/

Django polls tutorial
https://docs.djangoproject.com/en/2.1/intro/tutorial01/

Git branching practice
https://learngitbranching.js.org/

Oh Shit Git
http://ohshitgit.com/

Atlassian Git Tutorials
https://www.atlassian.com/git

Vue Video Tutorial and Solution Repo
https://www.youtube.com/watch?v=5LYrN_cAJoA&list=PL4cUxeGkcC9gQcYgjhBoeQH7wiAyZNrYa
https://github.com/iamshaunjp/vuejs-playlist/tree/lesson-1

Vue Introduction Documentaion
https://vuejs.org/v2/guide/

jQuery vs Vanilla vs Vue/React/Angular
https://www.academind.com/learn/javascript/jquery-future-angular-react-vue/

Start an HTTP server on your local machine:

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

XMLHttpRequest properties/methods/etc
https://developer.mozilla.org/en-US/docs/Web/API/XMLHttpRequest

Using XMLHttpRequest
https://developer.mozilla.org/en-US/docs/Web/API/XMLHttpRequest/Using_XMLHttpRequest

Awesome CSS
https://github.com/ikkou/awesome-css

Sass Basics
https://sass-lang.com/guide

BEM
http://getbem.com/introduction/

Webhook Request Tester
https://webhook.site

MDN: How To Style Forms
https://developer.mozilla.org/en-US/docs/Learn/HTML/Forms/Styling_HTML_forms
https://developer.mozilla.org/en-US/docs/Learn/HTML/Forms/Advanced_styling_for_HTML_forms
https://developer.mozilla.org/en-US/docs/Learn/HTML/Forms/How_to_build_custom_form_widgets

Bootstrap Documentation
http://getbootstrap.com/docs/4.1/getting-started/introduction/

Grid Garden
https://cssgridgarden.com/

Flexbox Froggy
http://flexboxfroggy.com/

Grid or Flexbox?
https://www.youtube.com/watch?v=hs3piaN4b5I

CSS Diner
https://flukeout.github.io/

CSS-Tricks
https://css-tricks.com
https://css-tricks.com/snippets/css/a-guide-to-flexbox/
https://css-tricks.com/snippets/css/complete-guide-grid/

Adobe Color
https://color.adobe.com/create

Google Fonts
https://fonts.google.com/

Font Awesome
https://fontawesome.com/icons?d=gallery&m=free

The Four Major Programming Paradigms
http://www.eecs.ucf.edu/~leavens/ComS541Fall97/hw-pages/paradigms/major.html

More Programming Paradigms
http://cs.lmu.edu/~ray/notes/paradigms/

Big-O Cheat Sheet
https://www.bigocheatsheet.com

More about sorting
https://visualgo.net/en/sorting?slide=1

15 Sorting Algorithims in 6 Minutes
https://www.youtube.com/watch?v=kPRA0W1kECg

Awesome Python (list of frameworks/libraries/software/resources)
https://awesome-python.com/

RexExr
https://regexr.com/

Regex Crossword
https://regexcrossword.com/

Lena, the first JPEG
https://www.wired.com/story/finding-lena-the-patron-saint-of-jpegs/

All Algorithms implemented in Python
https://github.com/TheAlgorithms/Python

Python concept practice problems (may require registration, may not be Python 3)
http://www.asmarterwaytolearn.com/python/index-of-exercises.html

Are exceptions good practice? (Includes list of exceptions and a lot of code philosophy)
https://stackoverflow.com/questions/16138232/is-it-a-good-practice-to-use-try-except-else-in-python

Official Python Style Guide (PEP 8)
https://www.python.org/dev/peps/pep-0008/

PEP-8 Tutorial and Guide
https://www.datacamp.com/community/tutorials/pep8-tutorial-python-code

Pitfalls of Floating Point Numbers and Work-Arounds
https://docs.python.org/3/tutorial/floatingpoint.html

Command Line Cheat Sheet
https://www.git-tower.com/blog/command-line-cheat-sheet/

Git Cheat Sheet
https://www.git-tower.com/blog/git-cheat-sheet

Generating a new SSH key and adding it to the ssh-agent
https://help.github.com/articles/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent/

Adding a new SSH key to your GitHub account:
https://help.github.com/articles/adding-a-new-ssh-key-to-your-github-account/

Outside Resources