1
00:00:00,330 --> 00:00:06,000
Hello and welcome to this course in this video, I would like to show you what you will learn throughout

2
00:00:06,000 --> 00:00:09,300
the course and tell you a little bit about the project.

3
00:00:09,300 --> 00:00:12,960
And, General, give you an idea of the structure of the course.

4
00:00:13,260 --> 00:00:13,710
All right.

5
00:00:13,710 --> 00:00:14,710
So let's get started.

6
00:00:15,000 --> 00:00:18,560
First of all, you will get an introduction as we have already started.

7
00:00:19,050 --> 00:00:23,960
There are just give you some tips on how to take the course and how to get most out of it.

8
00:00:24,540 --> 00:00:30,630
Then we get ready with Android studio, which means we are going to set up Android studio in order to

9
00:00:30,900 --> 00:00:34,920
start using it on our Windows, Mac or Linux machine.

10
00:00:35,100 --> 00:00:38,390
And then we will start with our first little application.

11
00:00:38,640 --> 00:00:45,300
We will set up the emulator so that we can test the applications on our emulator directly so we don't

12
00:00:45,300 --> 00:00:47,070
have to always use our phone.

13
00:00:47,070 --> 00:00:50,750
Even though you will also see how to test your applications on your phone.

14
00:00:51,510 --> 00:00:57,750
Then we will get into the cocklin fundamentals because it's important to understand the kotlin fundamentals

15
00:00:57,750 --> 00:01:04,709
before we dig deeper into developing applications, because we're going to use Coplan as our programming

16
00:01:04,709 --> 00:01:06,830
language to develop Android applications.

17
00:01:06,840 --> 00:01:10,140
And that's why it really makes sense to look into the basics.

18
00:01:10,290 --> 00:01:16,650
So first of all, general fundamentals, then object oriented programming basics and Connellan.

19
00:01:16,860 --> 00:01:22,640
And then we're going to look into some more fundamentals, which will be important for the ongoing chapters.

20
00:01:22,860 --> 00:01:27,900
We're not going to cover all of the fundamentals directly at the beginning because we are going to add

21
00:01:28,020 --> 00:01:34,910
new fundamental step by step throughout the course so that we can directly dive into building applications.

22
00:01:35,760 --> 00:01:42,420
Then we start with this very basic application age in minutes app where you will learn how to do the

23
00:01:42,420 --> 00:01:42,930
following.

24
00:01:44,590 --> 00:01:50,350
So we're going to build this little application in which you can select your birthday and then you can

25
00:01:50,350 --> 00:01:54,670
just go ahead and calculate how old you are in terms of minutes.

26
00:01:54,700 --> 00:01:58,900
So in my case, let's say I select my birthday, which was.

27
00:02:01,010 --> 00:02:09,050
May 31st, 1988, and I can see, OK, this is how old I am in terms of minutes, OK, so I'm super

28
00:02:09,050 --> 00:02:13,180
old when it comes to the minutes count 16 million minutes already.

29
00:02:13,460 --> 00:02:19,820
And that's the first little application that you will build, because I think it makes sense to have

30
00:02:19,820 --> 00:02:25,520
multiple aspects that directly cover and not just a very simple basic application.

31
00:02:25,550 --> 00:02:28,310
OK, so I think this is good enough for the start.

32
00:02:28,670 --> 00:02:36,650
And then we, of course, go ahead and build more and more advanced applications as a very classic application

33
00:02:36,650 --> 00:02:41,090
that you have to build, for example, in universities, or that is taught quite often when it comes

34
00:02:41,090 --> 00:02:43,880
to learning to use UI.

35
00:02:43,880 --> 00:02:47,990
So user interfaces and build user interfaces in Android.

36
00:02:48,260 --> 00:02:50,870
They're a calculator, of course, makes sense.

37
00:02:50,870 --> 00:02:55,000
And we're going to build a little calculator therefore as well.

38
00:02:55,430 --> 00:02:58,070
And then the apps get more and more advanced.

39
00:02:58,070 --> 00:03:04,280
So you can see already in terms of the length of the sections, you can see the quiz app is already

40
00:03:04,280 --> 00:03:09,440
a more advanced application than the calculator than the drawing app is even more advanced and the seven

41
00:03:09,440 --> 00:03:11,360
minute workout app is a seven hour.

42
00:03:12,250 --> 00:03:18,970
S. So let's look at the quiz here, you will learn a bunch of cool new features which are super useful

43
00:03:19,150 --> 00:03:20,980
and of course, you're going to build a cool app.

44
00:03:22,170 --> 00:03:28,110
So here you're going to build this application and which you can, first of all, enter your name and

45
00:03:28,110 --> 00:03:34,560
then you have a little quiz where you have an image and a question, and then you can answer the questions

46
00:03:34,560 --> 00:03:37,740
as well as you can and submit the answer.

47
00:03:37,740 --> 00:03:40,440
And then you see whether the answer was correct or not.

48
00:03:40,470 --> 00:03:41,830
And you can go to the next question.

49
00:03:42,060 --> 00:03:48,120
So in this one, it's just a very basic quiz with flags and you have to guess for which country this

50
00:03:48,120 --> 00:03:49,280
flag stands.

51
00:03:49,290 --> 00:03:55,140
And then, of course, you will learn how to adjust that so you can create your very own quiz at that

52
00:03:55,140 --> 00:03:55,500
point.

53
00:03:55,500 --> 00:04:00,900
Once you're done with this quiz application in the course, you can just adjust it to your liking.

54
00:04:00,900 --> 00:04:06,210
You can make a very own quiz with however many questions you want to have, whichever image you want

55
00:04:06,210 --> 00:04:09,810
to display, and also whichever questions and answers you want to display.

56
00:04:10,680 --> 00:04:11,160
All right.

57
00:04:11,550 --> 00:04:13,590
So that is the quiz at once.

58
00:04:13,590 --> 00:04:14,600
We're done with the quiz app.

59
00:04:14,610 --> 00:04:19,440
We go over to the drawing it, and this one is a little more advanced.

60
00:04:19,440 --> 00:04:22,190
But here you are going to learn very different features.

61
00:04:22,200 --> 00:04:29,580
So you're going to learn how to use views and views in a more advanced way than in any other application,

62
00:04:29,580 --> 00:04:31,140
pretty much in this whole course.

63
00:04:31,380 --> 00:04:36,990
So I think this is a very useful thing because it allows you to customize everything to its fullest

64
00:04:36,990 --> 00:04:42,570
and you will be enabled through this chapter to customize your uses as you like them.

65
00:04:42,750 --> 00:04:49,050
And along this journey, you will build this little application here and which you can draw something.

66
00:04:49,080 --> 00:04:49,470
All right.

67
00:04:49,480 --> 00:04:54,530
So you can play around with brush sizes, you can change them.

68
00:04:54,930 --> 00:04:58,340
You can make the brush size a little thinner, for example.

69
00:04:58,350 --> 00:05:03,660
So if you want to draw a beautiful little smiley, as I do here, you'll be able to do so.

70
00:05:03,780 --> 00:05:09,540
And then you will learn how to import images, how to export images and share them with your friends,

71
00:05:09,540 --> 00:05:15,750
for example, via WhatsApp or whatever application you have that allows exporting and sharing.

72
00:05:16,050 --> 00:05:20,100
And you can see we are going to play around with colors and all of that.

73
00:05:20,760 --> 00:05:23,040
And also you can just.

74
00:05:23,960 --> 00:05:25,730
Redo whatever you you're drawn.

75
00:05:28,190 --> 00:05:35,120
Once we're done with the drawing up, we go to the seven minute workout app, which is a app that will

76
00:05:35,120 --> 00:05:42,980
teach you one of the most important parts of development, I'd say, and that is to use recycled views.

77
00:05:43,190 --> 00:05:50,570
So you can see that there are a bunch of intro's demos and so forth, because each time that we introduce

78
00:05:50,570 --> 00:05:58,070
a new topic that is relevant and big enough, I created an extra demo to teach the concept first before

79
00:05:58,070 --> 00:06:01,040
we then apply it in the actual application.

80
00:06:01,250 --> 00:06:08,810
So I think this is going to help you to get a better understanding and also feel more comfortable using

81
00:06:08,810 --> 00:06:09,470
the features.

82
00:06:11,470 --> 00:06:17,870
Of course, we also have exercises and most of the exercises will be inside of the actual lecture,

83
00:06:17,900 --> 00:06:25,120
so I will show you how to do something and then I will ask you to try to rebuild that with your own

84
00:06:25,360 --> 00:06:27,210
understanding of how it's done.

85
00:06:27,400 --> 00:06:30,550
And there are many things that are just coming back.

86
00:06:30,550 --> 00:06:32,710
So many features are just coming back.

87
00:06:32,710 --> 00:06:36,310
And you have to do the multiple times on every new application.

88
00:06:36,310 --> 00:06:39,490
You have to do it again, or maybe even in the same application.

89
00:06:39,490 --> 00:06:42,040
You have to use the same type of code multiple times.

90
00:06:42,280 --> 00:06:45,610
And sometimes it's just minor adjustments.

91
00:06:45,880 --> 00:06:48,040
But still it's slightly different.

92
00:06:48,040 --> 00:06:53,650
And that really helps you to get into the practice of developing real applications.

93
00:06:53,650 --> 00:06:55,290
And that's exactly what you're going to learn, right?

94
00:06:56,630 --> 00:07:02,120
So then that's the seven minute workout application you can see there is a BMI calculator in which you

95
00:07:02,120 --> 00:07:06,260
can enter your weight and height and then you will calculate whether you're fit or not.

96
00:07:06,510 --> 00:07:12,400
Then you will see a history of your exercises when you finish them.

97
00:07:12,590 --> 00:07:18,050
And of course, the exercise itself, where you can just see here, for example, jumping jacks is the

98
00:07:18,050 --> 00:07:21,290
upcoming exercise and then there's a little timer running.

99
00:07:21,290 --> 00:07:28,190
And once that's done, you will get over to this activity in which you can see which exercise you have

100
00:07:28,190 --> 00:07:28,520
to do.

101
00:07:28,730 --> 00:07:33,080
And here at the bottom, you can see there is a little risk with you, which also indicates in which

102
00:07:33,080 --> 00:07:34,310
exercise you currently are.

103
00:07:34,490 --> 00:07:35,930
So this is very.

104
00:07:37,590 --> 00:07:43,230
Adjusted and very specific, you can even see here a little dialogue which says, hey, do you really

105
00:07:43,230 --> 00:07:44,400
want to quit this exercise?

106
00:07:44,400 --> 00:07:47,310
You have come so far, so you will learn all of that.

107
00:07:49,360 --> 00:07:54,220
All right, so that's a seven minute walk out and then we go to the Happy Places app, and this one,

108
00:07:54,220 --> 00:08:00,010
you will learn how to use third party libraries quite extensively because we are going to use many of

109
00:08:00,010 --> 00:08:00,850
them here.

110
00:08:01,090 --> 00:08:06,850
And this is very, very important and super powerful because you don't want to build all of the code

111
00:08:07,000 --> 00:08:07,740
by yourself.

112
00:08:08,050 --> 00:08:15,220
You want to reuse as much code as possible and not having to build everything because so many third

113
00:08:15,220 --> 00:08:20,770
party libraries are available and they are made available by other developers that want to make our

114
00:08:20,770 --> 00:08:21,450
life easier.

115
00:08:21,460 --> 00:08:23,700
And why wouldn't we want to use that?

116
00:08:23,950 --> 00:08:27,210
And that's exactly what you will learn extensively in this chapter.

117
00:08:27,220 --> 00:08:32,559
So you're going to learn how to use many different features and also many different third party libraries.

118
00:08:33,880 --> 00:08:38,049
And by the end, you will have this little application here, so you can see you can add a little happy

119
00:08:38,049 --> 00:08:43,630
places, which you can then give a title, a description, a date when you were there, then the location

120
00:08:43,630 --> 00:08:46,690
you can search for the location or you can set the current location.

121
00:08:46,960 --> 00:08:49,480
Then you can add an image and you can save that.

122
00:08:49,750 --> 00:08:54,460
And then it will appear here in this recycle of your or in this list pretty much.

123
00:08:54,700 --> 00:09:00,970
And then you can also, of course, added that so you can view it on the map and then make changes to

124
00:09:00,970 --> 00:09:01,270
the.

125
00:09:02,270 --> 00:09:07,910
Settings and you can see here, Mt. Everest, it will display the map, so we're going to, of course,

126
00:09:07,910 --> 00:09:14,150
check out how to use Google Maps, how to use Google places and many other third party libraries.

127
00:09:14,600 --> 00:09:19,910
At this point, you are going to learn one of the most important things when it comes to developing

128
00:09:19,910 --> 00:09:24,170
and to developing real and advanced applications.

129
00:09:24,170 --> 00:09:25,460
And that is to use Jason.

130
00:09:25,880 --> 00:09:35,570
So Jason is a way to store data or to display data that can be used quite well in programming in general.

131
00:09:35,570 --> 00:09:44,570
So you can get data very well designed and you can quite quickly use it in your application and display

132
00:09:44,640 --> 00:09:45,200
accordingly.

133
00:09:45,230 --> 00:09:47,070
So however you want to display the data.

134
00:09:47,300 --> 00:09:53,660
So in this case, we're going to create a little weather app which allows us to download data from a

135
00:09:53,960 --> 00:09:55,400
free source.

136
00:09:55,400 --> 00:09:58,380
So we're going to see how to use a free source for this one.

137
00:09:58,700 --> 00:10:03,710
And of course, you will be able to apply that knowledge to whatever application you have to build.

138
00:10:03,950 --> 00:10:10,970
And many customer inquiries that I've done have been something where you had to use Jason.

139
00:10:11,000 --> 00:10:11,390
All right.

140
00:10:11,400 --> 00:10:13,310
So we had to use API calls.

141
00:10:13,310 --> 00:10:15,230
We had to use the rest and so forth.

142
00:10:15,520 --> 00:10:20,540
OK, so all of these beautiful keywords that you might have heard while you're going to learn about

143
00:10:20,540 --> 00:10:23,900
those and you're going to learn how to use them and how they actually work.

144
00:10:24,830 --> 00:10:31,040
So here, for example, this is going to be the weather app where you can then see different data and.

145
00:10:32,170 --> 00:10:34,870
Yeah, for example, the temperature and so forth.

146
00:10:35,980 --> 00:10:42,100
OK, and then the final lap is the Bangar, as you can see here, 14 hours of content.

147
00:10:42,110 --> 00:10:48,610
So this is really a huge project, but it's that on purpose because it's not just stupid stuff that

148
00:10:48,610 --> 00:10:54,520
you have seen all over and over again, but it's a lot of new content that you will learn here.

149
00:10:54,520 --> 00:11:00,760
So you will learn how to use Firebase, how to use fires for how to use user management, drag and drop

150
00:11:00,760 --> 00:11:02,820
online database and so forth.

151
00:11:02,830 --> 00:11:09,010
So a bunch of very advanced and very important features when it comes to highly advanced applications.

152
00:11:09,040 --> 00:11:16,840
OK, so if you ever want to build something like a Tinder app or a Facebook or a Twitter or whatever,

153
00:11:17,530 --> 00:11:23,890
you can think of what you need to display a lot of different data, then using Firebase is a great choice

154
00:11:23,890 --> 00:11:24,210
for this.

155
00:11:24,220 --> 00:11:29,950
And we are going to build a Trello clone, which is a project management tool that I use quite extensively

156
00:11:29,950 --> 00:11:31,860
and I really like it and many other people do.

157
00:11:31,870 --> 00:11:39,900
So it's a very great application and this one is super advanced in terms of the functionality, of course.

158
00:11:39,900 --> 00:11:45,280
So you can see there are many lectures that we're going to work through and some of them are repetition.

159
00:11:45,280 --> 00:11:50,350
But that's great because then you can really apply all of the knowledge that you have gained so far

160
00:11:50,590 --> 00:11:53,170
and build those pieces yourself.

161
00:11:53,170 --> 00:11:57,850
And I will often enough give you time to try to execute that.

162
00:11:57,880 --> 00:11:58,230
All right.

163
00:11:58,240 --> 00:12:02,370
Try to build parts of the application all by yourself.

164
00:12:04,470 --> 00:12:10,500
And at the end, you will have built such an application here, so you can see here we have a list of

165
00:12:10,920 --> 00:12:13,020
tasks or boards, so to speak.

166
00:12:13,020 --> 00:12:14,580
So these could be projects, right.

167
00:12:14,880 --> 00:12:19,920
And then we can go ahead and add steps here.

168
00:12:19,920 --> 00:12:26,460
So we have task lists and individual cards to which we can then assign users who are responsible for

169
00:12:26,460 --> 00:12:27,060
that task.

170
00:12:27,360 --> 00:12:29,540
OK, so this is a real project management tool.

171
00:12:29,550 --> 00:12:35,370
If you have ever used Trello or any other project management tools, you will see many of the features

172
00:12:35,370 --> 00:12:35,940
in here.

173
00:12:36,180 --> 00:12:38,630
OK, so we can add cards at any time.

174
00:12:38,640 --> 00:12:45,630
So this one will be, let's say, cards two and then you will also learn how to use the drag and drop

175
00:12:45,630 --> 00:12:52,050
feature and which allows you to basically drag cards and change the position of those cards.

176
00:12:52,650 --> 00:12:53,020
All right.

177
00:12:53,040 --> 00:12:54,750
So this is super cool stuff.

178
00:12:55,020 --> 00:13:00,290
And I built this application with Trello in mind.

179
00:13:00,300 --> 00:13:00,600
Right.

180
00:13:00,610 --> 00:13:08,880
I thought about how do I want to teach all of these things that Trello does that will help people and

181
00:13:08,880 --> 00:13:15,160
help my students to build super advanced applications and become really good developers.

182
00:13:15,510 --> 00:13:15,920
All right.

183
00:13:15,930 --> 00:13:22,680
So that at that point, I just came up with new ideas and what I wanted to add and how deep I want to

184
00:13:22,680 --> 00:13:23,970
go there to see.

185
00:13:23,990 --> 00:13:29,490
You can even add ID cards, you can delete cards, you can change the name, can select the label color

186
00:13:29,490 --> 00:13:30,930
here, which will be done.

187
00:13:30,930 --> 00:13:33,650
The color for this individual card.

188
00:13:33,660 --> 00:13:40,950
You can add members who you assign to the board to be responsible for this specific card so that they

189
00:13:40,950 --> 00:13:46,740
know, OK, I have to do something and they get a notification knowing, OK, well, I have a new card

190
00:13:46,740 --> 00:13:49,440
that I'm responsible for and cards could be tasks.

191
00:13:49,440 --> 00:13:49,690
Right.

192
00:13:49,710 --> 00:13:55,980
So for example, furnishing a part of an application, developing something like this feature could

193
00:13:55,980 --> 00:14:00,900
be a card and they can select the due date at which the card has to be finished.

194
00:14:00,900 --> 00:14:01,920
And you can update that.

195
00:14:01,920 --> 00:14:07,280
And it goes to the real time database firebase in the cloud and it's stored permanently there.

196
00:14:07,650 --> 00:14:12,870
So, of course, we have a full user management where you can register via multiple approaches.

197
00:14:12,880 --> 00:14:15,210
We are going to use email to keep it simple.

198
00:14:15,510 --> 00:14:20,490
Then you can see you will have a profile which you can then change you can change the profile image

199
00:14:20,520 --> 00:14:26,610
here based on whatever images you have on your phone, or you can use the camera to make new pictures

200
00:14:26,610 --> 00:14:27,180
and so forth.

201
00:14:27,190 --> 00:14:31,110
So this is a fully advanced application.

202
00:14:31,230 --> 00:14:37,170
And I've looked at other courses and I have made other courses before and I've never created such an

203
00:14:37,170 --> 00:14:42,270
advanced project because many of my students asked me, Hey, Dennis, could you please make a huge

204
00:14:42,270 --> 00:14:42,720
project?

205
00:14:43,050 --> 00:14:46,080
Because all of those small projects, they're cool and all.

206
00:14:46,200 --> 00:14:52,770
But I would really like to see a huge project to really build something from scratch and all the way

207
00:14:52,770 --> 00:14:53,130
through.

208
00:14:53,400 --> 00:14:54,930
And that's exactly what we're doing here.

209
00:14:55,080 --> 00:14:59,870
So we're building this huge application and it's really prepared.

210
00:15:00,030 --> 00:15:03,630
So all of those other projects, they prepare you to build this.

211
00:15:03,960 --> 00:15:09,000
Of course, there is a lot of new stuff that you will learn, but many fundamentals that you learn throughout

212
00:15:09,000 --> 00:15:12,000
all of these other chapters, they will be necessary to build this.

213
00:15:12,420 --> 00:15:15,600
OK, so this is super duper important, in my opinion.

214
00:15:15,780 --> 00:15:18,360
And of course, you have a bunch of exercises.

215
00:15:18,360 --> 00:15:23,400
And what's even better, you can download the code of all of those videos for every single video.

216
00:15:23,400 --> 00:15:24,830
I have a version, so to speak.

217
00:15:24,840 --> 00:15:25,080
All right.

218
00:15:25,080 --> 00:15:30,660
So you can download the version that you have for specific features and then you can see how to build

219
00:15:30,660 --> 00:15:33,450
those features with a step by step instruction.

220
00:15:33,750 --> 00:15:39,660
So not just in the videos, but also in the code itself, you will have an instruction on how to implement

221
00:15:39,660 --> 00:15:40,760
a specific feature.

222
00:15:41,010 --> 00:15:42,300
So this will help you.

223
00:15:42,310 --> 00:15:45,870
And I think this is something that I have not seen in other courses.

224
00:15:45,870 --> 00:15:53,250
And I really think that this is a huge changer, because when you want to build something, you, of

225
00:15:53,250 --> 00:15:57,720
course, can check out the video, but you can also just download the code and check out how it's done

226
00:15:58,080 --> 00:16:00,270
using the Step-By-Step Guides.

227
00:16:01,140 --> 00:16:07,800
You can see I am very, very excited about this course and I'm very, very proud of the work that I

228
00:16:07,800 --> 00:16:08,310
did there.

229
00:16:08,490 --> 00:16:14,670
And I hope you enjoy it, because that's really what's my main goal, that you enjoy it and when you

230
00:16:14,670 --> 00:16:18,150
enjoyed it automatically leads to you finishing it.

231
00:16:18,150 --> 00:16:20,910
And when you finish it, you will become a real Android developer.

232
00:16:20,910 --> 00:16:23,970
And that is what my huge goal is.

233
00:16:23,970 --> 00:16:30,570
That's like my life goal, right, to make as many people as possible, real developers and not just

234
00:16:30,570 --> 00:16:39,180
that, but become more happy, because if you have a better job that pays better and that just gives

235
00:16:39,180 --> 00:16:41,370
you a lot more freedom, this will make you happier.

236
00:16:41,700 --> 00:16:43,470
And I want to make people happier.

237
00:16:43,470 --> 00:16:43,810
Right.

238
00:16:43,830 --> 00:16:45,120
So that's really my goal.

239
00:16:45,130 --> 00:16:49,290
So thanks a lot for working through this very long video.

240
00:16:49,530 --> 00:16:55,560
This is maybe way too long for the first video of the course, but I still think it's important to give

241
00:16:55,560 --> 00:16:57,930
you a good understanding of what you're going to learn.

242
00:16:58,410 --> 00:17:03,630
OK, I probably super hard to get started directly, and that's why I don't want.

243
00:17:03,740 --> 00:17:08,230
To stop you from that, I see you in the next lecture and thanks a lot for being with me.

