Latest revision |
Your text |
Line 21: |
Line 21: |
| * Python for Informatics: [http://www.pythonlearn.com/html-009/book001.html Preface] and [http://www.pythonlearn.com/html-009/book002.html Chapter 1 Why should you learn to write programs?] | | * Python for Informatics: [http://www.pythonlearn.com/html-009/book001.html Preface] and [http://www.pythonlearn.com/html-009/book002.html Chapter 1 Why should you learn to write programs?] |
| * [http://sites.tufts.edu/cbi/files/2013/01/linux_cheat_sheet.pdf Command line cheat sheet] — covers basics like <code>ls, pwd, cd</code> and much more. | | * [http://sites.tufts.edu/cbi/files/2013/01/linux_cheat_sheet.pdf Command line cheat sheet] — covers basics like <code>ls, pwd, cd</code> and much more. |
| <br/>
| |
| <br/>
| |
|
| |
|
| === Week 2: April 4 === | | === Week 2: April 4 === |
Line 46: |
Line 44: |
| * [[Wordplay handout]] | | * [[Wordplay handout]] |
| * [http://communitydata.cc/~mako/cdsw-au2015-lecture1-20151010.ogv 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. | | * [http://communitydata.cc/~mako/cdsw-au2015-lecture1-20151010.ogv 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. |
| <br/>
| |
| <br/>
| |
|
| |
|
| === Week 3: April 11 === | | === Week 3: April 11 === |
Line 53: |
Line 49: |
|
| |
|
| ;Agenda | | ;Agenda |
| * We will review your feedback from last week | | * We'll walk through the concepts and solutions to the [[DS4UX_(Spring_2016)/Day_2_coding_challenge|code challenges from last week]] as a group. |
| * We will walk through the [[DS4UX_(Spring_2016)/Day_2_coding_challenge#Solutions|solutions to the code challenges from last week]]
| | * [[DS4UX_(Spring_2016)/Day_3_lecture|Interactive lecture]] - reading and writing datafiles, dictionaries |
| * We will introduce some [[DS4UX_(Spring_2016)/Day_3_lecture|new programming concepts]] | | * We'll explore dataset and research question options for the Final Project assignments. |
| * We will walk through an example of programming in a UX Research context | | * We'll begin working on a series of exercises using the Baby Names dataset |
| * We will begin working on a series of exercises using the [[DS4UX_(Spring_2016)/Baby Names|Baby Names]] dataset | | <!--[[Baby Names]] ([[Community_Data_Science_Workshops_(Fall_2015)/Day_1_baby_names_project_download|download]]) --> |
|
| |
|
| ;Homework | | ;Homework |
Line 64: |
Line 60: |
| ;Resources | | ;Resources |
| *''go here'' | | *''go here'' |
| <br/>
| |
| <br/>
| |
|
| |
|
| === Week 4: April 18 === | | === Week 4: April 18 === |
Line 71: |
Line 65: |
|
| |
|
| ;Agenda | | ;Agenda |
| * [[DS4UX_(Spring_2016)/Day_3_coding_challenge|Week 3 code challenges]] — We'll briefly walk through the concepts and solutions to the Week 3 coding challenges as a group. | | * We'll walk through the concepts and solutions to the [[DS4UX_(Spring_2016)/Day_3_coding_challenge|code challenges]] from last week as a group. |
| * [[DS4UX_(Spring_2016)/Day_4_lecture#Week_3_follow-up|Day 3 follow up]] — We will cover some important concepts that we didn't have a chance to cover in depth last week.
| | *[[DS4UX_(Spring_2016)/Day_4_lecture|Interactive lecture]] - background of web APIs; requesting web pages with <code>requests</code>, JSON, and writing to files. |
| * [[DS4UX_(Spring_2016)/Day_4_lecture#Reading_and_writing_files|Reading and writing files]] — we will learn how to read and write basic datafiles with Python. | | * We'll discuss the Final Project Idea assignment (due next week!) |
| * [[DS4UX_(Spring_2016)/Seattle_traffic|Burke-Gilman traffic counter]] — we will start working with a dataset of bike and pedestrian traffic on the Burke-Gilman trail. | | * We'll begin working on [[Community Data Science Course (Spring 2015)/Wikipedia API projects|a series of projects using the Wikipedia API]]. |
| * [[DS4UX_(Spring_2016)/Wikipedia Notifications survey|Wikipedia Notifications survey analysis]] — We will walk through a real life example that uses the concepts we've developed so far to answer research questions.
| |
|
| |
|
| ;Homework | | ;Homework |
| * [[DS4UX_(Spring_2016)/Day_4_coding_challenge|Day 4 coding challenges]] (Required) '''[https://canvas.uw.edu/courses/1040891/assignments/3264409 Turn in here!]''' | | * [[DS4UX_(Spring_2016)/Day_4_coding_challenge|Day 4 coding challenges]] ('''Required''') |
|
| |
|
| ;Resources | | ;Resources |
| * Two video lectures by Mako Hill, which covers most of the concepts from NEXT week's lecture (as well as some useful review): | | * Python for Informatics: [http://www.pythonlearn.com/html-009/book013.html Chapter 12 Networked programs] and [http://www.pythonlearn.com/html-009/book014.html 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): |
| :* [https://communitydata.cc/~mako/cdsw-au2015-lecture2-20151024.ogv cdsw-au2015-lecture2-20151024.ogv] | | :* [https://communitydata.cc/~mako/cdsw-au2015-lecture2-20151024.ogv cdsw-au2015-lecture2-20151024.ogv] |
| :* [https://communitydata.cc/~mako/cdsw-au2015-lecture3-20151107.ogv cdsw-au2015-lecture3-20151107.ogv] | | :* [https://communitydata.cc/~mako/cdsw-au2015-lecture3-20151107.ogv cdsw-au2015-lecture3-20151107.ogv] |
| <br/>
| |
| <br/>
| |
|
| |
|
| === Week 5: April 25 === | | === Week 5: April 25 === |
Line 91: |
Line 83: |
|
| |
|
| ;Assignments due | | ;Assignments due |
| * [[DS4UX_(Spring_2016)/Day_4_coding_challenge|Day 4 coding challenge]] '''[https://canvas.uw.edu/courses/1040891/assignments/3264409 Turn in here!]''' | | * [[DS4UX_(Spring_2016)#Final_Project_Idea|Final project idea]] |
| | * Day 4 coding challenge |
|
| |
|
| ;Agenda | | ;Agenda |
| * [[DS4UX_(Spring_2016)/Day_4_coding_challenge#Solutions|Week 4 code challenge solutions]] — We'll walk through the concepts and solutions to the Week 4 coding challenges as a group. | | *[[DS4UX_(Spring_2016)/Day_5_lecture|Day 5 lecture]] - visualizing web data |
| * [[DS4UX_(Spring_2016)/Day_5_lecture#Lecture_1:_What_is_an_API.3F|Lecture 1: What is an API?]] — Ray will introduce us to APIs ("Application Programming Interfaces"). | | *Introduction to Jupyter notebooks |
| * [[DS4UX_(Spring_2016)/Day_5_lecture#Exercise_1:_How_do_we_use_APIs_to_get_kitten_pictures.3F|Exercise 1: PlaceKitten API]] — we will write our first API requests using the [http://placekitten PlaceKitten API]. | | * graphing data with matplotlib |
| * [[DS4UX_(Spring_2016)/Day_5_lecture#Lecture_2:_Using_data_from_APIs_in_Python|Lecture 2: Using data from APIs in Python]] — Ray will introduce us to JSON ("JavaScript Object Notation"), a type of data structure that is commonly used by APIs, which can be easily imported into Python and converted to a dictionary for analysis. | | <!-- |
| * [[DS4UX_(Spring_2016)/Day_5_lecture#Week_5_project:_How_do_we_use_APIs_to_get_data_from_Wikipedia.3F|Week 5 project: Introducing the Wikipedia API]] — We will learn the syntax of the MediaWiki API (used by Wikipedia), as well as how to test API queries in a sandbox, and how to perform those queries in Python—in preparation for the [[DS4UX_(Spring_2016)/Day_5_coding_challenge|Week 5 coding challenges]].
| | ;Exercises |
| *We will go over a [https://docs.google.com/document/d/1RPjvoxYX87DM_px8UX9my6rEg0V3rTcNvRHzSAHxAzU/edit list of sample APIs, datasets, and research questions] that will get you thinking about what research ''you'' want to conduct for your final class project.
| | * visualize Seattle building permit data |
| | --> |
|
| |
|
| ;Homework | | ;Homework |
| *[[DS4UX_(Spring_2016)/Day_5_coding_challenge|Day 5 coding challenge]] ('''Update: NOT Required''') | | *[[DS4UX_(Spring_2016)/Day_5_coding_challenge|Day 5 coding challenges]] ('''Required''') |
| *[[DS4UX_(Spring_2016)#Final_Project_Idea|Final project ideas]]
| |
|
| |
|
| ;Resources | | ;Resources |
| * [https://docs.google.com/document/d/1RPjvoxYX87DM_px8UX9my6rEg0V3rTcNvRHzSAHxAzU/edit# Project Idea Assignment resources]: some examples of APIs, datasets, and research questions to help you complete your [[DS4UX_(Spring_2016)#Final_Project_Idea|Final Project Idea Assignment]]. | | *''go here'' |
| * [https://jsonformatter.curiousconcept.com/ JSON formatter and validator]: (useful for examining the structure of large/complex JSON blobs)
| |
| * [https://www.hurl.it/ Hurl.it API sandbox]: like the [https://en.wikipedia.org/wiki/Special:ApiSandbox Wikipedia API sandbox], but can query many more APIs!
| |
| * Two video lectures by Tommy Guy and Mako Hill, which covers most of the concepts from this week (as well as some useful review):
| |
| :* [https://communitydata.cc/~mako/cdsw-au2015-lecture2-20151024.ogv cdsw-au2015-lecture2-20151024.ogv]
| |
| :* [https://communitydata.cc/~mako/cdsw-au2015-lecture3-20151107.ogv cdsw-au2015-lecture3-20151107.ogv]
| |
| <br/>
| |
| <br/>
| |
|
| |
|
| === Week 6: May 2 === | | === Week 6: May 2 === |
| [[DS4UX_(Spring_2016)/Day_6_plan|Day 6 plan]] | | [[DS4UX_(Spring_2016)/Day_6_plan|Day 6 plan]] |
|
| |
| ;Assignments due
| |
| *[[DS4UX_(Spring_2016)#Final_Project_Idea|Final project ideas]] ([https://canvas.uw.edu/courses/1040891/discussion_topics/3325827 Turn in on Canvas])
| |
|
| |
|
| ;Agenda | | ;Agenda |
| * [[DS4UX_(Spring_2016)/Panama_Papers|Panama Papers project]] — using Wikipedia APIs to gather information related to a breaking news event. | | * [[DS4UX_(Spring_2016)/Day_6_lecture|Day 6 lecture]] - querying databases |
| :* [https://jtmorgan.net/ds4ux/week6/panama-papers.zip Click here to download the Panama Papers project]
| | <!-- |
| * An interactive lecture introducing the concept of user-defined functions | | *MYSQL queries with Quarry |
| :* [https://jtmorgan.net/ds4ux/week6/lecture.zip Click here to download the lecture slides and code]
| | *SOQL queries with Hurl.it and Python |
| | --> |
|
| |
|
| ;Homework | | ;Homework |
| *[[DS4UX_(Spring_2016)/Day_6_coding_challenge|Day 6 coding challenge]] ('''Required''') | | *[[DS4UX_(Spring_2016)/Day_6_coding_challenge|Day 6 coding challenges]] ('''Required''') |
|
| |
|
| ;Resources | | ;Resources |
| *[http://jtmorgan.net/ds4ux/week5/wikipedia-solutions.zip Click here to download the solutions to the week 5 coding challenges] (the ones that weren't required) | | *''go here'' |
| <br/>
| |
| <br/>
| |
|
| |
|
| === Week 7: May 9 === | | === Week 7: May 9 === |
| [[DS4UX_(Spring_2016)/Day_7_plan|Day 7 plan]] | | [[DS4UX_(Spring_2016)/Day_7_plan|Day 7 plan]] |
| | |
| ;Assignments due | | ;Assignments due |
| | | *[[DS4UX_(Spring_2016)#Final_Project_Proposal|Final project proposal]] |
| *[[DS4UX_(Spring_2016)/Day_6_coding_challenge|Day 6 coding challenges]] '''(Required)''' | | * Week 6 coding challenge |
| :* [https://jtmorgan.net/ds4ux/week6/panama-papers-solutions.zip Click here to download the week 6 challenge solutions]
| |
|
| |
|
| ;Agenda | | ;Agenda |
| * Week 6 coding challenge solutions - Jonathan will review the solutions to the week 6 coding challenges and answer questions
| | * [[DS4UX_(Spring_2016)/Day_7_lecture|Day 7 lecture]] - corpus analysis |
| * Writing your own functions - Ray will give a lecture and lead us through a series of interactive exercises on creating custom functions to make our code simpler, clearer, and more flexible.
| | <!-- |
| :* [https://jtmorgan.net/ds4ux/week7/lecture.zip Click here to download the lecture slides and code]
| | * counting mentions and welcomes in the Teahouse corpus |
| * [[DS4UX_(Spring_2016)/Building_permits|Working with location data]] - Jonathan will introduce some simple techniques for aggregating and visualizing datasets that have a location component, using a corpus of Seattle building permit data. | | * plotting trends over time in the Teahouse corpus |
| :* [https://jtmorgan.net/ds4ux/week7/bpdata.zip Click here to download the building permit code and data]
| | --> |
|
| |
|
| ;Coding challenges | | ;Coding challenges |
| *[[DS4UX_(Spring_2016)/Day_7_coding_challenge|Day 7 coding challenges]] | | *[[DS4UX_(Spring_2016)/Day_7_coding_challenge|Day 7 coding challenges]] |
|
| |
|
| <!--
| |
| ;Resources | | ;Resources |
| *''go here'' | | *''go here'' |
| -->
| |
| <br/>
| |
| <br/>
| |
|
| |
|
| === Week 8: May 16 === | | === Week 8: May 16 === |
| [[DS4UX_(Spring_2016)/Day_8_plan|Day 8 plan]] | | [[DS4UX_(Spring_2016)/Day_8_plan|Day 8 plan]] |
| ;Assignments due
| | |
| *[[DS4UX_(Spring_2016)#Final_Project_Proposal|Final project proposal]] '''MOVED FROM WEEK 7'''
| |
| ;Agenda | | ;Agenda |
| *Jupyter notebooks: intro and setup
| | * [[DS4UX_(Spring_2016)/Day_8_lecture|Day 8 lecture]] - statistics with scipy |
| :* paws.wmflabs.org
| | <!-- |
| :* [https://en.wikipedia.org/w/index.php?title=Special:UserLogin&type=signup CLICK HERE to create a Wikipedia account]
| | * plotting Burke-Gilman bike traffic on rainy days |
| :* [https://paws-public.wmflabs.org/paws-public/User:Jtmorgan/DS4UX%20Jupyter%20intro.ipynb Jupyter intro notebook]
| | --> |
| :* [http://jtmorgan.net/ds4ux/week8/notebooks.zip Click here to download today's notebooks] ''(I'm not 100% sure this will work)''
| | |
| *Some new concepts: <code>try/except, sleep(), dateutil.parser, datetime.datetime</code>
| |
| :* [https://paws-public.wmflabs.org/paws-public/User:Jtmorgan/Week%208%20new%20concepts.ipynb Week 8 new concepts notebook]
| |
| *Functions II: walk through examples in Jupyter and terminal | |
| :* [https://paws-public.wmflabs.org/paws-public/user/Jtmorgan/notebooks/Parsing%20permit%20data%20demo.ipynb Building permit notebook]
| |
| :* [http://jtmorgan.net/ds4ux/week8/lecture.zip Click here to download the wiki shows demo code]
| |
| :* [https://paws-public.wmflabs.org/paws-public/user/Jtmorgan/notebooks/Wiki%20shows.ipynb Wiki-shows notebook]
| |
| ;Coding challenges | | ;Coding challenges |
| *No coding challenges this week! | | *[[DS4UX_(Spring_2016)/Day_8_coding_challenge|Day 8 coding challenges]] |
|
| |
|
| ;Resources | | ;Resources |
| *''Data Science from Scratch'', Joel Grus (O'Reilly) | | *''go here'' |
| <br/>
| | |
| <br/>
| |
|
| |
|
| === Week 9: May 23 === | | === Week 9: May 23 === |
Line 187: |
Line 157: |
|
| |
|
| ;Agenda | | ;Agenda |
| * We will review the requirements for the Final Presentation and Final Project assignments | | * [[DS4UX_(Spring_2016)/Day_9_lecture|Day 9 lecture]] - research study design |
| * We will review the course as a whole, and what we accomplished | | * review of key concepts and tools from this course |
| * We will go through 1-2 more examples of how to organize a program into functions | | * presentation workshop |
| * We will have an opportunity to review key Python concepts as a class | | <!-- |
| * We will have plenty of time to ask questions about and work on final projects
| | * Replicate Teahouse invite A/B test |
| | --> |
|
| |
|
| ;Resources | | ;Resources |
| * [http://effbot.org/pyfaq/tutor-what-is-if-name-main-for.htm What is 'if __name__ == "__main__"' for?] (''effbot.org'') | | * ''go here'' |
| * [https://www.quora.com/What-is-use-of-main-method-in-Python-Can-someone-explain-with-example What is use of main method in Python? Can someone explain with example?] (''Quora.com'')
| |
| | |
| ;Free (mostly) Python 3 tutorials and reference works
| |
| * ''[http://www.diveintopython3.net/ Dive into Python3]''
| |
| * ''[http://learnpythonthehardway.org/book/ Learn Python the Hard Way]''
| |
| * ''[http://www.python-course.eu/python3_course.php Python-Course.EU]''
| |
| * ''[http://thepythonguru.com/ The Python Guru - Beginner's tutorial]''
| |
| * ''[https://www.gitbook.com/book/krother/python-3-basics-tutorial/details GitBook Python 3 Basics Tutorial]''
| |
| * ''[https://en.wikibooks.org/wiki/Non-Programmer%27s_Tutorial_for_Python_3 WikiBooks Non-programmer's Python 3 tutorial]''
| |
| * ''[http://docs.python-guide.org/en/latest/intro/learning/ The Hitchhiker's Guide to Python]'' (links to many different tutorials!)
| |
| * ''[https://www.dataquest.io/track/data-analyst-track DataQuest Data Analyst interactive course series]''
| |
| * ''[http://shop.oreilly.com/product/0636920023784.do Python for Data Analysis]'' (O'Reilly media book)
| |
|
| |
|
| <br/>
| |
| <br/>
| |
|
| |
|
| === Week 10: June 3 (DATE CHANGE) === | | === Week 10: June 3 (DATE CHANGE) === |
| ''Please note that this class we will meet from 6pm to 9pm on Friday evening, rather than Monday evening, because of the Memorial Day holiday.'' | | ''Please note that this class we will meet Friday evening, rather than Monday evening, because of the Memorial Day holiday.'' |
| | |
| ;Assignments due | | ;Assignments due |
| * [[DS4UX_(Spring_2016)#Final_Project_Presentation|Final project presentation]] | | * [[DS4UX_(Spring_2016)#Final_Project_Presentation|Final project presentation]] |
|
| |
|
| ;Agenda | | ;Agenda |
| | * [[DS4UX_(Spring_2016)/Day_10_lecture|Day 10 lecture]] - Final project report review, next steps for Data Science |
| * Final project presentations | | * Final project presentations |
|
| |
| ;Resources
| |
| * ''one''
| |
| <br/>
| |
| <br/>
| |
|
| |
|
| === Week 11: June 6 === | | === Week 11: June 6 === |
| FINALS WEEK - NO CLASS | | FINALS WEEK - NO CLASS |
|
| |
| ;Assignments due | | ;Assignments due |
| *[[DS4UX_(Spring_2016)#Final_Project_Report|Final project report and code]] due '''by midnight on Wednesday, 6/8/2016''' | | *[[DS4UX_(Spring_2016)#Final_Project_Report|Final project report and code]] due '''by midnight on Wednesday, 6/8/2016''' |
| <br/>
| | |
| <br/>
| |
|
| |
|
|
| |
|
| [[Category:DS4UX (Spring 2016)]] | | [[Category:DS4UX (Spring 2016)]] |