CARDIFF UNIVERSITY


Computational Thinking

Reflections

As a result of this module, the definition of computational thinking and how it can be utilised is understood. Computational thinking is a problem-solving and thinking style (wing, 2008). Computational thinking uses the principles and methods of computer science to approach problems. This approach of computational thinking breaks down problems into more minor problems that can be understood and solved. Moreover, it abstracts the problem and ignores details that are irrelevant to the problem. Recurring patterns are identified and exploited. Then, algorithms are designed to solve the problem step-by-step. Mastering computational thinking does not just help with programming and solving computer science problems. In fact, it has a huge role to play. The problem-solving process of computational thinking can be applied to other future modules as well. At the beginning of a future module, it is possible to decompose the module. The content of the module can be abstracted, and irrelevant information can be ignored. In this way, unfamiliar modules can be turned into small, understandable parts that can be learned and reviewed in an efficient and targeted way to arrive at a solution.

Computational thinking can be used to construct efficient and understandable study plans and schedules for future modules. Computational thinking can be integrated into the future of life and work, not just the present. I believe that computational thinking can be used in my future life and work, not just in the present. I would like to use computational thinking in my future development plans to break down, abstract, and recognise patterns step by step to get information that I can understand and then build a guiding plan for my future. Be able to analyse problems from multiple perspectives in the future critically.

This module teaches basic programming in HTML and CSS. The syntax, markup and structure of the programming needs to be written according to specifications, which enhances the rigour of the learning process. For example, syntax, markup and structure require much practice to master. I was learning to learn independently and apply it to the module. The ability to learn to programme independently and practically is enhanced. Not only is programming a skill that applies to future work, but most importantly, the ability to learn independently and practise over and over again that I have developed during this module can be applied to my future work and life. I think the weakness is that independent learning and practice are not well connected. There were many occasions in this module where I did not do the practical exercises immediately after completing the independent study but only did them the next day. This resulted in mistakes as the details were always forgotten during the practice. This reminds me that I need to do a better job of linking independent study and practical exercises in future modules.

References

Wing, J.M. (2008) ‘Computational thinking and thinking about computing’, Philosophical Transactions of the Royal Society A: Mathematical, Physical and Engineering Sciences , 366(1881), pp. 3717–3725. doi:10.1098/rsta.2008.0118.