In these times of corona crisis, I have been receiving many offers for online programming tutorials in my inbox, so I wanted to give my views on one type in particular, that is learning from videos. I’ll share what I think are pros of learning programming watching videos, as opposed to, for example, text-based tutorials like blog entries or books, or also in-person trainings (a list of resources for these scenarios was already discussed here).
Pro: Learning by imitation or watching someone else do it at first is a natural way to learn
Using video tutorials, you don’t need to run the code yourself to see its results, which is fair, I think, when just quickly going through a tutorial or you’re at the very beginning of your programming journey where even installing a new software might still seem daunting. Generally, you should experiment for yourself and try to tweak example programs but at the same time, you don’t need to overdo it for something you just quickly want to look into. You can get a feel for what the technology does and don’t even necessarily need to set it up on your own computer. This encourages laziness, of course.
But in learning, I think, laziness can be both helpful and really bad – you just need to exploit the good sides of not being lazy and the good parts of being lazy. Being lazy can mean that you get more exposure overall because the initial hurdle is smaller. I personally tend to feel much more empowered to try a new technology after having *watched* someone doing it. Reading a tutorial, then having to type out everything on your own can be tedious and is a bit like book learning. (And remember that I am very much in favour of book learning because I love books, of course, but sometimes you just need to go out into the field and do it). Watching a video is not 100% like getting out there and doing it (which you should definitely do for technologies you are serious about) but it is very much like imitation learning. Children do all of their learning like that and they are incredibly effective learners, so maybe that’s a good thing!
But obviously, unlike in an in-person training session, you can’t directly ask questions or get help should you get stuck, thus learning from videos is definitely a more passive kind of activity. It will probably not encourage you to get going working on your own project. At least not unless you’re very motivated.
Pro: You can often find technologies which are not covered by books or bigger learning platforms as written or interactive tutorials
For example, freeCodeCamp which I never really liked much when their tutorials were just text (see the opinion I gave in the post How to improve at programming when your current position doesn’t require it & Online Learning Resources) has massively jumped on the video tutorial bandwagon and I really like it. In these videos, I feel they tend to cover topics which were too niche for people to write lots of text tutorials about. And reading a tutorial really isn’t much different in terms of learning effect, I think. Also, for the creators, I think it isn’t necessarily much more work depending on how perfectionist you are about getting a fancy-looking video.
Recently, for example, I educated myself on full-stack development using the PERN stack (which was served to me in a promotional email from freeCodeCamp). Did I really need this information? No, probably not. But it was fun and better than wasting my time doing something else, I guess. If you’re interested, the founder of freeCodeCamp, Quincy Larson, set up what he calls the ‘corona virus academy’ where he posts all sorts of suggested things to learn. Maybe we could adopt this style of teaching for the DH and for LaTeX as well, at least as an additional offer.
Pro: You can get in some video education when already tired instead of other mindless binge-watching
We all look at computer screens a lot and you might already know that I like to learn from books. But when you’ve already done lots of reading and computer work in a day, it’s likely you don’t want to read anything anymore in your break (which is a really sad thing about this computer age!). In this case, watching a video where someone walks you through how they write an example program in a language or technology you don’t yet know is educational yet fun. I think it can be really good way of getting some extra learning in without always having to feel like working really hard for that learning. But that’s also the possible downside:
Con: Avoiding the ‘Tutorial Trap’
On Youtube, you not only find channels providing you with these learning videos. You also find all sorts of life and learning advice geared towards those keen to learn programming. There, you can find many videos about avoiding the ‘tutorial trap’. Meaning that you passively consume tutorials, maybe try them out (or not) and thus, never end up experiencing programming like it really is:
A tutorial often comes with prepared data. A tutorial tells you all you need to do. This isn’t like ‘real programming’ at all where you spend 80% of your time debugging (this is not an exaggeration, as far as I know, studies have actually shown that programming jobs are 80-90% debugging). A tutorial, unless it teaches exactly what you wanted to learn, also doesn’t help you get an idea of how to get started on your own solution. It can serve as inspiration maybe. But transferring theoretical skills, or even skills you do actually have in one concrete use case to more general problems is a non-trivial skill, even though it mostly gets ignored in computer education. At least I have definitely seen this problem in DH teaching (and have a post prepared on the topic, to follow soon).
So can you learn to program just by watching videos? No, I wouldn’t say so. But learning videos can make a great addition to the arsenal of other learning tools available (blog posts, books, in-person trainings) and it’s always good to get some variation. Also, it seems that video tutorials nowadays cover many more niche topics where it’s more difficult to find other resources like books, interactive platform courses (like Hackerrank) or written tutorials. This can be an advantage and you can find videos of completely different lengths and depths, from short 5 minute peeks into a technology to free 14 hours ad-free video courses. (I personally tend to not go through with the long ones though) Maybe this is a niche we should embark on with the DH and LaTeX teaching as well. I might also speak to a different audience.
Another pro is definitely the lazy factor: You can watch a tutorial when you’re really tired already and still learn something. It’s maybe not an optimal learning experience but being able to get in more exposure dressed up as leisure time – it’s definitely better than binge-watching your favourite series, I’d say! But the lazy factor, obviously also is a possible trap to watch out for. If you ever only watch videos but never do any work yourself, you won’t learn programming. But then again, who doesn’t have 10 minutes to watch an educational video? I suggest you include that somewhere in your daily routine 😉
Hoping you and your families are well,
Buy me coffee!
If my content has helped you, donate 3€ to buy me coffee. Thanks a lot, I appreciate it!