My thoughts on coding
The first thing you learn in practically any computer language is, almost always, how to code the famed “Hello World” string. Every time I opened a programming book back in college, I would think it was ridiculous that they would teach something so simple and repetitive. However, when I first started teaching young students, I once again began with writing this first line. I feel as if I’ve come to understand the importance of “Hello World”: when students first experience the feeling of having their code move and work, even if that code is something so simple as printing a line of text, those students feel incredible joy and satisfaction with the fact that they were able to conquer their assumptions of coding being an over-complex, and intimidating subject.
Connecting with coding
When I teach a game development class, the kids want to skip any and all introductions, and start right off the bat with flying, battling, doing this, and doing that. All sorts of complicated things. They want to do it, so they assume that like any other game, everything works at the touch of a button. However, this is a coding class. If you want something to happen, then that’s all up to you.
There are many ways to approach teaching programming, and I too, wanted to teach the kids how to fly, battle, do this and do that. If I simply taught cool things such as that, without going in depth with the necessary basics, I knew the kids would like me very much, and I would become a popular teacher quickly. However, I thought to myself: what if the students held actual dreams of becoming programmers? Thinking through, I came to the conclusion that I wouldn’t teach through them shortcuts. I was going to make sure that they grew in the right way.
When children grow in coding
Recently, I’ve started using a concept called “Computational Thinking (CT)”, which is a thinking strategy used by computer scientists in coding. The process of computational thinking is the foundation for all coding, as the strategy breaks apart complex problems into smaller more manageable parts, allowing my little programmers to tackle the task at hand. When faced with using CT, even the most enthusiastic of students are kept level-headed and calm. As I look into the focused eyes of those children, I can’t help but to feel proud of their improvements.
The conclusion of class
Still, as classes come to an end, the differences in mood between those who got the assignments done and those who weren’t able to finish, becomes apparent. When that happens, I gather everyone’s attention, and encourage each classmate to show their work to the rest of the class. This way, everyone gets to help everyone out through feedback, so that by next class, even those who were left behind can bounce back to where they should be.
My final thoughts
Every single one of the students put in a lot of effort to get their work done and grow. Programming is not an easy subject to learn, with all the complex code and such that one has to learn. Even then, their attitudes and the amount of effort they put into learning has never faltered. Thanks to that, they have been able to grow very far, and make giant strides towards their objectives.