Class Schedule Sort by: Date Tuesday Aug 27 2019 Week 1: Tuesday Intro to the class, computer science, Python, and law. Download 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 Download 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… Download Thursday Sep 05 2019 Week 2: Thursday A bit about computers and data; a lot about variables and strings. Download 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.) Download Zybooks 2.3, 2.7, 7.1, 7.3. (And review 3.1 if you don't remember it) Wednesday Sep 11 2019 Week 3: Wednesday Lab Creating a password and a very first bit of the rotation needed in the Caesar Cipher. Download Thursday Sep 12 2019 Week 3: Thursday Return vs. print; String slicing, Booleans, If, more US law when others possess the encryption keys. Download 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. Download 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. Download 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. Download Reading Zybooks 4.8, 5.2, 5.3 Tuesday Oct 01 2019 Week 6: Tuesday While loops continued. Counting. List Basics. Download Zybooks 3.2, 4.7, 5.4, 5.6 Wednesday Oct 02 2019 Week 6: Wednesday Lab List basics and something with two loops. Thursday Oct 03 2019 Week 6: Thursday List basics cont. For loops cont.. First look at files. Download Zybooks 3.7 (type conversion), 3.8 (string formatting), 11.1 (file intro). Tuesday Oct 08 2019 Week 7: Tuesday Nested loops. Files a bit more slowly. A first look at modules More on encodings. Download Reading Zybooks 2.8, 5.8, 10.1. And “One of the most politically volatile terms in years tests John Roberts and the Supreme Court“, Washington Post, Oct. 6, 2019. 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 Download 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. Download 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. Download 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. Download Reading Zybooks 8.7., 8.9 (lists), 5.10 (break and continue). Not due until Wednesday early morning because we posted it so late. Wednesday Oct 30 2019 Week 10: Wednesday Lab Plotting simple data using pandas. Lab quiz. Thursday Oct 31 2019 Week 10: Thursday (Tuesday material continued as needed.) The law and web crawling. Copyright. Code. CFAA again. Contracts. Download 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. Thursday Nov 07 2019 Week 11: Thursday Exam 2 Tuesday Nov 12 2019 Week 12: Tuesday Midterm postmortem, HTML, Web crawler questions answered; if time, introduction to network analysis, profiling, privacy. Download No reading Wednesday Nov 13 2019 Week 12: Wednesday Lab Optional help with web crawler assignment; no quiz; attendance 100%optional. Thursday Nov 14 2019 Week 12: Thursday HTML concluded. Network analysis start. Profiling and predictive policing. Download Reading David Easley and Jon Kleinberg, Networks, Crowds, and Markets: Reasoning About a Highly Connected World (prepublication version available for free online), Chapter 1 pages 1–9 and Chapter 2 pages 23–32. Tuesday Nov 19 2019 Week 13: Tuesday Networkx continued. Dictionaries. Plotting degree distributions. If time: Social media, and how social media is searched. Download 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. Download 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. Download 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. Thursday Nov 28 2019 Week 14: Thursday Happy Thanksgiving! ZyBooks 13.1–13.3. 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. Download Wednesday Dec 04 2019 Week 15: Wednesday Lab Lab quiz; function writing lab assignment. Thursday Dec 05 2019 Week 15: Thursday Review for final exam Download 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.