COMP9021 Principles of Programming This is a first programming course. It provides an introduction to programming in Python and covers the following essentials: Program design and implementation in a high level language, with procedural and object oriented constructs and some functional features. Fundamental programming techniques, data structures and algorithms. Debugging and testing. Simulation. Applications in different areas, including those involving graphical user interfaces and animations.