Sunday, September 25, 2016

Hasan, Games and Computational Thinking

It was very interesting to read the paper of Berland et al. (2011) which explored how complex computational thinking takes place while playing games. This may indicate to the reasons why different social cultures try to discover new games and retain for years. This may also help to understand why some students would rather like playing games than studying. Maybe it's because games could connect better with the needs of growing up in meaningful ways (i.e. Constructionism). For strategy games certainly the need of mastering the computational thinking is apparent. May be for other games it is not so much. But to me it seemed playing games could certainly target students into the practice of all kinds of CT concepts and practices.

As reviewed in the paper of Kafai et al. (2015) we can see how making games exposes students into much deeper practice of computational thinking. More interestingly it was demonstrated that making games for the community is far more effective in terms of learning than making in isolation. I really liked the idea of extending into “Computational Participation” from “Computational Thinking”. Computational participation certainly empowers students in constructionist approach by giving them more meaning for what they are doing and engaging them in more personal way.

Now to identify few aspects of Computational Thinking which are potentially most strongly or easily supported through making and playing games, I would like to take Weintrop’s definition of CT (Weintrop et al. 2016) as I found that to be more detailed and easier to refer to in the trial of identifying a particular practice into one of CT practices. In reference to that definition, I think the two broad categories that are both most strongly and easily supported are “Computation problem solving practices” and “System thinking practices”. To talk about making games, when one tries doing that hey essentially need to choose a plot. That plot may include many types of real life systems and some imaginaries inspired from the reals. For any of them it is a necessary step to model the target plot computationally to represent to its gamers. This modeling process may involve practices from other categories of the Weintrop’s definition such as “Modeling & Simulation Practices” but one must go through the practices such as “Preparing problems for computational solutions” & “Choosing effective computational tools” from the broad category “Computation problem solving practices”.

Most games are compound systems involving many subsystems which themselves are made of other systems. For example a character may have systems such as movement controller, collision controller etc. which may also depend on other systems such as a generic physics engine. In most times a game is made iteratively and thinking of the game systems in modular fashion and using the facility of reusing a module to develop higher level modules is necessary. For example after developing the movement module the same module could be reused for other characters moving with the same laws. To develop such systems of systems, skills of using practices such as “Creating computational abstraction” and “Developing modular computational solutions” are necessary. One thing I would like to note that a student may not have much skill on such practices but along the way of making games these skills would inevitably grow up. The other practices in the same category would in the same way be automatically covered by students on the process of making games. Same is for the practices under the category “Systems Thinking Practices”.

It may be hard to imagine how the practices listed under the category “Data Practices” are accounted, but they may be when optimizing game experience or debugging. In another way they may be incurred in very useful way is when Computational Participation happens. It is one thing to make a game and another to make the gamers like that. I think the latter involves significant effort involving the data practices of CT and also the domain knowledges. I do not like to think that young students are not capable of building complex systems which may be used for social causes in fact it is just that they are not given the opportunity of doing that.

As for students making games and sharing to others to experience helps them to involve in learning more deeply, cannot they gain the same benefit when they share their work even if they do not make games rather may make a simulation of a system or may even make an interactive narrative story about a system? YouTube is not a site of games but still it is one of the top accessed website which contains only non-interactive materials. Many would like to watch a video instead of reading if they find it on YouTube. The idea of letting students build for the younger students and getting feedback seemed really interesting to me. For Computational Participation to be effective when students build something, the target user could in fact be very crucial. It is not much useful to build something for one’s own self but it could be very effective to build for the junior students who might be really helped by the built materials for both the builder and the user.

No comments:

Post a Comment