Week 1: March 28
- Assignments due
- fill out the pre-course survey
- Agenda
- Quick introductions — Be ready to introduce yourself and describe your interest and goals in the class.
- Why Programming and Data Science for UX Research? — What this course is about
- Class overview and expectations — We'll walk through this syllabus.
- Group formation — We'll assemble in our peer programming groups for the first time.
- Installation and setup — You'll install software including the Python programming language and run through a series of exercises.
- Interactive lecture: programming concepts 1
- Self-guided tutorial and exercises — You'll work through a self-guided tutorial to practice the basic concepts we introduced in the lecture.
- Homework
- Complete Self-guided tutorial and exercises (if you didn't finish this in class).
- Complete CodeAcademy lessons
- Resources
- Python for Informatics: Preface and Chapter 1 Why should you learn to write programs?
- Command line cheat sheet — covers basics like
ls, pwd, cd
and much more.
Week 2: April 4
- Agenda
- We will review the programming concepts introduced last week as a group.
- We will introduce some new programming concepts into the mix.
- We will play a guessing game (click here to download the code)
- We will use what we have learned so far to cheat at Scrabble.
- We will introduce our first set of Coding Challenges.
- We will take a sneak peak at what a good final project looks like.
- Homework
- Complete the second set of CodeAcademy lessons
- Work on the Week 2 coding challenges
- Resources
- Python for Informatics: Chapter 2 Variables, expressions and statements and Chapter 3 Conditional execution
- Python data types cheat sheet
- Python loops cheat sheet
- Working within loops
- Wordplay handout
- cdsw-au2015-lecture1-20151010.ogv -- Mako Hill's lecture video from a previous course, which covers most of the concepts from my Week 1 and Week 2 lectures.
Week 3: April 11
- Agenda
- We'll walk through the concepts and solutions to the code challenges from last week as a group.
- Interactive lecture - reading and writing datafiles, dictionaries
- We'll explore dataset and research question options for the Final Project assignments.
- We'll begin working on a series of exercises using the Baby Names dataset
- Homework
- Resources
- go here
Week 4: April 18
- Agenda
- We'll walk through the concepts and solutions to the code challenges from last week as a group.
- Interactive lecture - background of web APIs; requesting web pages with
requests
, JSON, and writing to files. - We'll discuss the Final Project Idea assignment (due next week!)
- We'll begin working on a series of projects using the Wikipedia API.
- Homework
- Day 4 coding challenges
- Final Project Idea
- Resources
- Python for Informatics: Chapter 12 Networked programs and Chapter 13 Using Web Services
- Two video lecturs by Mako Hill, which covers most of the concepts from this week's lecture (as well as some useful review):
Week 5: April 25
- Assignments due
- Agenda
- Day 5 lecture - visualizing web data
- Introduction to Jupyter notebooks
- graphing data with matplotlib
- Homework
- Python quiz #5
- Day 5 coding challenges
- Resources
- go here
Week 6: May 2
- Agenda
- Day 6 lecture - querying databases
- Homework
- Resources
- go here
Week 7: May 9
- Assignments due
- Agenda
- Day 7 lecture - corpus analysis
- Coding challenges
- Resources
- go here
Week 8: May 16
- Agenda
- Day 8 lecture - statistics with scipy
- Coding challenges
- Resources
- go here
Week 9: May 23
- Agenda
- Day 9 lecture - research study design
- review of key concepts and tools from this course
- presentation workshop
- Resources
- go here
Week 10: June 3 (DATE CHANGE)
Please note that this class we will meet Friday evening, rather than Monday evening, because of the Memorial Day holiday.
- Assignments due
- Agenda
- Day 10 lecture - Final project report review, next steps for Data Science
- Final project presentations
Week 11: June 6
FINALS WEEK - NO CLASS
- Assignments due
- Final project report and code due by midnight on Wednesday, 6/8/2016