This module introduces students to computational thinking for problem-solving in computer programming and the core concepts and constructs applicable to most programming languages. Students will learn to apply computational thinking methods to decompose problems, identify patterns, apply abstraction in problems, and assemble a series of computer instructions that solve a problem using a computer programme. Students will be able to explain and write computer instructions that employ the use of variables, input and output statements, decision-making constructs, repetition constructs, and functions. They will also learn to test and debug computer programmes to ensure optimal performance of the programmes. The module also introduces techniques for effectively leveraging Generative AI (GenAI) tools to enhance learning and the coding process.