Announcements

11 May

The semester is over!

1 May

Final Exam

  • Wednesday 6 May @ 9:30 - 12:30 (Eastern Time).

  • You must take the exam during this time.

    • The exam will be posted on the course website on Wednesday at around 9:20.
    • The exam is due on Wednesday at 12:30.
  • The format will be similar to the in-class exams.

  • Two parts: closed-book and open-book.

    • Part I: Closed-book.

      • Focuses on Python fundamentals: Lessons 1-9.
      • Multiple choice using Google Forms.
      • No outside assistance allowed (i.e., closed computer, closed book, closed notes, closed internet, etc.)
    • Part II: Open-book.

      • Covers all lessons.
      • You may start the open-book part once you've submitted your closed-book part.
      • You will be asked to write code in a Jupyter notebook.
      • Open computer, open textbook, open notes. Websites directly linked from class website also allowed.
  • No collaboration allowed throughout the exam.

22 Apr

The final exam will take place on Wednesday 6 May @ 9:30 - 12:30 (Eastern Time). Details will be provided next week.

15 Apr

Quiz 6 will take place on Tuesday 21 April.

  • Logistics:
    • The quiz will be posted on the course website on Tuesday 21 April.
    • Give yourself 15 minutes to complete the quiz.
    • The quiz will be due on Tuesday 21 April at 23:59 (your local time zone).
  • Focuses on exceptions (Lesson 9), images (Lesson 14), and steganography (Lesson 15).
  • Multiple choice using Google Forms.
  • You will not be allowed to use any outside assistance on this quiz: closed book, closed notes, closed internet, etc.
  • No collaboration allowed.
30 Mar (updated
1 Apr)

Exam 2 will take place next week.

  • Logistics:
    • The exam will be posted on the course website on Tuesday 7 April.
    • Give yourself 2 hours to complete the exam.
    • The exam will be due on Thursday 9 April at 23:59 (your local time zone).
    • There will be no new lessons next week, so that you can have some dedicated time to work on the exam.
  • Covers Lessons 8-15.
  • Two parts: closed-book and open-book.
  • Closed-book part:
    • Multiple choice and short answer using Google Forms.
    • No outside assistance (closed computer, closed book, closed notes, closed internet, etc.)
  • Open-book part:
    • You may start the open-book part once you've submitted your closed-book part.
    • You will be asked to write code in a Jupyter notebook.
    • Open computer, open textbook, open notes. Websites directly linked from class website also allowed.
  • No collaboration allowed throughout the exam.
19 Mar (updated 21 Mar)

I have posted some guidance on our transition to online learning — see General Information below.

5 Mar (updated 19 Mar)

Quiz 5 will take place on Thursday 26 March.

  • Logistics:
    • The quiz will be posted on the class website on Wednesday.
    • Give yourself 25 minutes to complete the quiz.
    • The quiz will be due on Thursday at 23:59 (your local time zone).
  • Covers Lessons 11-12.
  • You will be asked to write code in a Jupyter notebook.
  • You will be allowed to use your computer, textbook, notes, and websites directly linked from the class website.
  • No collaboration allowed.
25 Feb

Quiz 4 will take place in class on Thursday 27 February.

  • Focuses on Lessons 8 and 9.
  • Pen and paper, multiple choice and short answer.
  • You will not be allowed to use any outside assistance on this quiz: closed computer, closed book, closed notes, closed internet, etc.
  • No collaboration allowed.
4 Feb (updated 6 Feb, 11 Feb)

Upcoming schedule:

R 6 Feb

Quiz 2

Lesson 7

T 11 Feb

Quiz 3

Review day

W 12 Feb

Exam EI, 19:00 - 20:00, CH379 or nearby

R 13 Feb

Exam 1

Quiz 3

  • Focuses on Lessons 4-6, and list comprehensions from Lesson 3.
  • You will be asked to write code in a Jupyter notebook.
  • You will be allowed to use your computer, textbook, notes, and websites directly linked from the class website.
  • No collaboration allowed.

Exam 1

  • Covers Lessons 1-7.
  • Two parts: closed-book and open-book.
  • Closed-book part:
    • Pen and paper, multiple choice.
    • No outside assistance (closed computer, closed book, closed notes, closed internet, etc.)
  • Open-book part:
    • You may start the open-book part once you've submitted your closed-book part.
    • You will be asked to write code in a Jupyter notebook.
    • Open computer, open textbook, open notes. Websites directly linked from class website also allowed.
  • No collaboration allowed throughout the exam.
30 Jan

Quiz 2 will take place in class on Thursday 6 February.

  • Focuses on Lessons 4 and 5. (Lessons 1-3 are still relevant.)
  • Pen and paper, multiple choice.
  • You will not be allowed to use any outside assistance on this quiz: closed computer, closed book, closed notes, closed internet, etc.
  • No collaboration allowed.
23 Jan

Quiz 1 will take place in class on Tuesday 28 January.

  • Covers Lessons 1-3, except plotting.
  • You will be asked to write code in a Jupyter notebook.
  • You will be allowed to use your computer, textbook, notes, and websites directly linked from the class website.
  • No collaboration allowed.
9 Jan

Welcome!

Show older announcements

General Information

Resources

Projects

Project Instructions

Project 7 — Evolutionary Algorithms and the TSP

Due Tuesday 28 April @ 23:59.

You may work in teams of up to 3. Submit 1 project per team. No collaboration between teams.

Project 6 — Steganography

Due Tuesday 14 April @ 23:59.

Work on your own. Submit 1 project per student. Verbal collaboration is allowed, but sharing of code is not permitted.

Project 5 — Social Network Analysis

Due Tuesday 31 March @ 23:59.

You must work in teams of 2. Submit 1 project per team. No collaboration between teams.

Project 4 — Baseball Statistics

Due Tuesday 3 March @ 23:59.

Work on your own. Submit 1 project per student. Verbal collaboration is allowed, but sharing of code is not permitted.

Project 3 — Linear Programming

Due Thursday 20 February @ 23:59.

Work on your own. Submit 1 project per student. Verbal collaboration is allowed, but sharing of code is not permitted.

Project 2 — The Knapsack Problem

Due Thursday 30 January @ 23:59.

You must work in teams of 2 (one team of 3). Submit 1 project per team. No collaboration between teams.

Project 1 — Histograms

Due Thursday 23 January @ 23:59.

You must work in teams of 2 (one team of 3). Submit 1 project per team. No collaboration between teams.

Homework

Dates Problems
23 Apr

Finish the classwork from Lesson 19.

21 Apr

Finish the classwork from Lesson 18.

16 Apr

Finish the classwork from Lesson 17.

14 Apr

Finish the classwork from Lesson 16.

31 Mar

Finish the classwork from Lesson 15.

26 Mar

Finish the classwork from Lesson 14.

24 Mar

Finish the classwork from Lesson 13.

5 Mar

Finish the classwork from Lesson 12.

27 Feb

Finish Lesson 11.

25 Feb

Finish the classwork from Lesson 10.

20 Feb

Finish the classwork from Lesson 9.

18 Feb

Finish the classwork from Lesson 8. Read Chapter 10 of PCC. Reading Quiz for PCC Chapter 10.

13 Feb

Read Chapter 9 of PCC. Reading Quiz for PCC Chapter 9.

11 Feb

Finish classwork from prior lessons. Study for Exam 1.

6 Feb

Finish classwork from prior lessons.

4 Feb

Finish the classwork from Lesson 6.

30 Jan

Finish classwork from prior lessons. Read Chapter 8 of PCC. Reading Quiz for PCC Chapter 8.

28 Jan

Finish the classwork from Lesson 5.

23 Jan

Finish the classwork from Lesson 4. Read Chapter 7 of PCC. Reading Quiz for PCC Chapter 7.

21 Jan

Finish the classwork from Lesson 3. Read Chapter 6 of PCC. Reading Quiz for PCC Chapter 6.

16 Jan

Finish the classwork from Lesson 2. Read Chapter 5 of PCC. Reading Quiz for PCC Chapter 5.

14 Jan

Finish the classwork from Lesson 1. Read Chapters 3 and 4 of PCC. Reading Quiz for PCC Chapter 4.

9 Jan

Familiarize yourself with the course policy statement.

Read Chapters 2 and 3 of PCC. Reading Quiz for PCC Chapter 2. Reading Quiz for PCC Chapter 3.

Lessons

Dates Lesson
  • 28 Apr
Review day
  • 23 Apr
19 More data visualization
  • 21 Apr
18 More genetic algorithms, visualizing location data
  • 16 Apr
17 Genetic algorithms with Python
  • 14 Apr
16 Linear programming with Python
  • 2 Apr
Review day
  • 31 Mar
15 Steganography
  • 26 Mar
14 Working with images in Python
  • 24 Mar
13 Social network analysis
  • 5 Mar
12 Graph theory with Python
  • 27 Feb
11 Matrices with Python
  • 25 Feb
10 Using spreadsheets with Python
  • 20 Feb
9 Files and exceptions
  • 18 Feb
8 Classes
  • 11 Feb
Review day
  • 6 Feb
7 Practice with functions
  • 4 Feb
6 Functions
  • 30 Jan
Review day
  • 28 Jan
5 User input and while loops
  • 23 Jan
4 Dictionaries
  • 21 Jan
3 List comprehensions, errors, conditional statements
  • 16 Jan
2 Loops, slicing, and plotting
  • 14 Jan
  • 9 Jan
1 Introduction to Jupyter and Python
  • 9 Jan
0 Introduction and setup

Quizzes

Date Quiz
21 Apr Quiz 6
26 Mar Quiz 5
27 Feb Quiz 4
11 Feb Quiz 3
6 Feb Quiz 2
28 Jan Quiz 1

Exams

Date Exam
6 May Final Exam
7 Apr Exam 2
13 Feb Exam 1