Schedule

Section numbers in the textbook are noted as “§1.2,” and correspond to the 6th edition. If you have a different edition, see this table to find corresponding section numbers. The schedule is available as schedule.ics (section 1) or schedule2.ics (section 2) – copy that link to subscribe or import it into Google Calendar and other systems.

  • Wed 4 Sep: Meeting 1

    Introduction, and positional numbering. Read §2.1

  • Mon 9 Sep: Meeting 2

    Binary natural numbers. Read §2.2

  • Wed 11 Sep: Meeting 3

    Signed two’s complement numbers. Read §3.1–3.2

  • Mon 16 Sep: Meeting 4 [quiz]

    Text encodings. Read §3.3

  • Wed 18 Sep: Meeting 5

    Text compression.

  • Mon 23 Sep: Meeting 6

    Graphics encoding. Read §3.5

  • Wed 25 Sep: Meeting 7

    Audio/video encoding. Read §3.4, 3.6

  • Mon 30 Sep: Assignment 1 due

    Text compression

  • Mon 30 Sep: Meeting 8 [quiz]

    Boolean logic. Read §4.1–4.2

  • Wed 2 Oct: Meeting 9

    We will substitute some online content and exercises. Combinational circuits. Read §4.3, 4.4

  • Mon 7 Oct: Meeting 10

    Memory and the Turing Machine model. Read §4.5, 5.1

  • Tue 8 Oct: Assignment 2 due

    Image representation

  • Wed 9 Oct: Meeting 11

    The von Neumann architecture and machine code. Read §5.2, 6.1–6.3

  • Mon 14 Oct: Meeting 12

    Algorithms and complexity. Read §6.5, 7.1–7.2

  • Tue 15 Oct: Assignment 3 due

    Combinational circuits

  • Wed 16 Oct: Meeting 13 [quiz]

    Searching and sorting. Read §7.4–7.5

  • Mon 21 Oct: Meeting 14

    Python syntax.

  • Wed 23 Oct: Meeting 15 [exam]

    Midterm exam.

  • Mon 28 Oct: Meeting 16

    Python programming.

  • Wed 30 Oct: Meeting 17

    More programming.

  • Mon 4 Nov: Meeting 18

    Other programming languages. Read §9.2–9.3

  • Tue 5 Nov: Assignment 4 due

    Sorting and searching

  • Wed 6 Nov: Meeting 19

    What is an Operating System? Read §10.1–10.4

  • Mon 11 Nov: Meeting 20

    Introduction to Linux and the network stack. Read §15.1–15.4

  • Wed 13 Nov: Meeting 21 [quiz]

    Languages and protocols of the web. Read §16.1–16.2

  • Sun 17 Nov: Assignment 5 due

    Python program

  • Mon 18 Nov: Meeting 22

    The relational data model. Read §12.3

  • Wed 20 Nov: Meeting 23

    Introduction to SQL.

  • Mon 25 Nov: Meeting 24 [quiz]

    Overview of Artificial Intelligence. Read §13.1–13.3

  • Sun 1 Dec: Assignment 6 due

    Web page

  • Mon 2 Dec: Meeting 25

    Planning and searching techniques. Read §17.1–17.2

  • Wed 4 Dec: Meeting 26

    Authentication and authorization.

  • Mon 9 Dec: Meeting 27 [quiz]

    Cryptography. Read §17.4–17.5

  • Tue 10 Dec: Assignment 7 due

    Artificial intelligence

  • Wed 11 Dec: Meeting 28

    Wildcard day and wrap-up.

  • Mon 16 Dec: Assignment 8 due

    Cryptography