<style> .present { text-align: left; } img[alt=knight_moves] { width: 400px; } </style> # Week 18 Roadmap (Short week) ## Short Week Edition! --- ### It's a short week! This week is a 3-day week (woo!). We will cover most material this week and finish up next Monday. --- ### Technologies This week: - Today: pipenv, unittest, pytest - Tuesday: Flask, Jinja, psycopg2, WTForms & Flask-WTF - Wednesday: SQlAlchemy & Flask-SQLAlchemy - Practice assessment will be released Next week: - Monday: Alembic & Flask-Migrate, practice assessment walkthrough - Tuesday: Week 18 Assessment --- ### Flask (Tuesday) - Another long lecture day! - [Flask](https://flask.palletsprojects.com/) - Web server (like Express, but for Python) - [Jinja](https://jinja.palletsprojects.com/en/2.11.x/) - Templating language (like Pug) - [Psycopg2](https://www.psycopg.org/docs/index.html#) - Database adapter for Python, allows Flask to communicate with Postgres database - [WTForms](https://wtforms.readthedocs.io) & [Flask-WTF](https://flask-wtf.readthedocs.io) - WTForms is a form validation library - Flask-WTF integrates WTForms with Flask --- ### SQLAlchemy & Flask-SQLAlchemy (Wednesday) - [SQLAlchemy](https://docs.sqlalchemy.org/en/14/index.html) - Object-relational mapping tool (ORM) that makes it easier to interact with our database (like Sequelize) - [Flask-SQLAlchemy](https://flask-sqlalchemy.palletsprojects.com) - Integrates SQLAlchemy with Flask --- ### Alembic & Flask-Migrate (Monday morning) - [Alembic](https://alembic.sqlalchemy.org) - Database migration tool that works with SQLAlchemy - [Flask-Migrate](https://flask-migrate.readthedocs.io) - Integrates Alembic with Flask --- ### Practice assessment (Monday afternoon) - Time to study & work on practice assessment - Practice assessment walkthrough - Kahoot --- ### Week 18 Assessment (Tuesday morning) - 3 hrs, no multiple choice --- ### Today - Career stuff (40 min - 1 hr) - Reading: Presentation skills (20 min) - Exercise: Interview practice (40 min) - *Skip Instructor Led Project* - Lecture: Python environment management & unit testing - NOTE: we installed pipenv last week. If you have not done so, please follow [these instructions](https://github.com/appacademy/unified-setup/blob/main/python-setup.md). You can check your install with `pipenv --version`. If it comes back with a version, you're all set! - Python Unit Testing project