Hello again, welcome to this new section of the course.
So what are we going to do in this section?
Well, it's very important because in this section we are going to make our program more useful for
actual users, because this far, what we have is just a Python script written in one or two Python
files.
And to be able to use this program, you need Python installed and you need to have the script and then
the values are hard coded inside the script.
So what I'm trying to say is that if you give this program to some other person, you have to teach
them to go to the script and change that amount to the amount they want.
Let's say you have a friend who wants to use your program, who is living with another friend in a flat,
in a shared flat, or you want to share this to a wider audience.
People who you don't know.
So currently how it works is that you need this Python script and then you need some sort of IDE where
you can run the code to get the results and the PDF displayed as a PDF file.
And then you have to change the values to something else if you want to try something else, which is
not a good practice, because as I said first, it is very difficult to teach people to do this.
And secondly, if they do it so, they will destroy the code.
Probably.
Absolutely,
handing dot py files
it's not the way to distribute Python programs, but there are ways to make friendly interfaces so that
users don't have to go to your code and change the runtime values.
That, that and other values.
So three ways.
One way is to create a command line interface.
A command line interface will look something like this where the user can communicate with a program
through text.
So maybe the program is asking the user questions like what was the bill amounts and the user will answer
a number here and it would press enter and then if the program asks another question and so on.
So it's a text based communication.
No graphics, no clicks, no buttons, nothing.
That's one way which we are going to implement in this app.
And then there are ways to distribute that command line to users.
We are going to cover that in this section.
So the command line interface or the CLI for short for command line interface.
So CLI is one method to distribute programs.
Another method which is more advanced is to distribute a graphical user interface, or GUI, which is
basically a desktop program where the users have these buttons and boxes, where they enter information
just like the interface of this IDE program that we have here with menus and buttons and so on.
We are going to cover that too, in the course, but not in this section.
In this section, we are going to cover the command line interface.
So command line interface.
So command-line interface, one option, graphical user interface,
second option, a third option is a Web interface or a Web app, or you can also call it a website.
So websites which you can open on the browser through a URL address and you need internet to use
that web app.
The benefit of this is that it's very easy for users to you simply give them the URL and they go to
their browser and use it.
So you don't have to distribute files like you do with a desktop program, which you need to give to
the users.
They will download it and install it on their computer.
So Python can also do web interface and we are going to cover that, too, in the course.
And so these are the three kinds of interfaces you can use for your Python programs.
So the command line interface, the desktop graphical user interface and the web interface.
For this Flatmates Bill app, we are going to use the command-line interface. With that in mind
let's dive into the next lecture and we build the command-line interface.
See you there.