This is the official course page for COMP1D04
All announcements will be posted here. If it's not here, it's not official.
- Nov 17: Next week is the last class, and we will be having a quiz. The location for the quiz is BC201, and we will start at 12 noon sharp. Latecomers will not be admitted after 12:15pm. Note the new venue.
- Oct 13: We will start on a new topic next week. Please get Python 3 installed onto your computers before you come to class.
- Sep 28: Homework 1-3 has been released. Due date: Oct 12, 23:59
- Sep 16: One of the questions (Task 4.3) in hw1-2 was more difficult than we thought. Therefore, I have changed that part of the homework. Hopefully this is easier?
- Sep 14: Starting tomorrow, we will move back into the classroom for lecture/tutorial:
- The room is QR502
- You will sit with your group. Please check which group you are assigned to and sit at the group table (the tables will be labelled) when you come in.
- The class will start at 11:30. Latecomers will not be admitted. If you have to be late, please wait till the break. We will have a break at 12:30 and another one at 13:30. Starting at 14:00 we will have free Q&A.
- Please remember to bring your laptops, if you have one. We will have a few for loan.
- Sep 12: I forgot to make an announcement for hw2 (though I did post it at in the "Assignments" section). Due date: Sept 21 23:59.
- Sep 8: Quiz dates have been changed. It doesn't make sense to have a quiz the first week that we move to a classroom.
- Sep 1: Lecture 1 Notes posted.
- Aug 26: Homework 1 released. Due date: Sept 14 23:59.
- Aug 26: Homework 0 released. Due date: The sunday of the week that you sign up for this course.
- Aug 26: Logistics and Class Information released.
About this Course
In this course, you will learn about how to use the computer to solve problems that you might encounter in daily life. Our focus is on analysing and making sense of the human-related data that is out there. For example, somebody claims that the Hong Kong media is overly biased towards the pan-democrats. Is that true? Is that not true? How can you decide? Better yet, how do you prove that you are correct (or that somebody else is wrong?
Specifically, in this class, we will learn how to define a problem, collect the data, and then use spreadsheets (i.e. Google Sheets) and programming (i.e. Python) to analyse the data. In the process, obviously we will be learning how to write instructions (e.g. spreadsheet formulae or programming statements) that will do the analysis for us.
This course is meant for students who do not have any programming background and who preferably are not from Engineering, FAST or FCE. We will not be tackling any physics-type equations or finance-related problems. For students from the sciences and engineering, it's not that we don't want you in the class, but it's because you probably are not going to learn anything that will truly be useful to you. You'd be better off taking a real programming class instead!
For students from the other disciplines, we will not be assuming any programming background nor will we assume that you have much math or science background. You will learn lots of new stuff in this course, and you will come into contact with mathematical or logical concepts, but whatever you need we will teach you.
This course is adapted from Brown University's CSCI 0931: Introduction to Computation for the Humanities and Social Sciences. Many of the examples, much of the content and the activities are taken from them. A very big shout-out and my sincerest gratitude goes to Prof. Shriram Krishnamurthi for graciously allowing us to use his material!
Course Logistics
We meet once a week, on Tuesdays, 11:30-14:30. There is no separate tutorial section.
The class will be partially lecture, partially lab. There will be plenty of class exercises that you have to complete in class, and whatever you cannot complete, you will hand in as homework. If you have a laptop, it is
strongly advised that you bring it to class with you.
The course grading is as follows:
- 50% -- Assignments. Homework will be due after almost every class.
- hw0 is compulsory (finish it by the specified deadline, or we'll drop you from the class.)
- 5% per homework set starting from hw1. We will take the best 10 assignments starting from hw1.
- Please hand in your homeworks on time. Late handins will incur 10% penalty per day. That is, if you hand in 5 days late, you will get at most 50% of the grade.
- 50% -- 4 Quizzes:
- Weeks 4, 7, 10 (15% each, we'll take the two best quizzes)
- Week 13 (20%)
This is the official course webpage. We will not be using Blackboard for this course.
Teaching Team
Your teaching team is
Grace Ngai, Memory Chiu, and Tiffany Kwok. If you need to get in touch with us, please email us at
grace.ngai@polyu.edu.hk
,
waihan.chiu@polyu.edu.hk
, or
tiffany.ck.kwok@connect.polyu.hk
. Please send all emails from your official PolyU account (e.g. your
connect.polyu.hk
account), as it is impossible to verify who you are otherwise.
Class Material
Lecture Notes and Homeworks will be released here as they become ready. In general, we will
not release lecture notes before the lecture. Please come prepared to take notes. Also, please do
not take photos of the slides. Copy them down, as that ensures better learning and retention. Trust us. We have taught enough students and we know.
Lecture Notes
In-class Activities
Activity 2-5
Activity 2-4
Activity 2-3
Activity 2-2
Activity 2-1
Activity 1-4
Activity 1-3
Activity 1-2
Activity 1-1
Homework Assignments
- Homework 2-6. Due date: Dec 7, 23:59.
- Homework 2-5. Due date: Nov 30, 23:59.
- Homework 2-4. Due date: Nov 23, 23:59. Walkthrough: The slow method (that we did in class), The fast method (that you will do for Asgn 2-4), and Two different ways of iterating through a list
- Homework 2-3. Due date: Nov 9, 23:59
- Homework 2-2. Due date: Nov 9, 23:59
- Homework 2-1. Due date: Nov 2, 23:59
- Homework 1-4. Due date: Oct 19, 23:59
- Homework 1-3. Due date: Oct 12, 23:59
- Homework 1-2. Due date: Sept 21, 23:59
- Homework 1-1. Due date: Sept 14, 23:59
- Aug 26: Homework 0. Due date: Sunday of the week that you sign up for the course
Grades
The marks for your assignments and quizzes are posted on this page. Let us know if you have forgotten which animal you were assigned to. Blank grades mean that you either (1) did not turn in the homework, or (2) did not show up for the quiz.
Collaboration Policy
COMP1D04 has a strict "no-cheating" policy. This means that:
- The collaboration policy for each homework will be specified at the beginning of the homework set.
- Unless specified, you are to do all work on your own. If you need help, please come to one of the members of the teaching team. You are not to discuss homework with your classmates, unless we specifically say that you may.
- Even if you discuss homework with your classmates, you may not copy down the answers directly from them. You may discuss concepts only. We reserve the right to question students independently if cheating or over-collaboration is suspected.
- If you use material from sources outside of the lecture notes, you are to specify that on your hand-in.
Any violation of this policy will result, at the very least, in a grade penalty or failure of the subject. We also reserve the right to refer the case to the Student Disciplinary Committee for further action.