Course description

This course is an introduction to computer science for students without prior programming experience. We explore problem-solving methods and algorithm development using the high-level programming language Python after a brief introduction to computational concepts using Scratch. Python is a language with a simple syntax, and a powerful set of libraries. While Python is easy for beginners to learn, it is widely used in many scientific areas for data exploration. We cover basic data types and collections (lists, dictionaries, tuples, and sets), control flow, recursion, information hiding and encapsulation using classes and objects, and introduce the analysis of program performance. The examples and problems used in this course are drawn from diverse areas such as text processing and simple graphics creation. We also examine theoretical and practical limitations related to unsolvable and intractable computational problems.


Enroll now.
Learn More