How to learn programming language faster

Today we are going to talk about how to learn coding faster. And there's really only one skill that you need to have to learn to code.

And that is really the ability to just sit at the computer for many hours at a time. All engineers know that there’s something called the zone, where they basically just sit at a computer, uninterrupted for long periods of time.

Building a habit

That's how they’re able to put together complex thoughts, chained together many pieces of logic, and basically put a program together.

And this is a habit that a lot of people don't have, like they sit down for 10 minutes at a time, they don't really have a desk maybe, they're like watching TV as they’re using their laptop and then checking their phones all the time.

And then they gotta get up and pick a cupcake, and then go walk the dog, and then they gotta go drive out and do an errand, go shopping, come back, and then they gotta go meet up with their friends.

And each time they have maybe 10, 20 minutes at the computer, and it's just not enough time to really sit down and focus.

So if you can get into the habit of saying you're just gonna block out say, four hours in the evening, grab a cup of tea.

And then really just sit down and focus on staring at the computer for this amount of time, then I think you'll be able to develop that habit.

And it's even better if you can block off like an entire afternoon and just give a whole day to it.

And that is how you will basically be able to learn.

Ability to learn

And basically software engineering is just all about learning over and over again, it's kind of an interesting career because it's not like being a lawyer or doctor where over time.

Your experience just builds and builds, and then when you're like a 60-year-old doctor or lawyer, you're just so experienced and you can try to choose amounts of money.

Now for software engineering, when you become like a 60-year-old guy, you're probably outdated.

Now, this isn't really necessarily about ageism, it's more about many people just decide to stagnate and they stop learning.

If you can continue learning and keeping up with new technology as it changes over the many years, then you're gonna be good generally.

So this is really about developing the ability to learn.

And that ability to learn needs to be done over long periods of time sitting in front of the computer.

Listening music makes you feel good

And one tip I have is, I will usually just get some really good music.

It will make me want to sit down at the computer so I can listen to that music.

And then I'll just listen to it. And then I'll just focus on whatever it is I'm doing.

And also say that a lot of normal people don’t have the ability to just sit down for many hours at a time and stare at a computer, like, I'm not even sure if it's really something healthy to be doing.

Usually it's the people at school who don't have a lot of friends, who don't get invited to the cool parties, and so then they just sit at home by themselves, and they've got nothing better to do except to learn, basically get good at computer coding.

So like, if you're a kind of a popular person. Or you've got a lot of events and cool things going on in your life.

Then you're probably going to find it to be very difficult to just force yourself to just sit at home and ignore all those other events.

For me, I'm the type of person who really enjoys being at home and not doing a lot of things.

Like given the choice, I might just sit at home for like, a whole month, and that might go out once a month.

You know, I just, I don't feel a need to be going out shopping and like going to the mall every day. Like, it's just not that interesting to me.

I remember when I was in high school, I wasn't the smartest kid. Like I was pretty smart.

But there were these other kids who were much smarter than me. And they would always be getting like a pluses on all the exams.

And basically, by the end of the first year, all of them dropped out.

And I was like the only person left from my high school who was actually studying computer science and the program.

That first class is called the weeder class, because it's intentionally made to be difficult and just filter out a lot of students, and basically give them bad grades, so they're forced to drop out.

Meanwhile, for me, I just really enjoyed that course I got like a plus in it.

And I think the reason is that a lot of these people were probably very good that normal studying, like they could read a book, they could memorize it, they could do their homework.

But they may not have had that culture of sitting in front of a computer for long periods of time, and that was something that.

And meanwhile, I think a lot of these other kids, they really had no clue what they're getting themselves into.

But computer science is a whole different culture and requires that computer culture.

Now when you actually get into the computer science courses, it may surprise you to hear that the professors don't actually teach you any programming languages at all.

So language syntax, like how to code in Python, C++, Java, JavaScript, PHP, or Objective C, all of that stuff, they don't really, no one, nobody teaches you that.

So if you were thinking that when you get into college, somebody is actually going to sit down and teach you all these languages, that's not the case. No one ever held any engineer’s hand like that.

Everybody who learned how to code generally had to do it by themselves. And they're all self-taught in that sense. So don't wait to be taught by somebody. And that's just how it is.

And you just gotta keep self-teaching yourself. So if you don't have that self-teaching culture, that initiative, then you need to be able to develop that.

Let me just clarify that, there are some courses that can teach you these languages.

If you actually need the help, but most four-year degree college programs will not be teaching you that.

These are things that you may learn in, say high school courses or community college courses.

And I think a lot of people maybe think that, well, the people who actually gone to a computer science program and maybe like you didn't, for example, maybe you're thinking that they were actually taught this stuff, no one was taught this stuff.

What people are actually taught in these courses is the supposed fundamentals which are like algorithms, data structures, how operating systems and compilers work, databases.

But probably the only course that you really need to know are like data structures and algorithms.

And, you can keep in mind that each of these courses is just basically one textbook.

So if you were to read two to three textbooks, you'll basically be covered, and that'll get you going.

And in reality, a lot of computer science, you don't really need to know these crazy data structures and algorithms, like they'll tell you how to implement a hash table, but in reality, no one really implements a hash table, they just use it.

And basically, if you were to do the algorithms course, I understand time space analysis, like how efficient these data structures are, then you're gonna be able to use them fine.

And there's not that much holding you back then, like, so I think you can get very far even teaching yourself on your own.