Date |
Topics |
Readings |
Notes and Resources |
Week 0: Jan 21-24 |
Course introduction and Administrivia
Installing and running Python and Jupyter
|
Jupyter notebook documentation (required)
|
HW00
|
Week 1: Jan 27 - Jan 31 |
Basic Python: types, variables and functions
Basic Python: conditionals and iteration
|
Either A. B. Downey, Chapters 1 through 3 or Severance, Chapters 1, 2 and 4 (required)
Either A. B. Downey, Chapter 5 or Severance, Chapters 3 and 5
|
Types, variables and functions: Slides; Demo code
Conditionals and iteration: Slides; Demo code
|
Week 2: Feb 3-7 |
Sequence data: strings, lists and tuples
List comprehensions
Python dictionaries and hashing
|
|
|
Week 3: Feb 10-14 |
Files and I/O
Python on the Command Line
|
|
|
Week 4: Feb 17-21 |
Basics of object-oriented programming
Classes and instances
Methods and attributes
|
|
|
Week 5: Feb 24-28 |
Basic concepts in functional programming
Map, reduce and filter
|
|
|
Week 6: Mar 3-7 |
numpy, scipy and matplotlib
|
|
|
Week 7: Mar 10-14 |
Python pandas
|
|
|
Week 8: Mar 17-21 |
Markup languages: HTML, XML and JSON
|
|
|
Mar 24-Mar 28 |
Spring Break. No lecture.
|
|
|
Week 9: Mar 31-Apr 4 |
Databases and SQL
Retrieving data with APIs
|
|
|
Week 10: Apr 7-11 |
Introduction to Hadoop and MapReduce
MapReduce using mrjob
|
|
|
Week 11: Apr 14-18 |
MapReduce using PySpark
|
|
|
Week 12: Apr 21-25 |
Google TensorFlow and Keras
|
|
|
Week 13: Apr 28-May 2 |
Google TensorFlow and Keras, cont'd
|
|
|