# Overview of the project

In this section we'll be creating a programming diary project. When our program starts, first we'll welcome the user and tell them how they can interact with our program:

Welcome to the programming diary!

Please select one of the following options:
1) Add new entry for today.
2) View entries.
3) Exit.

Your selection:

Clearly letting the user know what the program can do and how they can interact with it is important.

# Adding new entries

When a user presses 1, we'll let them add new entries. We'll ask them for the date of the entry and also the contents of the entry:

What have you learned today?

Enter the date:

Those are two separate prompts, and we'll store the contents of the user input in variables. We'll then be saving that into a database table.

# Viewing entries

If the user presses 2, we'll show them all their entries:

01-01-2020
Today I learned how to start coding with Python and SQL.

02-01-2020
Worked with more SQL, including filtering results and updating values.

03-01-2020
Learned about relational data and JOINs.

# Afterwards...

Once they've made a selection and we've done what that selection requires, we will once again show them the menu. This time, remember to not welcome them to the application!

Please select one of the following options:
1) Add new entry for today.
2) View entries.
3) Exit.

Your selection:

# The complete flow

Let's do a sample run through our application where the user first adds an entry and then views it. Highlighted lines are those that contain user input.








 

 

 






 









 

Welcome to the programming diary!

Please select one of the following options:
1) Add new entry for today.
2) View entries.
3) Exit.

Your selection: 1

What have you learned today? Today I learned how to start coding with Python and SQL.

Enter the date: 01-01-2020

Please select one of the following options:
1) Add new entry for today.
2) View entries.
3) Exit.

Your selection: 2

01-01-2020
Today I learned how to start coding with Python and SQL.

Please select one of the following options:
1) Add new entry for today.
2) View entries.
3) Exit.

Your selection: 3

That's about it! Let's get started developing this app over the next few chapters!