CS 2316 - Spring 2018

Weekly Schedule

Lectures: Mondays, Wednesdays, Fridays from 13:55 - 14:45 in Instructional Center 103

Recitations: Thursdays

Lecture Schedule

Topics link to slides, where available.

ITCS means Interactive Think CS Textbook

IP means Introducting Python

TP means Think Python, 2nd Edition, by Allen B. Downey, O'Reilly Media, December 2015. Available free at http://greenteapress.com/wp/think-python-2e/ and from O'Reilly at http://shop.oreilly.com/product/0636920045267.do

Date Topics Reading and Resources Reminders

Python Review

Week 1

2018-01-08 "Ice Day" - No Class HW0 Released 2018-01-08
2018-01-10 Intro to DME Syllabus
Schedule
Meet the Teacher
Video: Getting Started
Exercise: CS 2316 Pre-test
2018-01-12 Intro to Python ITCS - Introduction
TP 1
Video: Intro to Python
Registration Deadline (2018-01-12)

Week 2

2018-01-15 MLK Day - No Class
2018-01-17 Snow Day - No Class
2018-01-19 Values and Variables ITCS - Simple Data
TP 2
Video: Values and Variables
HW0 Due 2018-01-19

Week 3

2018-01-22 Functions
Modules and Programs
ITCS - Functions
ITCS - Turtles
TP 3
ITCS - Modules
TP 1,14
hanglib
Exercise: BMI Module
Exercise: Hangman
HW1 Released 2018-01-22
2018-01-24 Data Structures ITCS - Lists
ITCS - Dictionaries
TP 10,11,12
Video: Data Structures
Exercise: Data Utilities
2018-01-26 Data Structures ITCS - Lists
ITCS - Dictionaries
TP 10,11,12
Video: Data Structures
Exercise: Data Utilities
Verification of Participation (Faculty) (2018-01-26)

Week 4

2018-01-29 iPython
Control Structures

ITCS - Selection
ITCS - Iteration
TP 5, 7
Exercise: Grades Module
2018-01-31 Control Structures ITCS - Selection
ITCS - Iteration
TP 5, 7
Exercise: Grades Module
HW1 Due 2018-02-01
2018-02-02 Functional programming TP 19

Data Formats, Retrieval, and Storage

Week 5

2018-02-05 Functional programming TP 19
HW2 Released 2018-02-06
2018-02-07 Review 1 dme-exam1-practice.pdf
cs2316-exam1-practice-answers.pdf
Exam 1 Practice Problems
2018-02-09 Exam 1 cs2316-exam1-practice.pdf
cs2316-exam1-practice-answers.pdf

Week 6

2018-02-12 Classes and Objects ITCS - Classes and Objects
OOP Code
TP 15 - 18
Exercise: Treating People as Objects
2018-02-14 File IO
CSV Files
IP 8
Exercise: Tree
IP 8
Exercise: Student Emails (Sample Answer)
Exercise: Tides
Exercise: Calculate Grades
HW2 Due 2018-02-14
2018-02-16 CSV Files IP 8
Exercise: Student Emails (Sample Answer)
Exercise: Tides
Exercise: Calculate Grades

Week 7

2018-02-19 Data Exchange Formats IP 8
XML Details
Python XML and Database APIs
JSON Spec
people.xml
Exercise: Books
Progress Reports Due (Faculty) (2018-02-19)
2018-02-21 HTML IP 8

2018-02-23 Regular Expressions IP 7
Python RE Module
Python Regex HowTo

Week 8

2018-02-26 Web Scraping Beautiful Soup
wx.py
movie.py
Exercise: Company Scraper
2018-02-28
2018-03-02 Web Scraping Beautiful Soup
wx.py
movie.py
Exercise: Company Scraper
HW3 Released 2018-03-02

Week 9

2018-03-05 Web Services
SQL DDL
SQL CRUD
IP 8
Requests
OAuth
JSON Spec
MySQL Guide
Exercise: Registration Database
Exercise: Pubs Queries
MySQL Guide - on databases course web site
Exercise: Registration Database
Exercise: Pubs Queries
2018-03-07 SQL Queries MySQL Guide - on databases course web site
Exercise: Registration Database
Exercise: Exercise: Dorms Queries
2018-03-09 SQL Queries MySQL Guide - on databases course web site
Exercise: Registration Database
Exercise: Exercise: Dorms Queries

Data Analytics

Week 10

2018-03-12 Review 2 cs2316-exam2-practice.pdf
cs2316-exam2-practice-answers.pdf
HW3 Due 2018-03-12
2018-03-14 Exam 2
Grade Mode Deadline (2018-03-14)
Grade Substitution Deadline (2018-03-14)
Withdrawal Deadline (2018-03-14)
2018-03-16 Python Database API Python XML and Database APIs
Python DB-API
Python SQLite API
PyMySQL
HW4 Released 2018-03-16

Week 11

2018-03-19 Spring Break - No Class
2018-03-21 Spring Break - No Class
2018-03-23 Spring Break - No Class

Week 12

2018-03-26 Data Analytics in Python
NumPy
SciPy.org
Numpy Manual
2018-03-28 Pandas Pandas.PyData.org
2018-03-30 Pandas Pandas.PyData.org
HW4 Due 2018-03-30

Week 13

2018-04-02 Pandas Pandas.PyData.org
2018-04-04 Pandas Pandas.PyData.org
2018-04-06 Data Visualization with Python Matplotlib.org

Python GUIs and Special Topics

Week 14

2018-04-09 Data Visualization with Python
Python GUIs
Matplotlib.org
GUI Example Code
HW5 Released 2018-04-10
2018-04-11 Python GUIs GUI Example Code
HW6 Released 2018-04-12
2018-04-13 Python GUIs GUI Example Code

Week 15

2018-04-16 Review 3 cs2316-exam3-practice.pdf
cs2316-exam3-practice-answers.pdf
2018-04-18 Exam 3
2018-04-20 Special Topics HW5 Due 2018-04-22
HW6 Due 2018-04-22

Week 16

2018-04-23 Review Final Instructional Days (2018-04-23)

Finals

2018-05-03 14:50 - 17:40