# Overview of Project 1
In Project 1, you will build a substantial real-world database application of your choice. This project is split into three parts:
Copyright By cscodehelp代写 加微信 cscodehelp
* [Part 1](./part1.md): come up with a web application and design the database on paper using ER-modeling.
* [Part 2](./part2.md): implement your database by translating your model into a database schema and example data.
* [Part 3](./part3.md): you have two options: (3a) implement a web front-end or (3b) expand your schema design.
* 3a: you will implement an application in Python to read and write to the database, through a user-facing web front-end.
* 3b: you will sebstantially expand your database design and incorporate it into your database from part 2. No Python programming is needed.
Pick an application that you will enjoy working with, because you will be working on it for a substantial part of the semester!
Try to pick an application that can be populated with real data, since it will make the application more interesting.
You will implement your web application Google Cloud. You’ll be able to share the URL with your friends. It’ll be awesome. See [programming.md](./programming.md) for details.
### Summary of Deadlines
* **2/4**: Find team-mate!
* **2/7-18**: Meet with course staff to discuss your application and design. **Mandatory**
* **2/25**: Submit Part 1
* **3/21**: Submit Part 2
* **4/15**: Submit Part 3
Note: you can only use late days for the project description submisson, not for finding a teammate nor for meeting with the staff. Please read the Project Lateness Policy carefully.
### Teams of _exactly_ 2
* Use the class discussion board to find teammates!
* Simply write the name and UNI of both members when submitting part 1.
* [Write a contingency plan](./part1.md#contingency) in case your teammate drops the class.
### Important notes:
* If you decide to drop the class, or are even remotely considering doing so, please be considerate and notify your team-mate immediately.
* Do not wait until the day before the deadline to start working on the project, only to realize that your team-mate has dropped the class or moved to another planet. It is your responsibility to start working on the project and spot any problems early. You should be working _together_
* Please check the Collaboration Policy web page for important information of what kinds of collaboration are allowed for projects.
### Getting Help
We _strongly suggest_ you use the following approach when you encounter bugs. This is basically what
professional software engineers and data scientists do:
1. Use Google or StackOverflow by searching for the error message
1. Look for previous answers on the discussion board
1. Ask on the discussion board. Include the following in your question:
* what you’re trying to do
* describe the approach you took
* the error message
* what solutions you’ve tried
1. Ask the staff in OH
程序代写 CS代考 加微信: cscodehelp QQ: 2235208643 Email: firstname.lastname@example.org