Does watching a programmer program really help?

Here's the guy who does Coding Train using Processing to simulate a Rubik's cube. See if you can figure out what he's doing as he live codes.

https://www.youtube.com/watch?v=9PGfL4t-uqE

I would expect most beginners would be totally stumped. This is how a programmer programs, but beginners think watching a good programmer program is helpful.

Usually, the programmer knows a lot about what they are programming. Beginners want to see it slower, then having it explained, and eventually wanting to see super basic coding. This would lead to hours of watching intro programming which have nothing to do with the task at hand.

To give an example from outside of programming, here's Hikaru Nakamura, a top chess player, describing his match against Polish player, Duda.

https://www.youtube.com/watch?v=z8rTewRJCKo&t=70s

I think that's how some people view live programmers, and that's if they talk. In reality, a lot of programmers would sit and think, and type some code, and you would have no idea what they are doing. But I think explaining it would sound like Hikaru explaining chess, i.e., it would be really fast and nearly incomprehensible.

Not saying narrated coding can't be done, but that's what happens in a classroom setting except you aren't trying to do big examples. I once took a training course, and the guy was live coding. Needless to say, I fell behind, and had no idea what he was doing.

In other words, it's not so valuable because you, the learner, can't stop the teacher to ask questions, and they can't react to your confusion and try to explain it a different way.

7 comments · 60% upvoted · other discussions

comments

pomorev

i do live coding with my students all the time, but you are right I am doing it in teaching mode, i do strict code to test, and i encourage questions. it can take a lot longer to code but this is fine for simple projects. i like to live code simple games in JavaScript for example. students have told me it is very helpful. YMMV.

alzee76

This sort of thing is good as supplementary or review material, but it's virtually useless for covering entirely new ground. For that, you need to be doing (read: practicing), not watching/listening/reading, and immediate feedback from a tutor, mentor, or peer is invaluable during practice.

Programming is a skill, and like any other, it's learned best through frequent practice. One advantage it has over some other skills is that you can do it alone and still get immediate feedback -- if your program doesn't work, or is too slow, you don't need someone else to tell you that you did it wrong, though you may benefit from their help in correcting it.

[deleted]

Videos tend to give you the illusion of understanding.

If you follow along, make notes, try things out and think of implications and the validity of what was said you can get something out of a video. But that is hard work.

It's way easier to just lean back and tell yourself that you are studying.

[deleted]

Having watched that video (both parts) before I find it easy to follow. I think the issue is that this learning style simply doesn't work well for you, we all have our own ways of learning, do what works best for you.

alzee76

we all have our own ways of learning

No1, we2 don't3. This is just a crappy way of teaching.

[deleted]

His videos are awesome.

Really, you need hands on practice to learn. But once you get comfortable, watching along a video can definitely lead to you gleaning information and insight. You might take notes, write pseudocode, write down timestamps, etc... Code is involved, so if you are watching a video on programming you just want to stay engaged and as involved as possible.

[deleted]

It helps about as much as watching someone solve advanced math would help you learn math. I don't think every video out there is necessarily a waste of time to watch, but I think a video is only going to be useful if it explains some specific topic you want to know and you have the necessary base knowledge to make use of the information. Your example about Hikaru is basically totally on point.