Video tutorials are the best tool to quickly grasp some particular subject in programming, including the fundamentals.
This is especially important at the beginning of the learning process, when your little inner torch of excitement about this idea of learning programming might be just too weak to lead you through a long journey towards your first lines of code.
Also, this is the most entertaining form of getting new knowledge.
An author of lessons tells you something interesting, then you see him or her writing code, fixing bugs, etc. Usually it looks quite informal and dynamic. This helps a lot to keep you focused, without overwhelming you with large amounts of dry theory.
Practice first
Although it’s a bit of a generalization, I’d say that video tutorials are primarily like 90% of practice and 10% of theory, while the most useful programming books are exactly the opposite — 90% of theory and 10% of practice. That’s why video tutorials and books complement each other so well. See also the article How to Learn Programming with Books.
Of course, there are exceptions. Nevertheless, most of video tutorials are about specific applied topics, like how to use some programming language or tool.
But if video tutorials are all about practice, maybe it means that they’re not the best choice for those who only begin to learn programming? Shouldn’t you learn some theory first, before starting practicing?
First of all, it’s not 100%, but 90% of theory. Those 10% are just enough to explain you what you see in code during the lessons.
Secondly, at the very beginning the most important thing is to start writing code as soon as possible, not to understand perfectly every single detail about programming.
So, video tutorials actually have perfect balance of theory and practice for the beginner programmers.
How to use video tutorials
Video tutorials usually consist of several lessons, each of which can be a single video file or a set of files. Watch one of such video files from the beginning to the end, and then try to code what you’ve just seen from scratch on your computer.
If the video is long, pause it when you feel that your brain is about to get “overflowed” with the new information, and start coding.
Don’t skip the coding part thinking “it looks pretty simple, I got it, let’s move on”. Always test your understanding, as it might turn out that it’s not that easy when it comes to actually writing that code by yourself.
If it’s really not difficult, such a practice won’t be a waste of time either, since this little coding exercise will slightly improve your understanding of programming and your programming skills anyway, which is always a good thing to do when your experience in programming is quite scarce.
If you stuck at some point — watch the according part of the video again. Just remember, that the goal is not to “copy and paste” code from video, but to understand what’s going on there and to be able to write such a code on your own.
By saying “on your own” I don’t mean that you have to memorize everything you see in video lessons. Feel free to check the video whenever you have some doubts or something doesn’t work as you expected.
The only thing you definitely shouldn’t do is to mechanically type all the code from the video lessons, having no idea what you’re doing and how and why this code works. Such “learning” makes no sense and would be nothing but a waste of time and money spent on the tutorial.
Video tutorials as short presentations of programming tools
There’s another approach to using video courses. It is applicable especially when it’s a tutorial about some particular programming tool, like a framework.
In this case you can watch the entire tutorial without writing a single line of code. Your goal is just to understand a general way of using this tool, and video tutorials are really handy and time-saving in such cases.
Thanks to such a tutorial you don’t have to start with the official documentation for this tool and then try to imagine how it might be used in practice. You simply watch how some other developer is using it in their video lessons.
When you actually start using this tool, you’ll get all the specific knowledge you need at that moment from this tool’s official manual.
This approach is very effective if you already know the programming basics and can use documentation, so keep it in mind while you follow your learning plan. But for the first several tutorials, of course, you have to stick to the previous learning method.
Learning with video tutorials is not a race
When you watch a video tutorial, don’t pursue the timer. If the video course description says that tutorial has a four-hour duration, that doesn’t mean that it can be completed in such amount of time.
You’ll definitely spend several hours on coding. You also might rewatch the most difficult parts once again.
Your goal is not to complete the tutorial as quickly as possible — your goal is to understand it. If it requires rewatching some lessons again and again, do it.
When I just started learning programming with video tutorials, subconsciously I tried to complete all the lessons in the time specified in the descriptions of the video courses, plus, maybe, some little extra time.
Of course, it was unrealistic. I could barely watch them once in that time, let alone understand everything and write all the code on my computer.
But when I saw the line “duration: 4h 30m” in the video course description, I automatically assumed that it shouldn’t have taken more than, say, 6 hours.
It seemed quite reasonable until I actually tried it. Sometimes lessons were really difficult and a small 10-minute video could take two hours of practice.
In such cases I got irritated when I saw that I was behind the schedule. Since it’s hard to learn when you’re annoyed and hurrying, I didn’t listen to the teacher attentively and skipped my coding practice.
The only thing I wanted at those moments was to reach the finish line of the current video course. So it’s not a big surprise that the effectiveness of such lessons was very low for me.
Yes, it’s very tempting to calculate your estimated programming learning time as a bare sum of time spans stated in the descriptions of all video tutorials from your learning plan, and expect that you’ll become a programmer in some 20 or 40 hours.
Unfortunately, it doesn’t work that way. So, focus on the video lessons content and the code you write, not on the timer.
Also when you see those “4h 30m”, you might think that it’s possible to complete the entire video course in one go. Sometimes it’s doable, indeed, but it’s rather the exception than the rule.
Those four and a half hours of video are four and a half hours of concentrated new information about relatively complex topic. So, even if it’s a purely theoretical course not requiring that you write code, you will be tired after the first several hours of watching this video or even sooner.
If you feel this way, it’s better to take a break. Your mind must be fresh and eager to learn, since otherwise it will be reluctant to fully process the new information. So, if you continue watching video you risk overlooking many key details simply because your attention isn’t sensitive enough at the moment to notice them.
Also, if you want to learn more about how to manage your time during your programming learning process, see the article How to Learn Programming 2x Faster with the Pomodoro Technique.
Video tutorials are not enough
It’s important to understand from the very beginning that video tutorials cannot give you all the knowledge and skills you need in programming.
They will give you good understanding of topics they cover, but, unfortunately, they cannot cover every single detail you will need to know as a programmer.
For example, video tutorials about programming languages will show you all the main elements of these languages and how they are generally used. But modern programming languages, like JavaScript or C#, are so big that no video tutorial can show all their components.
If it’s a tutorial about some popular programming framework, after such a course you can usually create on your own a particular kind of projects, like a specific type of websites or applications. Also, at this point you have some theoretical base, allowing you to use your skills.
But usually this level of skills and knowledge is not really enough and it will limit your possible actions when you need to code your project differently from what was shown in video lessons.
So, you’ll definitely need to make your knowledge deeper and broader. That’s when programming books, official manuals, Stack Overflow and Google come in handy.