Reflection

Through the CMT119 module, I gained an in-depth understanding of the concept of computational thinking and how it permeates my learning and daily life. As a result, I've come to believe that computational thinking is not just relevant to the field of computer science but also beneficial for people in their everyday lives.

In CMT119, I began to delve into some fundamental programming elements, such as HTML and CSS. I believe these are essential for someone at the initial stage of entering the computer science field. Over the past two to three weeks of learning, I found problem-solving through coding to be quite challenging, but continuous learning and critical thinking have provided me with a deeper insight into algorithms and programming. With the knowledge of computational thinking, I now feel more confident in facing these challenges.

For instance, one of the most common approaches in computational thinking is decomposition. You first analyze a problem and then break it down into smaller, more manageable parts to tackle one by one. Applying this mindset, I approach tasks as simple as making a cup of coffee by breaking them down into five basic steps: gather materials, research the type of coffee, boil water, brew coffee, and adjust the taste. This way of thinking helps me better understand problems, and I believe this simplified problem-solving approach can be applied to address various issues, whether they are simple daily tasks or future complex engineering projects.

Furthermore, I've realized that the concepts covered in CMT119 are not merely theoretical knowledge; they are closely related to other courses I will encounter in the future. Learning to use HTML and CSS to build a webpage and working on group assignments has further solidified my knowledge. This lays a strong foundation for learning other programming languages like JavaScript. Surprisingly, I found that JavaScript has aided my understanding of Python in a recent course. Therefore, I consider computational thinking as a powerful tool for solving complex problems. When we employ computational thinking, we can more easily resolve fundamental programming issues, and it has taught me how to develop step-by-step solutions. Understanding how to effectively solve problems and the ability to develop incremental solutions are crucial for the career I hope to pursue in the future. Thus, in my view, computational thinking is not exclusive to engineering majors; it will become a compulsory subject for everyone to learn in the future.

In conclusion, through this module, I not only grasped the importance of computational thinking but also learned how to apply it in various contexts. This way of thinking not only aids in solving complex problems but also plays a pivotal role in my academic and professional career. I look forward to further expanding and applying these concepts to better address future challenges.

Wing, J. M. (2008) "Computational Thinking and Thinking about Computing."