1
00:00:02,410 --> 00:00:06,730
Hey, today we're going to cover the steps to create and maintain.

2
00:00:07,620 --> 00:00:08,730
Programs.

3
00:00:11,170 --> 00:00:18,100
So these will be the steps that we'll be going through over and over again as we create a Python program.

4
00:00:18,100 --> 00:00:22,120
So you will learn the language in the course, but at the same time you learn.

5
00:00:23,180 --> 00:00:26,750
The procedure on creating a new program.

6
00:00:27,080 --> 00:00:30,320
So everything starts with a minimum viable product.

7
00:00:31,040 --> 00:00:33,500
So this will be the program.

8
00:00:34,600 --> 00:00:42,880
You will build, which doesn't have many features, but it does have enough features to attract users

9
00:00:42,880 --> 00:00:51,700
which will use it and then give you feedback so that you can add more features based on users feedback.

10
00:00:53,570 --> 00:01:00,110
So you cannot just go crazy with adding lots of features because some of them will not be needed by

11
00:01:00,110 --> 00:01:00,440
users.

12
00:01:00,440 --> 00:01:01,880
So you'll be wasting time.

13
00:01:01,880 --> 00:01:03,860
So it's better to start simple.

14
00:01:04,760 --> 00:01:07,700
And release that version of your program.

15
00:01:11,740 --> 00:01:14,080
Then you add features to the program.

16
00:01:14,290 --> 00:01:22,240
For example, in the program we were building, we started by just allowing the user add to do items

17
00:01:23,350 --> 00:01:24,370
and then show them.

18
00:01:24,370 --> 00:01:26,250
And then we added an edit feature.

19
00:01:26,260 --> 00:01:33,940
So let's suppose that we had released the program to users and then they send us emails or something

20
00:01:34,810 --> 00:01:37,810
that they want to be able to add it.

21
00:01:39,090 --> 00:01:39,930
To do items.

22
00:01:39,930 --> 00:01:43,620
So what we do is we go and add an added feature.

23
00:01:46,320 --> 00:01:50,400
Then we might get feedback about problems with the program.

24
00:01:50,880 --> 00:01:54,960
So we want to go back to the program and fix those box and release.

25
00:01:56,410 --> 00:02:00,730
An updated version of the program with the box fixed.

26
00:02:02,630 --> 00:02:07,880
Then once in a while we want to go back to our code and optimize it.

27
00:02:08,810 --> 00:02:17,300
For example, for our to do app, what we've been doing is we changed from file is equal to open and

28
00:02:17,300 --> 00:02:20,750
file close to using a with context manager.

29
00:02:22,240 --> 00:02:28,420
This doesn't serve the user any purpose, but it makes our code base high quality.

30
00:02:28,690 --> 00:02:37,030
It could make the program faster and it generally makes the codes more readable and easier to manage

31
00:02:37,030 --> 00:02:38,080
and extend.

32
00:02:39,720 --> 00:02:46,590
And then again, then you want to improve features that you have built before and then fixed box again,

33
00:02:46,590 --> 00:02:47,760
optimize the codes.

34
00:02:47,760 --> 00:02:51,570
And those are the three main.

35
00:02:53,080 --> 00:02:57,220
Phases, which you'll go over and over again as you.

36
00:02:58,190 --> 00:03:00,740
Maintain and improve your program.

37
00:03:03,000 --> 00:03:07,050
So in our case, we may go back to the edit feature and improve it.

38
00:03:08,890 --> 00:03:13,830
And then we might think of some other code optimization as we improve this thing.

39
00:03:13,840 --> 00:03:18,510
Perhaps we found out that some part of the code is not so optimized.

40
00:03:18,520 --> 00:03:27,220
So we write that activity down and we we do it in the next opportunity we get on.

41
00:03:27,220 --> 00:03:33,580
Sometimes you might want to give priority to other things, for example, if you have.

42
00:03:34,890 --> 00:03:38,280
Both to optimize the code and you also have to fix the bug.

43
00:03:38,310 --> 00:03:43,260
Perhaps fixing the bug is more important than optimizing the code.

44
00:03:44,900 --> 00:03:50,270
So we'll go through all these phases over and over again through the course, and you'll get better

45
00:03:50,270 --> 00:03:52,420
to managing your programs.

46
00:03:52,430 --> 00:03:54,410
So thanks a lot and I'll talk to you later.

