Course Outline

Syllabus and Learning Outcomes

Syllabus

Week 1: Intro and Thinking Like a Programmer Week 2: Programming Languages and Python Basics Week 3: Types, Lists and Dictionaries Week 4: Recap Week 5: While loops and For loops Week 6: Functions Week 7: Import, File I/O and String Manipulation Week 8: Datascience - Matplotlib, Data Visualization Week 9: Introductory machine learning with SciKit learn Week 10: Programming in the Real World

Learning Outcomes

Students with little to no prior exposure to programming or python should feel comfortable with all concept covered in the class, and be able to apply the techniques discussed to problems they face in university courses or research. Once equipped with a foundational understanding of programming, students will be able to independently build upon this by learning new languages, or increasing the sophistication of their python knowledge.

Acknowledgement

Many of the topics and exercises are heavily inspired by other courses which teach introductory programming and/or python, and we have made no effort to thoroughly cite sources. However, Harvard's CS50 (https://cs50.harvard.edu/college/) was the source of much inspiration for the early parts of the course, and for some of the exercises.

Last updated