Course Overview
An introduction to programming using Python. Topics include basic program design; program flow with decisions, functions, and loops; command-line and file input/output; variables and types; and string and sequence processing. No prior programming experience is assumed — the course emphasizes problem decomposition and program design as well as Python syntax.
General-Education Attribute: Science Distributive.
Expected Background
- No prior programming experience required.
- Comfort using a computer, installing software, and organizing files.
- Willingness to practice frequently — programming is a skill built by writing and debugging code yourself.
Textbook & Tools
Required textbook: None. Readings, examples, starter files, and practice materials are posted in D2L.
- Python 3 — use the version specified in D2L.
- Visual Studio Code with the Python extension (recommended). IDLE or another approved editor is acceptable.
Slides & Schedule
| # | Date | Topic | Slides | Supporting Materials |
|---|---|---|---|---|
| 1 | Aug 25, 2026 | Introduction; computational thinking; Python environment; expressions; print() | Class01.pdf | Follow along in playground (Class 1); Class-1 check-in; Syllabus (PDF); Class code (.zip) |
| 2 | Sep 1, 2026 | Computational thinking; values & types; expressions; print() and input() | Class02.pdf | Follow along in playground (Class 2); Class-1 check-in; Class code (.zip) |
| 3 | Sep 3, 2026 | Variables & assignment; numeric & string types; operators; f-strings (formatted output) | Class03.pdf | Programming Assignment 1 assigned (due Thu Sep 17, 11:59 PM, D2L — extended). Follow along in playground (Class 3); Class code (.zip) |
| 4 | Sep 8, 2026 | Boolean expressions & comparison operators; if / else; comparing strings; and / or / not | Class04.pdf | Follow along in playground (Class 4); Class code (.zip) · Schedule change: PA1 now due Thu Sep 17, 11:59 PM; Quiz 1 moved to Tue Sep 15 |
| 5 | Sep 10, 2026 | if / elif / else; nested decisions; flags & truthiness; conditional expression; program design & boundary testing | Class05.pdf | Follow along in playground (Class 5); Class code (.zip) · No quiz today — Quiz 1 is Tue Sep 15 (Classes 1–5); PA1 due Thu Sep 17, 11:59 PM In-class activity: Pokémon Python Lab · Class Pokémon World |
| 6 | Sep 15, 2026 | Quiz 1 (first 15 minutes); nested decisions; indentation; tracing; branch selection | Class06.pdf | Class code (.zip) · Editable slides (.pptx) · Quiz 1 (11:00–11:15 AM, Classes 1–5) · Quiz practice Python Playground (Class 6) · PokéLab Phase II (07–09) |
| 7 | Sep 17, 2026 | Boundary tests; syntax, runtime, and logic errors; systematic debugging; guided practice | Class07.pdf | Class code (.zip) · Editable slides (.pptx) · PA1 due tonight at 11:59 PM in D2L · PA1 guide Python Playground (Class 7) · PokéLab Phase II (10–12) |
Assignments & Deadlines
| Assignment | Assigned | Due (D2L) | Points | Handout |
|---|---|---|---|---|
| Programming Assignment 1 — Variables, Types, Expressions & Formatted Output | Thu Sep 3, 2026 | Thu Sep 17, 2026, 11:59 PM | 100 | CSC141_PA1.pdf |
Programming Assignment 1 — what is in it
- Part A (20 pts): predict values and types, trace a short program, explain a
TypeError— answers go inpartA.txt. - Part B (10 pts): write pseudocode before coding Program 2.
- Part C (60 pts): four programs —
time_convert.py,bill_split.py,name_tag.py,free_fall.py. - Part D (10 pts): find and fix three bugs in an AI-written program (
debug_me.py).
Everything you need is in Classes 1–3: print(), input() + int()/float(), the arithmetic operators, and f-strings. Read the full handout for exact output formats and the grading rubric.
How to submit
- Put these six files in one folder:
partA.txt,time_convert.py,bill_split.py,name_tag.py,free_fall.py,debug_me.py. Every.pyfile starts with the header comment (name, date, description) shown in the handout. - Compress the six files into a single ZIP named
Lastname_Firstname_PA1.zip(e.g.Lovelace_Ada_PA1.zip). Do not zip the whole folder tree and do not submit screenshots or Word documents. - Upload the ZIP to D2L → CSC 141 → Assignments → Programming Assignment 1 before Thursday, September 17, 2026, 11:59 PM. You may resubmit as many times as you like before the deadline; only the last submission is graded.
- Check the D2L confirmation email. The D2L timestamp is authoritative.
Tutorials & Supporting Materials
- Example code from each class is linked in the schedule above (per-class .zip). All-in-one: CSC141_code.zip
- Run Python in your browser (no install needed)
- Class-1 Check-in — your first program (ungraded)
- Install Python 3: python.org/downloads · VS Code: code.visualstudio.com