## Project Time!

## You’ve Made It!

Congratulations on making it this far!

Talking Points:

- Congratulate them on finishing the course!

## You Do: Project

For the final project, you’re making a new app of your choosing from scratch.

If you’re having trouble coming up with a topic, consider:

- Find a fun dataset and base it on that.
- Make an app that contrasts data from your hobbies.
- Make something you think would improve your life in some way.
- Feel free to share resources and inspiration with your classmates!

Teaching Tips:

- Stress that they’re building this from scratch, individually. There are no prompts - they can do anything they want.
- Get them excited!

## Deliverables

You must have a Pandas app in Jupyter Notebooks.

You will work individually on this project, but feel free to share inspiration, resources, or cool datasets that you find with your classmates!

Teaching Tips:

- Stress that just because they have to work individually doesn’t mean they can’t share cool things they find or brainstorm with each other - or ask for help!

### Requirements

Your assignment must include:

1. Data pulled from at least one dataset.
   - Get creative! Tons of free datasets exist! Ask your instructor or classmates for ideas!
2. Data displayed in a minimum of two different visualizations.
   - Take care that they’re the best choice of visualizations for the data and are easy to comprehend.
3. Cleaning the data - handling of null values or other potential errors in the data.
4. Core Python topics. At minimum:
   - Dictionaries or sets, or tuples.
   - `**args` or `kwargs` or `*kwargs`.
   - Basic debugging, such as a `try/except` block, (only if necessary).
   - A class.
   - User input or reading from a file.
5. Comments, so another developer can easily see what your app does.

Teaching Tips:

- Walk down this list and be sure students understand what each item means.

## Suggested Ways to Get Started

- Begin with the end in mind. Know where you want to go by planning ahead, so you don’t waste time building things you don’t need.
- Read the docs for whatever technologies or datasets you use. Most of the time, there is a tutorial that you can follow! This isn’t always the case, though, learning to read documentation is crucial to your success as a developer.
- Write pseudocode before you write actual code. Thinking through the logic of something helps.

Teaching Tips:

- Encourage them to get a really solid idea fleshed out before they start the execution.

## Useful Resources

- An extremely helpful debugging flowchart
- The Python Docs
- Keyword Args
- Args and Kwargs
- Chain and Other Itertools
- Sets, on a Python tutorial website)
- Tuples

Teaching Tips:

- These are helpful if they need a quick refresher or have extra time.

## Evaluation

Your project will be evaluated based on the rubric below.

Score | Expectations
--- | ---
0 | No credit - Incomplete
1 | Half credit - Working app without all requirements
2 | Full credit - Working app with all requirements
3 | Extra credit - Working app with bonus enhancements

Talking Points:

- A 0 to 3 grade may not intuitively make sense, so here is an example using the criteria as if your assignment were to cook a pizza:

Criteria | 0 Incomplete. | 1 Does not meet expectations. | 2 Meets expectations | 3 Exceeds expectations
--- | --- | --- | --- | ---
Crust | No crust present. Submission is just cheese and sauce on a plate. | Pizza has a crust, but it is raw. | Crust is cooked thoroughly. | Crust is golden brown and just thin enough without being too thick.
Cheese | No cheese present. | Cheese is made of cardboard. | Cheese covers the pizza from edge to edge. | Cheese is delicious, plentiful, and melted to perfection.

## Let’s Get Started!

Open the Final Project Prompt {`final-project-prompt`} to see the project and its instructions. Follow the instructions there.

Remember:

- You’re making any app you’d like! Find something that interests you.
- You must have a Pandas app in Jupyter Notebooks.
- Don’t be afraid to ask for help!

Teaching Tips:

- Make sure you change the link or point out what PDF to look at, and check the starter code location.
- Make sure all students start with working code - they can get it from the starter code file.
- Note that the Final Project Prompt is all this information in PDF form instead of slide form, so it’s easier for them to refer to.
- Stay on this slide!