1 00:00:00,150 --> 00:00:02,070
Jonathan Yeong: So you want to learn web development, but
2
3 00:00:04,050 --> 00:00:07,020
If you asked me this question a few months ago, I would've said go learn
4 00:00:07,050 --> 00:00:10,920
HTML, CSS, and JavaScript, and then maybe giving you a web developer
5 00:00:10,920 --> 00:00:14,940
roadmap that kind of guided you on to what the next steps are for a front
6
7 00:00:16,920 --> 00:00:20,250
But I actually don't think that answers your question or at least that's not
9 00:00:21,915 --> 00:00:25,125
So in this video, I want to share everything I know about learning and
10 00:00:25,125 --> 00:00:29,685
how I learn web development, concepts, and languages and all that stuff.
11 00:00:29,924 --> 00:00:33,195
Now I won't be going over what you should learn, but hopefully by the end
12 00:00:33,195 --> 00:00:37,035
of this video, you'll have some processes and techniques for learning yourself.
13 00:00:37,065 --> 00:00:40,275
And then also have some idea on how to choose what to learn next.
14
15
16 00:00:43,595 --> 00:00:46,115
There's going to be times when you're going to feel overwhelmed, you're
17 00:00:46,115 --> 00:00:49,385
going to get stuck and you're going to make mistakes, like a lot of mistakes.
18
19 00:00:51,665 --> 00:00:55,475
I've been a developer for five plus years and I still feel all of those things.
20 00:00:55,745 --> 00:00:59,645
I definitely feel overwhelmed because there's just so much to learn out there.
21 00:00:59,900 --> 00:01:01,730
And there's just so much that I want to learn.
22
23
24
25
26 00:01:07,039 --> 00:01:09,710
To be stuck after all this time, I've realized it's not because
27 00:01:09,710 --> 00:01:12,770
I'm a bad developer that I don't understand a concept it's because
28
29
30 00:01:16,070 --> 00:01:18,080
And it should be a little bit of a struggle.
31
32 00:01:19,450 --> 00:01:20,810
So I just want to acknowledge that feeling.
33 00:01:21,110 --> 00:01:23,480
I'm going to get off the soap box and I'm going to talk about.
34 00:01:23,800 --> 00:01:27,580
The two ways that I go about learning and that's through practice and reflection.
35 00:01:27,790 --> 00:01:31,930
With practice I had this misconception that all I had to do was build side
36 00:01:31,930 --> 00:01:36,110
projects in my mind, building side projects made sense because I had gone
37 00:01:36,110 --> 00:01:40,690
through so many tutorials and I felt this kind of tutorial, purgatory tutorial,
38 00:01:40,690 --> 00:01:44,830
hell thing, where you just consume information and you never actually
39
40 00:01:46,600 --> 00:01:49,430
So that's why I've always said, go learn, go with build side
41
42 00:01:52,015 --> 00:01:55,225
Courses and documentation are there for a reason now that's because you
43
44 00:01:56,455 --> 00:02:00,115
If you don't have any of that foundational knowledge again, that's where courses
45
46 00:02:02,605 --> 00:02:06,385
And just learning the syntax really helps in this situation because practicing
47
48 00:02:08,005 --> 00:02:11,485
It's about memorizing kind of the foundational knowledge you need, but
49 00:02:11,485 --> 00:02:15,145
then also applying that knowledge to solve different situations.
50 00:02:15,565 --> 00:02:20,335
And I would say it's really okay to bounce between all of these different forms of.
51 00:02:20,500 --> 00:02:24,030
Resources, but also different topics as well interleaving and varying
52 00:02:24,040 --> 00:02:28,990
practice, they actually shown to deepen your understanding of a concept.
53 00:02:29,535 --> 00:02:33,855
It kind of forces you to choose a lot of different or to expose yourself
54
55 00:02:35,355 --> 00:02:38,295
And you can take what you've learned in one of these scenarios and apply
56
57 00:02:40,335 --> 00:02:43,875
And that's not something you get when you just learn HTML, CSS or
58 00:02:43,875 --> 00:02:48,165
JavaScript, kind of one at a time and contrary to develop roadmaps learning.
59
60 00:02:49,965 --> 00:02:53,265
It's a jumble of like bouncing back and forth between topics,
61
62 00:02:55,125 --> 00:02:58,234
And then being able to just go down rabbit hole if you really want.
63 00:02:58,655 --> 00:03:03,665
So that's why I think it's awesome to go learn different things.
64 00:03:03,665 --> 00:03:05,825
At one time, you don't need to kind of choose one topic
65
66
67
68 00:03:10,265 --> 00:03:13,475
And, um, varying practices that it's going to be really slow.
69 00:03:13,685 --> 00:03:17,225
And it's going to feel really weird because there's times when I want to
70 00:03:17,315 --> 00:03:20,165
understand something completely before I move on to the next topic, but
71
72 00:03:22,365 --> 00:03:25,484
Do that and to go learn something, even when I haven't really
73
74
75 00:03:28,785 --> 00:03:32,985
And if you feel overwhelmed, take a break and taking breaks actually really
76 00:03:32,985 --> 00:03:37,095
helps because a, you let your mind rest a little bit, but also you kind of
77
78 00:03:39,555 --> 00:03:42,645
And the next time you go, try to learn that you have to recall that
79 00:03:42,645 --> 00:03:46,575
bit of information and recollection actually helps reconsolidate.
80 00:03:46,835 --> 00:03:49,805
That information in your brain, it helps form those connections.
81 00:03:49,985 --> 00:03:52,685
So recalling is really helpful in the process of learning.
82 00:03:53,285 --> 00:03:57,695
You never want to leave too much time where you have to relearn all this
83
84 00:03:59,705 --> 00:04:02,645
You definitely want to leave enough time where it doesn't feel like
85 00:04:02,645 --> 00:04:06,515
you're just constantly repeating, um, resources, or you're not like
86
87 00:04:08,585 --> 00:04:08,795
So.
88 00:04:09,450 --> 00:04:13,890
A day break in between sessions or maybe just a good night's sleep is a good amount
89
90
91 00:04:18,570 --> 00:04:24,360
So for me, I will generally set out some time, so I normally do an hour.
92 00:04:24,565 --> 00:04:28,045
But if I'm not feeling it, or if my brain is just not working that day.
93 00:04:28,315 --> 00:04:31,015
Um, I'll try and sit down and for maximum 15 minutes.
94 00:04:31,045 --> 00:04:34,345
And, um, what I'll do in that session is have a goal in mind.
95
96 00:04:36,355 --> 00:04:39,895
If I'm just learning about a new thing, then I might go.
97 00:04:40,150 --> 00:04:42,400
And start with a course or read some documentations.
98 00:04:42,700 --> 00:04:47,200
And as I'm going through that step, I'll note down any questions or any
99 00:04:47,230 --> 00:04:49,270
nouns or words, I just don't understand.
100 00:04:49,690 --> 00:04:53,410
And then I'll stop what I'm doing and go find out about that thing.
101 00:04:53,560 --> 00:04:57,610
So an example is working on a Phoenix framework project, I'm
102
103 00:04:59,935 --> 00:05:04,315
There's this term called, um, umbrella project that I just don't understand.
104 00:05:04,345 --> 00:05:08,125
So I would stop what I'm doing and go Google about that concept.
105 00:05:08,305 --> 00:05:11,815
And if it's super interesting, I'll just keep Googling stuff around that.
106 00:05:12,055 --> 00:05:14,785
And I might never come back to what I was working on.
107 00:05:15,205 --> 00:05:19,135
And that's another weird thing about this kind of journey is it's all
108 00:05:19,135 --> 00:05:23,185
about learning and it's not about finishing anything in particular.
109 00:05:23,455 --> 00:05:26,485
Obviously, if there's a deadline that you need to meet, like if it's for work,
110
111 00:05:28,830 --> 00:05:31,500
Yeah, going down a rabbit hole and go fix that thing.
112 00:05:31,800 --> 00:05:35,580
But if your primary goal is to learn that it's totally okay to be able
113 00:05:35,580 --> 00:05:39,870
to bounce between things and to not get as much done as you want in that
114
115 00:05:41,700 --> 00:05:45,090
So say you've just written some code or you finish a tutorial,
116 00:05:45,090 --> 00:05:48,540
or course, it's a great idea to go reflect on what you've done.
117 00:05:49,034 --> 00:05:53,294
And reflection is a great learning tool because it forces you to elaborate on
118
119 00:05:55,755 --> 00:05:59,114
And you can only really put something in your own words when you actually
120 00:05:59,114 --> 00:06:02,864
understand that concept and blog posts are a great way to go and
121
122 00:06:04,875 --> 00:06:08,474
Publishing a blog post, forces you to answer a lot of the questions
123 00:06:08,474 --> 00:06:12,105
that others might have, like such as why did I do this thing?
125 00:06:12,974 --> 00:06:16,395
Or why is it different than someone else's thing?
126 00:06:16,724 --> 00:06:19,425
And by answering these questions, you gain a deeper understanding
128 00:06:21,405 --> 00:06:24,675
Blog posts might not be for everyone if you don't want to do this.
129
130 00:06:26,175 --> 00:06:29,145
I would still suggest writing a reflection at the end of the day or
131
132 00:06:30,555 --> 00:06:34,575
And that's actually what I do after every learning session, um, for me.
133 00:06:34,935 --> 00:06:37,005
So I'll answer three questions in my reflection.
136
137 00:06:40,605 --> 00:06:42,855
Did I break something to learn something amazing?
138
139 00:06:45,015 --> 00:06:47,205
And all of these questions kind of forced me to.
140 00:06:47,609 --> 00:06:53,039
Um, put whatever, just learned in my own words but also how it fits with my mental
141 00:06:53,039 --> 00:06:58,320
model, um, how it fits with like how I kind of view the world as a, as, um, as
142 00:06:58,320 --> 00:07:02,640
a programmer, having a mental model helps you solve different problems in different
143
144
145 00:07:05,664 --> 00:07:08,215
And I totally understand that if you're new to this, or if you're
146 00:07:08,215 --> 00:07:11,275
an early in career developer, you might not have a mental model.
147 00:07:11,335 --> 00:07:14,994
I think in lieu of a mental model, a checklist is actually a great substitute
149 00:07:17,244 --> 00:07:20,995
For example, when I was debugging the other day, I realized that.
150 00:07:21,300 --> 00:07:24,450
I have this mental model in my head that matches kind of situations
151
152 00:07:25,920 --> 00:07:29,940
But what I really do is run through the same set of steps, such as, okay.
153 00:07:29,940 --> 00:07:33,720
If I turn this flag off, what will happen if I run this test, what will happen?
154 00:07:34,020 --> 00:07:38,280
And as I go through these checks, I kind of drill down to what the issue is.
155
156 00:07:40,740 --> 00:07:44,210
And I don't think it fully replaces a mental model, but.
157 00:07:44,414 --> 00:07:46,604
I think it's a great place to start setting aside
158
159 00:07:48,344 --> 00:07:51,765
Let's talk about the very last thing and that's choosing what to learn.
160 00:07:52,185 --> 00:07:56,325
So Jason Lengstorf a developer advocate from Netlify has a great quote that
161
162 00:07:58,775 --> 00:08:01,525
Jason Lengstorf: for me, learning is a matter of pursuing what's.
163
164 00:08:02,280
--> 00:08:02,580 Right.
165 00:08:02,580 --> 00:08:07,110
And so I, I make it, I say it all the time, like play until it pays.
166 00:08:07,590 --> 00:08:11,490
And what I mean by that is that you should be going after the things that
167 00:08:11,490 --> 00:08:15,280
are interesting to you and trying to just go a little bit deeper on all of them.
168 00:08:15,280 --> 00:08:17,810
Jonathan Yeong: Essentially, he talks about finding something that interests
169 00:08:17,810 --> 00:08:22,010
you and just following that interests and just seeing where it takes you,
170 00:08:22,160 --> 00:08:25,100
because there's a lot of development jobs in many different spaces.
171
172
173
175 00:08:31,550 --> 00:08:36,290
So you want to make that barrier to entry as smaller and as low as possible.
176 00:08:36,740 --> 00:08:39,260
And obviously there's still a lot of stuff out there.
177 00:08:39,290 --> 00:08:40,970
It doesn't really help combat that overwhelm.
178 00:08:40,970 --> 00:08:43,430
Like how do you know what's interesting if you have to
179
180 00:08:45,020 --> 00:08:48,720
And I think that's where choosing a goal or having an idea of where
181
182 00:08:50,960 --> 00:08:53,900
If you want to be a react developer well you're going to go learn about
183
184 00:08:55,590 --> 00:08:57,695
. Gonna go learn about Ruby, for example.
185 00:08:57,995 --> 00:09:00,665
And the final point that I have is learning is not sequential.
186 00:09:00,665 --> 00:09:03,755
Like you don't need to follow a developer roadmap from A, B and C.
187 00:09:03,935 --> 00:09:07,995
You can bounce between lots of different topics and this idea of like following.
188 00:09:08,015 --> 00:09:12,545
What is interesting, interesting to you actually fits really well with this
189
190 00:09:15,155 --> 00:09:18,695
Um, you just kind of go down the rabbit hole or just choose what's fun.
192 00:09:19,734 --> 00:09:23,665
And that actually helps build up your knowledge because you're varying
193
194 00:09:25,045 --> 00:09:27,655
And you're exposing yourself to many different scenarios.
195 00:09:27,685 --> 00:09:31,285
That is everything that I know about learning through
197 00:09:33,834 --> 00:09:36,954
And then choosing what to learn is really just about following
198 00:09:36,984 --> 00:09:40,344
that interest and, and finding a goal and an outcome that you want.
199
200 00:09:41,415 --> 00:09:44,714
If this video helped you share what you're learning or how you learn,
201
202
203 00:09:47,655
--> 00:09:48,015 Bye.