/class_redmage

Full Stack Python Day Class 2018-10-15

Primary LanguageHTML

class_redmage

Full Stack Python Day Class 2018-10-15

JavaScript Labs Assigned:

Lab 01-03
Lab 04 (group)
Lab 05-09
Lab 10 (Presentations Friday 12/14)

JavaScript Optional:

Optional - Form Validation
Optional - Vue Todos

HTML/CSS Labs Assigned:

Lab 01
Lab 02 (use floats)
Lab 03 (use flexbox/css grid)
Lab 04 (frameworks and layout are up to you)
Lab 05

HTML/CSS Optional:

Strongly Recommended:

CSS Diner
Flexbox Froggy
Grid Garden

Optional Labs + Topics:

Optional - Animations
Sass Basics
BEM

Python Labs Assigned:

Lab 01 - Lab 23
Lab 25
Mob - Jackalope
Group - Hangman
Tuesday 11/13: Presentations for either Lab 26 OR your own custom project utilizing the Python library of your choice

Python Labs Optional:

Strongly Recommended:

Practice 01
Practice 02
Practice 03
Practice 04
Practice 05
Lab 24

Optional Labs:

Optional - LCR Simulator
Optional - Road Trip
Optional - Sock Sorter
Optional - Arbitrary Precision Arithmetic
Optional - Crime Data
Optional - Tree

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 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?

Odds and Ends

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

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

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/

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/

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/

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

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/