One of the most difficult parts of being a self-taught developer is finding the right resources and mediums to learn with and if you have an internet connection you access to pretty much all the information in the world, but there is so many routes that you can take that can get pretty daunting especially for beginners, so in this article you are gonna learn about 10 methods of learning that helps Brad the founder of Traversy Media youtube channel to become a self-taught developer and not only he learns how to code and develop web project but also he is one of the best instructors in this field.
10 top methods to learn how to code in 2019
- CREATE YOUR OWN PROJECTS
- STANDALONE COURSES
- YOUTUBE TUTORIALS
- CODE EXAMPLES
- OTHER HUMANS
- STRUCTURED E-COURSE / PLATFORMS
- WRITTEN TUTORIALS / BLOGS
- AUDIO BOOKS / PODCASTS
- READING BOOKS
10. READING BOOKS
- Great for higher level programming subjects like concepts, soft-skills, business, etc.
- Learn about the industry, lifestyle, business.
- Hard to retain information when it comes to coding books
- Mostly fundamentals and go out of date quickly
This definitely isn't the brad's favorite medium for learning how to code specifically, but it is great for learning concepts and things like soft skills interview preparation business things like that as opposed to specific coding syntax, so books like Clean Code by uncle Bob, these are the types of books Brad recommend. There are some good coding books however it's hard to retain unless you're actually setting in front of a computer trying the examples, reading books can be a good overview for technologies and you can just kind of hang out on your couch and read them. However mostly you're not gonna learn as much as you would by following a video course and some of other methods, and also books go out of date really quick because technology moves so fast and books just take so long to write and so long to update, but again reading books is great for more higher level programming related subjects.
9. AUDIO BOOKS / PODCASTS
- Learn anywhere (car, gym, etc)
- Audio books - large topics
- Podcasts - Tips, news, etc
- Syntax.fm, Codepen radio
Audio books and podcasts definitely aren't for learning how to code but they are great for supplements for learning things about the industry and stuff like that, the best thing about both of these resources is that you can listen to an audio book or a podcast at almost any time so if you're going for a long drive or you're at the gym or you're waiting for an appointment you can throw on an audio book or listen to a quick podcast.
8. WRITTEN TUTORIALS / BLOGS
- Scotch.io, Tuts , Medium, Personal Blogs, etc
- Targeted and right to the point
- Clear code blocks and examples
- Easy reference
- Not explained well enough
There's some great websites that offer free written tutorials scotch.io is really good, Tuts plus, there is some great medium articles out there on all different subject and even though you're reading them, they're much different than books, because they're right to the point, there is plenty of updated tutorials also everything is right there you don't need to pause or rewind or fast-forward, the code examples are right in front of you, and you can easily reference them later on if you want just bookmark the web page.
The thing that maybe you will not like about written tutorials is that a lot of the time they don't explain things very well, they have a large chunk of code and write maybe two or three sentences about it and that's leave the reader hanging not knowing what have the code does and of course the reason for that is; if they explained every line it would turn into and e-book, so there's just not enough room.
7. STRUCTURED E-COURSE / PLATFORMS
- freeCodeCamp, Codeacademy, Team Treehouse, etc
- Clear curriculum
- Great for beginners that don't know where to start
- Interactive editors / projects
These are platforms that give you a strict curriculum to follow and they give you a lot of structure, they are really great for absolute beginners that don't really know where to start, these are the most similar to traditional schooling, if you're lost and you just don't know where to begin, then something like freeCodeCamp.org will be very helpful to you. A lot of these platform have these interactive editors and they tell you what to type. so it worth checking out especially if you're someone that needs a lot of structure.
6. OTHER HUMAN
- Friends, co-workers
- Attend meetups and conferences
- Online interaction (forums, slack, discord, etc)
Other humans, other developers can be an incredible resource for learning how to code, if you can find friends or coworkers or whoever anybody who is interested in coding and you can get with them and maybe build a project together, that way you can learn a lot, if you don't have any friends that are into this stuff you can go to a meet-up or a conference at least talk to other people about what they're into, if you you're just starting out and you can find a good developer as a mentor that's like striking gold, if you can actually find a good developer that has the time, but that's kind a hard to do, you could pay for someone's time but that gets really expensive really quick, so probably that wouldn't be recommended unless you're loaded.
There is also online communities, forums, slack channels, discord channels. Connecting in real life is obviously much better but if you can't do that you have online communities where you can interact with people and learn from other people as well.
5. CODE EXAMPLES
- For more experienced developers
- Find stuff built with similar technologies
- Clone Github repos and play around with it
- Talk to the developer (if possible)
This can be great but it's more experienced developers looking to learn something new, looking through github repos, cloning them to your machine, playing around with the code, all this will definitely help you figure out how certain things work. The downside is you don't really have any guidance, there is no tutorial or course or anything you just have the code to look at you do have the discussion thread or the issues thread if you want to check that out maybe you can contact the developer if you're really interested in something.
4. YOUTUBE TUTORIALS
- TONS of information
- Super targeted learning
- Channels for tutorials, advice, talks, etc
- Sometimes YouToubers stop making content
Of course YouTube tutorials is a great free way to learn how to code and what makes it likable is that you can search for absolutely anything if you want to learn about let's say react hooks you get a ton of videos, if you want a narrow down to the use of effect hook in particular get a bunch of videos on that some are great some aren't so great, so you have to kind of weak that out and also the videos with a really bad audio and the ones that don't really explain much but there is a ton great information on YouTube.
If you find a group of instructors on YouTube, you can really learn a lot. Some great channels for tutorials are the net ninja, academind, devtips, levelup tuts, coursetro. You also have other channels that aren't really dedicated to tutorials but they give a lot of great insight around development and the industry, so channels like Chris Hawks, Dylan Israel, Coding Phase, etc. There is a ton of really great coding channels or coding related channels that are really underrated and most of the channels aren't famous. You also have channels that have conferences and talks Coding Tech is the best example you can learn a lot that way especially about very very new technologies that are just comming out.
One of the negative parts of YouTube is sometimes you'll watch YouTubers for months or years and then they just stop making content, that's unfortunate but you have to realize that most coding youtubers don't do this full-time, so they have other things going on and they may might just don't have time, so that's just part of it and you have to kind a respect that.
3. STANDALONE COURSES
- Udemy, Pluralsight, Lynda, etc
- Freedom to learn what you want
- Learn at the pace you want
- Close to real-life projects
- Extremely cheap
Platforms like Udemy, Pluralsight, Lynda, etc, there's a ton of them out there, it's one the most favorite way to learn coding, because you can pick your own subjects in your own pace, also the structured platform force you to learn at their pace and you don't get enough freedom, but that's good for people that really need the structure, once you get started and you know what you're gonna learn or what you want to learn then you can move on to pick your own courses.
Honestly if you find right courses and you spend maybe $200 or $300, you can actually learn more than you would from college, because a lot of these courses they have projects that are very close to what you'll be doing in the reall world, whereas college is mostly theory and fundamentals and stuff like that not really practical that you're really going to be doing.
- First place to start
- Most reliable and relevant info
- Most up to date info
- Usually barebones examples
Documentation is something crucial, and most of beginners developers don't realize it, that's the documentation so whenever you're gonna learn something new this should be the first place you look at. This is where you're going to get the most reliable and the most relevant information the latest information, a lot of times tutorials get outdated but the documentation is the one place where you're going to get the most updated code or examples.
For the most part of the big frameworks, languages they are pretty good documentation, occasionally you're gonna get crappy docs that are pretty much useless and you have to look elsewhere to learn whatever it is, but for the most part they give you good examples a lot of times they'll include a tutorial this should probably be the first tutorial that you'll watch because it's right from the creator so always check the docs when you're gonna learn something new.
1. CREATE YOUR OWN PROJECTS
- Crucial to learning any technology
- Get your hands dirty
- Take what you learn and create something of your own
- Unscripted experience is key
The number way to learn how to code is to create your own projects and get your hands dirty
This is for the most part in addition to any other previous methods, you obviously can't just start to build something without learning somehow, but you definitely have to do this otherwise you're get stuck in tutorial purgatory and you never gonna know how to put into play what you've learned.
So you only need to take a course and go through it, do the project to a tee and then once you're done take all the concepts you've learned even take the application you built and then turn it into something else that's related, or take the project and just add on to it. Basically what this does for you is it gives you unscripted experience, when you watch a tutorial or course and follow along it's smooth you just copying another person's code, but when you do this you're actual making something closer to the real world, you're gonna run into problems, your gonna do google searches, you're gonna post on stackOverflow ask for help, it's all stuff that you're gonna be doing when you actually get a job programming. Because you don't want to spend three years just taking online courses, you want to build projects.
So that's it hopefully you enjoyed this. that's based on Brad experience on different methods and always take this with a grain of salt as they said, Brad said that books aren't his favorite way to learn how to code but books maybe your favorite and that's absolutely fine everyone learns in a different way.