I need to know how something works. There are billions of tutorials with names like, “Make An Interactive Photo Gallery.” These tutorials consist of nothing more than, “Type this. Now Type this.” If you’re lucky, the author might sprinkle in a, “This part of the code displays the picture” but, even then, more often than not, the author doesn’t explain how or why.
Yes, I’m one of those annoying students that constantly interrupts the instructor with questions. On the bright side, I’m one of those instructors who makes sure you understand everything because the reason I teach is I want you to learn.
Don’t show me code for anything without explaining everything it’s doing, how it’s doing it, and why. I will never remember how to do anything if I don’t understand it.
Learning programming is no different to me than learning Spanish. I have no patience for learning “phrases”–I want to learn how to speak, to have a conversation. When I look at three different books and three different web sites and find six different ways to say, “How are you?” I’m never going to trust any of them and I will simply never ask anyone how they’re doing.
I need to know why a snippet of code works so that when a chunk of code doesn’t work, I can troubleshoot. I also need to know how and why a function does what it does so I can combine it with other things and make something cool. I want to have a conversation with my computer.