Your browser is unsupported

We recommend using the latest version of IE11, Edge, Chrome, Firefox or Safari.

Class Schedule

Sort by:
Wednesday
Aug 28
2019

Week 1 Lab

Complete Lab entirely inside Zybook. Optionally, install Anaconda distribution of Python on y our own computer.

Reading

It will help you if you complete the first part of the Zybook reading, sections 1.1-1.4 before coming to lab, even though they are not due until Thursday 1:30 pm.

Thursday
Aug 29
2019

Week 1: Thursday

Active Learning, Intro to Python, Encryption, Privacy & the Government.

To-do before this class

Obtain and Register your clicker before today’s class and bring it to class today and every day.

By 1:30 pm before class:
Read Zybooks CS 111: Program Design I (Intro to Python 3), 1.1-1.4, 1.6-1.9. Do all participation activities.

Read How to Think Like a Computer Scientist: Interactive Edition, from General Introduction, 1.1-1.2, 1.5, 1.11.

Tuesday
Sep 03
2019

Week 2: Tuesday

Fifth Amendment & Crypto Keys; Python Basics: functions, variables

Reading (and, as always, associated participation activities)

Zybooks 2.1 (variables) and 6.1 (function basics).

Wednesday
Sep 04
2019

Week 2: Wednesday Morning Lab

Second lab! You turn in your lab inside of Zybooks, which tells the specific code you need to write and submit, but more detailed directions about how to get started are in the…

Thursday
Sep 05
2019

Week 2: Thursday

A bit about computers and data; a lot about variables and strings.

Zyboooks 2.2, 2.5, 2.6, 3.1.

Tuesday
Sep 10
2019

Week 3: Tuesday Lecture

Assignments, expressions and arithmetic, lots about strings, and the Fourth Amendment (time permitting). (Time didn’t permit.)

Zybooks 2.3, 2.7, 7.1, 7.3. (And review 3.1 if you don't remember it)

Thursday
Sep 12
2019

Week 3: Thursday

Return vs. print; String slicing, Booleans, If, more US law when others possess the encryption keys.

Zybooks 2.7 (modulo), 4.1-4.3 (If-else and Booleans); 6.3 (return), 7.1 (string slicing).

Tuesday
Sep 17
2019

Week 4: Tuesday

Basic if Statement (continued), simple for loop over a string, functions, towards a web crawler.

Reading (and participation activities) as always by 1:30 before class: Zybooks 5.1, 5.4 (basics of for loops), 6.2, 6.16 (more on functions)

Wednesday
Sep 18
2019

Week 4: Wednesday Lab

Your first for loop: Extending the Caesar rotation from one character to a string. Entirely inside Zybooks. Also, first project released, due 1 week from Sunday night at 11:30 pm. Lab details are…

Thursday
Sep 19
2019

Week 4: Thursday

Functions concluded (for now), including their role in design. A bit more on booleans and if-else; some midterm review.

Zybooks 4.5, 4.6, 6.5

Tuesday
Sep 24
2019

Week 5: Tuesday

Midterm 1. In regular classroom at regular time.

No new reading.

Wednesday
Sep 25
2019

Week 5: Lab Optional

Lab optional help session for Project 1 (and no lab quiz ) this week

Thursday
Sep 26
2019

Week 5: Thursday

Boolean operators (concluded), Nesting If’s, Intro to While loops, Open Access.

Reading

Zybooks 4.8, 5.2, 5.3

Thursday
Oct 03
2019

Week 6: Thursday

List basics cont. For loops cont.. First look at files.

Zybooks 3.7 (type conversion), 3.8 (string formatting), 11.1 (file intro).

Wednesday
Oct 09
2019

Week 7: Wednesday Lab

Lab on finding one URL (web address) in the text of a web page. You will extend this to a small project of returning all the links in a web page. Lab quiz…

Thursday
Oct 10
2019

Week 7: Thursday

Supreme Court Database assignment and data analysis using Python data science module pandas; the Supreme Court.

No new reading

Tuesday
Oct 15
2019

Week 8: Tuesday

More about the Supreme Court and or pandas and the Supreme Court DB. More on dot notation as time allows. Maybe even legal analytics if we have enough time, but probably not until…

No new reading

Wednesday
Oct 16
2019

Week 8: Wednesday Lab

Optional help session on big Supreme Court Database project. NO lab quiz. Note: The 8 am lab session led by Krishna Garg will NOT meet, even as an optional session.

Zybooks on Modules, continued: 10.3 and 10.7 (and do activities).

Thursday
Oct 17
2019

Week 8: Thursday

Pandas again, user manual point of view. Plotting with pandas. If time: Several miscellaneous small leftovers: with statement, while vs. for, incremental development

Reading

Zybooks 5.7, 5.9, 11.6.

Tuesday
Oct 22
2019

Week 9: Tuesday

Legal Data Analytics. Limitations of Data Analytics. Files concluded. Modules concluded.

Reading

Zybooks sections 8.1, 10.3, 10.7, 11.2.

Wednesday
Oct 23
2019

Week 9: Wednesday Lab

“Regular” working with files. Lab will be posted both on Blackboard; must be submitted in Blackboard.

Read Zybooks 8.1 on lists.

Thursday
Oct 24
2019

Week 9: Thursday

Lists, list methods, help with current project, towards the full web crawler. If time permits: Parameter passing, especially with mutable actual parameters.

Reading

Zybooks 8.2 (list methods), 8.3-8.4, more list review. 6.10, Scope of variables.

Tuesday
Oct 29
2019

Week 10: Tuesday

Lists concluded. Networks: How does the Internet work anyway? Networks with Python: Using urllib to connect to the web from inside a Python program. The Web. If time, break and continue.

Reading

Zybooks 8.7., 8.9 (lists), 5.10 (break and continue). Not due until Wednesday early morning because we posted it so late.

Thursday
Oct 31
2019

Week 10: Thursday

(Tuesday material continued as needed.) The law and web crawling. Copyright. Code. CFAA again. Contracts.

No new reading

None.

Tuesday
Nov 05
2019

Week 11: Tuesday

Primarily review for Exam II. Maybe some material about HTML and the web crawler project.

Wednesday
Nov 06
2019

Week 11: Wednesday Lab

No regular lab today; no lab quiz. Work on Project and Study for Exam 2. Will arrange for at least one TA to hold some office hours at least 10-12, maybe earlier.

Tuesday
Nov 12
2019

Week 12: Tuesday

Midterm postmortem, HTML, Web crawler questions answered; if time, introduction to network analysis, profiling, privacy.

No reading

Wednesday
Nov 13
2019

Week 12: Wednesday Lab

Optional help with web crawler assignment; no quiz; attendance 100%optional.

Tuesday
Nov 19
2019

Week 13: Tuesday

Networkx continued. Dictionaries. Plotting degree distributions. If time: Social media, and how social media is searched.

Reading

Zybooks 3.4, 8.12, 8.13, 8.14. (Dictionaries)

Wednesday
Nov 20
2019

Week 13: Wednesday Lab

Lab quiz and social network analysis lab. Important: lab is first 20-25% of social network project due only a little later.

Thursday
Nov 21
2019

Week 13: Thursday

Social media analysis concluded. 2D lists. Contagion spread and Predictive Policing.

Reading

Zybooks 8.5 (list nesting).

Tuesday
Nov 26
2019

Week 14: Tuesday

Predictive policing and contagion theory concluded. Heat maps. Plain old matplotlib plotting. None and NaN vs. normal return values of functions. Predictive policing assignment released.

Reading

Zybooks 12.1-12.3.

Wednesday
Nov 27
2019

Week 14: Wednesday Lab

No lab today to accommodate students leaving early for Thanksgiving. Final project on predictive policing and plotting heat maps released yesterday or today.

Zybooks further dictionary material: 8.12, 8.13, 8.14. Zybooks 8.5, list nesting.

Tuesday
Dec 03
2019

Week 15: Tuesday

Help on final project; com_count as example of hierarchical decomposition and of abstraction. More predictive policing, AI and machine learning policy. If time, start of review of law material.

Wednesday
Dec 11
2019

Final Exam

Wednesday, December 11, 3:30-5:30, room TBD. Planning travel out of Chicago for before the final exam is not an acceptable excuse, and will result in a grade of zero on the final.