Introduction to Computer Programming Through a System of Tasks
Computer programming is a fundamental discipline in many academic programs, especially in the fields of informatics, applied mathematics, physics, and engineering. Despite its popularity, computer programming courses does not possess a widely-accepted methodology for its structure, and because of this reason, even introductory courses highly differ in their curriculum, approach, complexity, and even technical background. In this paper we propose a methodology for introductory computer programming course structure definition that is based on the concept of notion formation through a system of tasks. The approach is intended to be applied in the context of academic education, but it is also applicable in the last years of high-school courses.