Programming and Data Processing (Spring 2022)
Official course description:
Course info
Programme
Staff
Course semester
Exam
Abstract
This course is designed to give students a basic introduction to programming and data processing. Students will get a hands-on introduction to the Python programming language and how to work with tabular data. This will enable them to solve simple programmatic tasks as well as to get an idea of what the role of the programmer entails. After the course student will be able to discuss and reflect on challenges and opportunities derived from approaching the world through algorithms.
Description
The purpose of this course is to teach Python to students with no previous programming knowledge and with diverse academic backgrounds. It takes a slightly different approach than what is usually done within Computer Science or other technology-oriented programs.
This means that instead of putting focus on the fastest, most efficient or elegant forms of code, students will be instructed to prioritise transparency and readability. Creative ways of approaching code will be explored. Much emphasis will also be put on “critical” aspects of programming related to perspectives prevalent within the humanities and social sciences. The purpose of this is to give students tools to articulate and reflect on the challenges and opportunities which emerge out of attempting to solve real-world problems with algorithms, something which is in great demand by future employers.
Formal prerequisites
Intended learning outcomes
After the course, the student should be able to:
- Identify basic elements in a piece of code
- Use text-based tools for program development
- Describe and analyse a computational task through pseudo code
- Discuss the challenges of representing real-world scenarios in algorithms
- Develop a simple programmatic solution implemented in code
- Manage and manipulate tabular data in text format
- Reflect on experiential qualities of programming and how this affects how we approach programmatic tasks
Learning activities
Lectures
Each Monday new programming elements and programming-related issues will be introduced and discussed in the lecture. Students are expected to come to lecture prepared with reflections on the assigned readings.
Exercises
This course has a high level of engagement through hands-on exercises for learning how to program. Exercises will provide a foundation of skills for completing the assignments outside of class. At the beginning of the course, students will be divided into groups of four. The purpose of these groups is for students to have other students to turn to for help during exercises.
Readings
Before each lecture, students will be assigned readings that will introduce them to new programming elements and programming-related issues.
Assignments
The course will have three main assignments. Assignments are individual but can be discussed and worked on within the groups.
Course literature
Programming with Python for Social Scientists by Phillip D. Brooker
Student Activity Budget
Estimated distribution of learning activities for the typical student- Preparation for lectures and exercises: 15%
- Lectures: 20%
- Exercises: 20%
- Assignments: 30%
- Exam with preparation: 10%
- Other: 5%
Ordinary exam
Exam type:A: Written exam on premises, External (7-point scale)
Exam variation:
A22: Written exam on premises with restrictions.
4 hours
Full access
Written and printed books and notes
E-books and/or other electronic devices
- The mandatory literature as e-book
Specific software and/or programmes
- The Mu-editor or another editor for programming
reexam
Exam type:A: Written exam on premises, External (7-point scale)
Exam variation:
A22: Written exam on premises with restrictions.
4 hours
Full access