Course Project Expectations and Grading
- Project is hosted in its own github repo (not part of Python repo, but a new repo just for the project) 3%
- Project description, requirements and setup instructions are clear, easy to follow and documented in the github repo's readme file. 7% -> 10%
- Project runs and performs as described in the documentation 35% -> 45%
- Project handles bad user input or other edge cases without crashing by utilizing exception handling mechanisms 10% -> 55%
- Project meaningfully utilizes self-defined classes and subclasses of those classes 5% -> 60%
- Project code is well organized, following pep-8 style guide with meaningful use of comments and functions 10% ->70%
- At least one pip installed (external to python's default installation) module used meaningfully 5% -> 75%
- An external self-researched tool utilized for the project (this can be an installation of a tool such as Airflow, ElasticSearch, Spark, MongoDB, etc or one of python frameworks ex: pygame, pandas, scikit-learn, etc) 15% -> 90%
- Project presentation and follow up questions 5% - 95%
- Unit tests are written and coverage report calculated with at least 20% code base covered 5% - 100%
Project Examples:
- Video game
- Search engine that scrapes crawled content and provides search over it
- Server health monitoring and alerting system that stores historical information
- An application that provides API for image processing, for example - upload a picture to see how a colorblind person would see it OR apply frame to all your images, etc
- An application that connects to public APIs and meshes data or visualizes it, for example - airplanes flight track data visualized, NASA weather data visualized, airplanes and flight track data meshed, showing temperatures and chemicals the airplane was exposed to in its flight track