Repo for the PDX Code Guild Intensive Python/JavaScript Fullstack Bootcamp starting 2/27/2023
Class is held from February 27, 2023 to June 9, 2023, M-F 9:30 a.m. – 4:30 p.m.
- May 29 (Memorial Day)
- (four more, TBD)
-
Danny Burrow, Instructor
Capstone proposal due: May 17, 2023 (tentative)
Presentation Day: June 9, 2023
Lab | Name | Points Value | Date Assigned | Due Date | Not Accepted After |
---|---|---|---|---|---|
00 | Polls | Apr 4th | Apr 7th | ||
01 | Todo List | 20 | Apr 5th | Apr 10th | Apr 19th |
02 | URL Shortener | 20 | Apr 7th | Apr 12th | Apr 21st |
03 | Chirp | 30 | Apr 10th | Apr 14th | Apr 24th |
Lab | Name | Points Value | Date Assigned | Due Date | Not Accepted After |
---|---|---|---|---|---|
01A | Pick 3 | 10 | Apr 13th | Apr 17th | Apr 27th |
02A | Pick 3 | 10 | Apr 13th | Apr 17th | Apr 27th |
03A | Pick 3 | 10 | Apr 13th | Apr 17th | Apr 27th |
01B | Pick 3 | 10 | Apr 14th | Apr 20th | Apr 28th |
02B | Pick 3 | 10 | Apr 14th | Apr 20th | Apr 28th |
03B | Pick 3 | 10 | Apr 14th | Apr 20th | Apr 28th |
Group | Todo List | 10 | Apr 17th | Apr 17th | May 1st |
04 | Vue Todos | 15 | Apr 17th | Apr 20th | May 1st |
05 | Weather API | 20 | Apr 19th | Apr 21st | May 3rd |
06 | Mini-Capstone | 30 | Apr 21st | Apr 25th | May 5th |
Lab | Name | Points Value | Date Assigned | Due Date | Not Accepted After |
---|---|---|---|---|---|
01 | Bio | 10 | Mar 23rd | Mar 28th | Apr 6th |
02 | Company Landing Page | 10 | Mar 27th | Mar 30th | Apr 10th |
03 | Blog | 20 | Mar 28th | Mar 31st | Apr 11th |
04 | Burrito Order Form | 10 | Mar 29th | Apr 3rd | Apr 12th |
05 | Flask Redo | 10 | Mar 30th | Apr 4th | Apr 13th |
06 | Personal Portfolio | 20 | Mar 31st | Apr 4th | Apr 14th |
Lab | Name | Points Value | Date Assigned | Due Date | Not Accepted After |
---|---|---|---|---|---|
01 | Number To Phrase | 10 | Feb 28th | Mar 3rd | Mar 14th |
02 | Blackjack Advice | 10 | Feb 28th | Mar 3rd | Mar 14th |
03 | Pick 6 | 10 | Mar 1st | Mar 3rd | Mar 15th |
04 | Credit Card Validation | 5 | Mar 2nd | Mar 7th | Mar 16th |
05 | ROT13 | 5 | Mar 3rd | Mar 8th | Mar 17th |
06 | ARI | 10 | Mar 6th | Mar 9th | Mar 20th |
07 | Contact List | 25 | Mar 7th | Mar 13th | Mar 21st |
08 | ATM | 10 | Mar 9th | Mar 14th | Mar 23rd |
09 | Compass | 5 | Mar 10th | Mar 15th | Mar 24th |
10 | Dad Joke API | 5 | Mar 13th | Mar 16th | Mar 27th |
11 | Quotes API | 20 | Mar 15th | Mar 20th | Mar 29th |
12 | Automated Testing | 5 | Mar 16th | Mar 20th | Mar 30th |
11 | Mini-Capstone | 30 | Mar 20th | Mar 23rd | Apr 3rd |
At the end of the Python and JavaScript sections, you'll give a presentation on a "mini capstone" 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?
- 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
Uploading Files with VueJS and Axios
https://serversideup.net/uploading-files-vuejs-axios/
A Friendly Guide to Promise.all
https://levelup.gitconnected.com/a-friendly-guide-to-promise-all-68e7cd57b65d
SQL Island
https://sql-island.informatik.uni-kl.de/
Select Star SQL
https://selectstarsql.com/
SQL Murder Mystery
https://mystery.knightlab.com/walkthrough.html
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/
- Python:
- Frontend (HTML/CSS/JS):
- https://www.freecodecamp.org/ (Practice, projects, (almost) textbook all-in-one!)
- https://sayazamurai.github.io/python-vs-javascript/#control-flow (Python3 and ES6 JS side by side comparisons)
- https://sass-lang.com/guide (SASS: CSS preprocessor tutorial)
- https://vuejs.org/v2/guide/ (Vue.js official guide)
- https://www.youtube.com/watch?v=5LYrN_cAJoA&list=PL4cUxeGkcC9gQcYgjhBoeQH7wiAyZNrYa (Vue.js video tutorial) REPO: https://github.com/iamshaunjp/vuejs-playlist/tree/master
- Django: