This is a past course that has already concluded. If you are looking for a current course, please click here.
Prof. Wright's office hours: Mon. 12:45–1:45, Wed. 9–10, Thurs. 10–11 & 1–2, Fri. 12:45–1:45, or by appointment in RMS 409
Supplemental Instruction (SI): Sun. 4:00–5:00pm, Tues. 3:00–4:00pm, Thurs. 7:00–8:00pm in RNS 203
Homework help sessions: Sun. 7:00–8:00pm, Tues. 7:00–8:00pm, Thurs. 9:00–10:00pm in RNS 203
Binary and decimal numbers
- Read General Introduction and Simple Python Data chapters. Run the code and answer the questions that you find in the reading. Pay special attention to the Glossary sections at the end of each chapter. Then submit at least one question about what you read.
- Complete the Binary Assignment (on Moodle).
- Complete the Syllabus Quiz (on Moodle) before class on Friday.
Values and types, statements, operators, and assignment
- Complete Homework 3.
- Read the Functions chapter. Make sure you know the meaning of the terms argument and return value. Also pay special attention to the accumulator pattern (Section 6.4) — if you don't understand this pattern, submit a specific question about it. You may also submit other questions about the reading.
variable scope, and the accumulator pattern
- This exam will cover material from the online Python text through the lists chapter, as well as the first seven chapters of How the Internet Works. For more info, see the list of exam topics.
- The exam will contain conceptual questions and questions that ask you to write code, similar to the quizzes.
- You will have 55 minutes for the exam.
- This will be a paper exam. Books, notes, and internet-capable devices will not be permitted during the exam.
- For practice, work on the problems from class before looking at the solutions (currently through March 15).
- Test your understanding of Python dictionaries by doing Dictionaries Exercise 16 from the online Python text. (You don't have to turn in your answers.)
- Complete Homework 14.
- Read Chapter 8 from How the Internet Works. Also watch this video: Hashing Algorithms and Security. Then submit a question about what you read or saw.
Pascal's triangle program from class
- Complete Homework 20.
- Read Chapter 16 Classes and Objects - Digging a Little Deeper. Then submit a question about what you read.
- Think about what you might want to do for you final project and who you might want to work with.
- Complete Homework 22, if you haven't done so already.
- Complete Homework 23.
- Prepare your project proposal: a brief description of your proposed project and the names of the students in your group.
- Read the rest of Chapter 14 GUI and Event Drive Programming. You may submit a question about what you read.
project proposal due
project design update due
to the Honors Day convocation
project status update due
- Work with your team on your project. Don't forget about the user manual to accompany your program! Begin thinking about your 3-minute presentation, if you haven't done so already.
project code and user manual due
- The exam will cover the material that we have studied in the online Python text as well as How the Internet Works and related topics.
- See the Exam tab for a list of topics to review.
- The exam will contain a mix of conceptual questions and questions that ask you to write code.
- You will have two hours for the exam.
- This will be a paper exam. Computers, calculators, phones, reference materials, and other similar things are not allowed during the exam.
- Here are some practice problems from class and solutions.
- Lastly, make sure you are familiar with the St. Olaf final exam policies.