Skip to the content.

COMP141 - Computer Science I: Programming Fundamentals (Spring 2021)

Welcome to Programming Fundamentals for Spring’21!

Source of truth

The Canvas site for this course will contain the schedule and assignments. Materials will be distributed through Canvas.

Remote learning

Please read through the principles that I outlined for my fall classes. My ideas for how we will do remote learning in this class are similar.

The basics for this class are:

Resources

Tentative schedule

Day Date Topic Assignment/Reading
Wed Jan 27 Introduction zyBook Reading 01
Fri Jan 29 Python, output, variables zyBook Reading 02, Lab 0
Mon Feb 1 Operators, input  
Wed Feb 3 Literals, comments, intro wrap-up Project 1
Fri Feb 5 Lab 1 zyBook Reading 03
Mon Feb 8 if, if-else, relational operators zyBook Reading 04
Wed Feb 10 if-elif-else, and/or zyBook Reading 05
Fri Feb 12 Functions Project 2
Mon Feb 15 Parameters, local variables  
Wed Feb 17 Graphics  
Fri Feb 19 Lab 2 zyBook Reading 06
Mon Feb 22 Return values Project 3
Wed Feb 24 Functions + if-elif-else  
Fri Feb 26 Lab 3 zyBook Reading 07
Mon Mar 1 Spring break  
Wed Mar 3 While loops zyBook Reading 08
Fri Mar 5 Writing loops Project 4
Mon Mar 8 Counting loops zyBook Reading 09
Wed Mar 10 For loops  
Fri Mar 12 Lab 4 zyBook Reading 10
Mon Mar 15 Midterm 1 Project 5
Wed Mar 17 break, continue  
Fri Mar 19 Nested loops  
Mon Mar 22 Using next/previous values optional zyBook Reading ch 12
Wed Mar 24 File I/O  
Fri Mar 26 File iteration  
Mon Mar 29 Reading data files Project 6
Wed Mar 31 Lab 5 zyBook Reading 11
Fri Apr 2 Spring recess  
Mon Apr 5 Strings I  
Wed Apr 7 Strings II zyBook Reading 12
Fri Apr 9 Lab 6 Project 7
Mon Apr 12 Lists I  
Wed Apr 14 Lists II  
Fri Apr 16 Midterm 2  
Mon Apr 19 Lists III zyBook Reading 13
Wed Apr 21 Lists IV Project 8
Fri Apr 23 Lab 7  
Mon Apr 26 2d Lists I  
Wed Apr 28 2d Lists II  
Fri Apr 30 Lab 8  

Handouts by topic

Topic Handout
variables, IO handout
Conditionals handout
Functions handout 1, handout 2, handout 3
Loops handout 1, handout 2
Files handout, handout
Strings handout
Lists handout 1, handout 2

Feedback

At the end of this course (and halfway through), you will have an opportunity to evaluate me and your experience in this course. However, hearing your feedback way after the fact doesn’t allow me any opportunity to either emphasise the things you are finding helpful, or to correct the things that may give you friction. In order to provide you with an opportunity to give me feedback in semi-real-time, I’ve created this form. Your comments are anonymous (but if you either don’t believe me or want to be more cautious, you can fill it out in your browser’s incognito mode, so that you aren’t logged in to anything).

I will take all comments seriously, and try to do the best that I can to make sure that you are heard through my actions.