Official course description:
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 to basic database management. 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.
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.
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 a database to store and manipulate data
- Reflect on experiential qualities of programming and how this affects how we approach programmatic tasks
The three main learning activities for this course will be lectures, exercises and assignments. Each Monday new programming elements and programming-related issues will be introduced and discussed in the lecture. These will be put to use in the exercises and assignments. The TAs will assist the students during the exercises. Students will also be divided into groups of four. The purpose of these groups is for students to have other students to turn to for help. Assignments are individual but can be discussed and worked on within the groups. Each student will also be asked to keep a simple diary during the course. The purpose is to reflect on the assignments particularly from an experiential perspective (this will be explained more fully in the first lecture). Assignments and diaries are to be handed in on a weekly basis.
The course literature is published in the course page in LearnIT.
Student Activity BudgetEstimated distribution of learning activities for the typical student
- Preparation for lectures and exercises: 15%
- Lectures: 15%
- Exercises: 20%
- Assignments: 35%
- Exam with preparation: 10%
- Other: 5%
Ordinary examExam type:
C: Submission of written work, External (7-point scale)
C22: Submission of written work – Take home
4 hour online take home exam.
(Please disregard that the duration below says 1 day. That is invalid!)
Written and printed books and notes
E-books and/or other electronic devices
- E-books on laptops, iPads, and other e-book readers are permitted.
- Any course material can be accessed online or on your machine.
- Your own notes can be accessed in any form.
Specific software and/or programmes
- Students must use their own computer with MySQL and a Python editor installed.
- Use of (online or local) drawing programs for flowchart creation is permitted.
- Use of online documentation for Python, SQL and MySQL (e.g., https://www.w3schools.com/python/ and https://www.w3schools.com/sql/) is permitted.
Communication with others is strictly forbidden. This includes posting anything to the internet to sites such as stackexhange. Searching for information on the internet (“googling”) is forbidden.
Random fraud control with Zoom will be conducted right after the submission.
Student Affairs and Programmes will randomly select 20 % of students who will have to show up in Zoom to check authorship of submitted solutions. The selection of students for fraud control will be published in LearnIT right after the exam together with a link to the Zoom meeting.
More information in LearnIT before the exam.