Fall 2020


By the end of the course, students can write small programs (less than hundred lines) which help them to collect, process and analyze data through computational means. There are three sub goals for this course

  • developing skills in computational thinking, here understood as the process where real-world problem is presented as coding problems
  • introducing students to programming language and developing elementary skills for them to help implement computational thinking to some of the real world problems
  • discuss and deepen the applications of computational social science in practical research, that is existing literature and different applications they have in social science and developing sociological imagination

Administrative details

For admnistrative details and enrollment, see

Course practices

We use flipped classroom approach in this course. That means we expect students to familiarize with the course material on their own before lectures. These pre-assignments follow The assigned papers and materials regarding Python, During the lectures, we discuss and explore the assigned papers together and provide time to work on the exercises. Our empahsis in the class is to work on assigned programming exercises. Matti will be there to help you, but for most parts this will be independed work.

The course provides hands-on skills for applied computational social science approaches. Course examines

  • variables
  • control structures
  • file input and output
  • lists and dictionaries as data structures
  • functions
  • using external libraries

Beyond these, students familiarize themselves to published articles which have utilized these methods and examine their use further.


The course is graded on pass/fail -scale. This aims to motivate everyone to take the course, as it will not impact your grade point average.

Passing grade on this course requires

  • 80% of exercises done for all exercises
  • participation on the papers discussions or completing them in other ways

Course syllabus

Class 1: Introduction (11.9.)

Read Chapter 2.

  • Gatherer design pattern video
  • Most wanted holder design patter video
  • Follower design pattern video
  • Flag design pattern video

Class 2: Introduction (25.9.)

Read deconstructed cases from Chapter 3, including the original papers.

Class 3: Data structures (9.10.)

Read deconstructed cases from Chapter 4, including the original papers.

Read Chapter 5.

Class 4: Data structures (6.11.)

Read deconstructed cases from Chapter 6, including the original papers.

Class 5: Best practices (20.11.)

Read deconstructed cases from Chapter 7, including the original papers.

Read Chapter 8.

Class 6: Best practices (4.12.)