Editing Community Data Science Course (Spring 2019)
From CommunityData
Warning: You are not logged in. Your IP address will be publicly visible if you make any edits. If you log in or create an account, your edits will be attributed to your username, along with other benefits.
The edit can be undone. Please check the comparison below to verify that this is what you want to do, and then publish the changes below to finish undoing the edit.
Latest revision | Your text | ||
Line 1: | Line 1: | ||
:'''Community Data Science: Programming and Data Science for | :'''Community Data Science: Programming and Data Science for Social Media''' | ||
:''' | :'''COM597I''' - Department of Communication | ||
:'''Instructor:''' [http://guyrt.github.com Richard Thomas (Tommy) Guy] | :'''Instructor:''' [http://guyrt.github.com Richard Thomas (Tommy) Guy] | ||
:'''Course Website''': We will use Canvas for assignments and, and [https://canvas.uw.edu/courses/1272567/discussion_topics discussion]. Everything else will be linked on this page. | :'''Course Website''': We will use Canvas for assignments and, and [https://canvas.uw.edu/courses/1272567/discussion_topics discussion]. Everything else will be linked on this page. | ||
:'''Course Catalog Description:''' | :'''Course Catalog Description:''' | ||
This course will introduce basic programming and data science tools to give students the skills to use data to | This course will introduce basic programming and data science tools to give students the skills to use data to answer questions about social media and online communities. The class will cover the basics of the Python programming language, acquiring and processing public data, and basic tools and techniques for data analysis and visualization. We will focus on gaining access to data and basic data manipulation rather than complex statistical methods. The class will be built around student-designed independent projects and is targeted at students with no previous programming experience. | ||
== Overview and Learning Objectives == | == Overview and Learning Objectives == | ||
<div style="float:right;">__TOC__</div> | <div style="float:right;">__TOC__</div> | ||
In a world that is increasingly driven by software and data, developing a basic level of fluency with programming and the basic tools of data analysis is a crucial skill. This course will introduce basic programming and data science tools to give students the skills to | In a world that is increasingly driven by software and data, developing a basic level of fluency with programming and the basic tools of data analysis is a crucial skill. This course will introduce basic programming and data science tools to give students the skills to use data to answer questions about social media and online communities. | ||
In particular, the class will cover the basics of the Python programming language, an introduction to web APIs, and will teach basic tools and techniques for data analysis and visualization. In order to efficiently cover an end to end data analysis project, we will focus on publicly available data sets from the United States Government and the City of Seattle. Our goal is to enable you to gather and analyze data from any available source, but there are often subtle differences between data providers, and I would prefer that we see the full process once than get bogged down in data collection. Time will also be reserved to cover data access for popular social media platforms including Twitter. | In particular, the class will cover the basics of the Python programming language, an introduction to web APIs, and will teach basic tools and techniques for data analysis and visualization. In order to efficiently cover an end to end data analysis project, we will focus on publicly available data sets from the United States Government and the City of Seattle. Our goal is to enable you to gather and analyze data from any available source, but there are often subtle differences between data providers, and I would prefer that we see the full process once than get bogged down in data collection. Time will also be reserved to cover data access for popular social media platforms including Twitter. | ||
Line 17: | Line 16: | ||
As part of the class, participants will learn to write software in Python to collect data from web APIs and process that data to produce numbers, hypothesis tests, tables, and graphical visualizations that answer real questions. The class will be built around student-designed independent projects. Every student will pick a question or issue they are interested in pursuing in the first week and will work with the instructor to build from that question toward a completed analysis of data that the student has collected using software they have written. | As part of the class, participants will learn to write software in Python to collect data from web APIs and process that data to produce numbers, hypothesis tests, tables, and graphical visualizations that answer real questions. The class will be built around student-designed independent projects. Every student will pick a question or issue they are interested in pursuing in the first week and will work with the instructor to build from that question toward a completed analysis of data that the student has collected using software they have written. | ||
This is not a computer science class and I am not going to be training you to become professional programmers. This introduction to programming is intentionally quick and dirty and is focused on what you need to get things done. We will focus on effectively answering questions | This is not a computer science class and I am not going to be training you to become professional programmers. This introduction to programming is intentionally quick and dirty and is focused on what you need to get things done. We will focus on effectively answering questions about social media by writing your own software and by managing and communicating more effectively with programmers. | ||
Line 48: | Line 47: | ||
* I expect you to come to class every day ''with your own laptop''. Windows, Mac OS and Linux are all fine but an iPad or Android tablet is not going to cut it. We're going to install software during the class and you'll be working on projects for homework so please bring the same laptop each time. If for some reason your laptop dies mid-course, please contact me so we can get your new one up to speed. | * I expect you to come to class every day ''with your own laptop''. Windows, Mac OS and Linux are all fine but an iPad or Android tablet is not going to cut it. We're going to install software during the class and you'll be working on projects for homework so please bring the same laptop each time. If for some reason your laptop dies mid-course, please contact me so we can get your new one up to speed. | ||
* I can be reached at the following: richardtguy84@gmail.com or guyrt@uw.edu (it all flows to the same place). Email is generally the easiest way to reach out, but Google Hangouts at richardtguy84 will also work. Like many of you, I work 9-5 but I commit to responding to any email within 24 hours of receipt and generally faster than that. | * I can be reached at the following: richardtguy84@gmail.com or guyrt@uw.edu (it all flows to the same place). Email is generally the easiest way to reach out, but Google Hangouts at richardtguy84 will also work. Like many of you, I work 9-5 but I commit to responding to any email within 24 hours of receipt and generally faster than that. | ||
Line 60: | Line 58: | ||
In this assignment, you should identify an area of interest, at least 2 sources with relevant data, and at least 3-4 questions that you plan to explore | In this assignment, you should identify an area of interest, at least 2 sources with relevant data, and at least 3-4 questions that you plan to explore. I am hoping that each of you will pick an area that you are intellectually committed to and invested in (e.g., in your business or personal life). You will be successful if you describe the scope of the problem and explain why you think the data sources you've identified are relevant. | ||
Line 67: | Line 65: | ||
=== Final Project Proposal === | === Final Project Proposal === | ||
:'''Maximum Length:''' 1500 words (~5 pages) | :'''Maximum Length:''' 1500 words (~5 pages) | ||
:'''Due Date:''' Week | :'''Due Date:''' Week 7 | ||
This proposal should focus on two questions: | This proposal should focus on two questions: | ||
Line 107: | Line 105: | ||
Finally, you should also share with me the full Python source code you used to collect the data as well as the data set itself. Your code along will not form a large portion of your final grade. Rather, I will focus on the degree to which you have been successful at answering the ''substantive'' questions you have identified. | Finally, you should also share with me the full Python source code you used to collect the data as well as the data set itself. Your code along will not form a large portion of your final grade. Rather, I will focus on the degree to which you have been successful at answering the ''substantive'' questions you have identified. | ||
At least 25% of your grade for this project will be determined by the visualizations and tables in your report. Good visualizations should "stand alone" and motivate the core results in your paper all by themselves. A good question to keep in mind is "could I tell this story with the visualizations and a tweet?" | |||
==== Presentation ==== | ==== Presentation ==== | ||
Line 133: | Line 131: | ||
Please do not share answers to challenges before midnight on Sunday so that everybody has a chance to work through answers on their own. After midnight on Sunday, you are all welcome and encouraged to share your solutions and/or to discuss different approaches. We will discuss the coding challenges for a short period of time at the beginning of each class. | Please do not share answers to challenges before midnight on Sunday so that everybody has a chance to work through answers on their own. After midnight on Sunday, you are all welcome and encouraged to share your solutions and/or to discuss different approaches. We will discuss the coding challenges for a short period of time at the beginning of each class. | ||
== Schedule == | == Schedule == | ||
Line 149: | Line 136: | ||
'''This section will be updated weekly''' This section will be modified throughout the course to introduce the week's material and any hand-ins. Check back in weekly. | '''This section will be updated weekly''' This section will be modified throughout the course to introduce the week's material and any hand-ins. Check back in weekly. | ||
=== Week 1: | === Week 1: TBD === | ||
'''Readings:''' | '''Readings:''' | ||
Line 157: | Line 144: | ||
* Class overview and expectations — We'll walk through this syllabus. | * Class overview and expectations — We'll walk through this syllabus. | ||
* [[Community_Data_Science_Course/Day_1_Exercise|Day 1 Exercise]] — You'll install software including the Python programming language and run through a series of exercises. | * [[Community_Data_Science_Course/Day_1_Exercise|Day 1 Exercise]] — You'll install software including the Python programming language and run through a series of exercises. | ||
* [[ | * [[Community_Data_Science_Course/Day_1_Tutorial|Day 1 Tutorial]] — You'll work through a self-guided tutorial introducing you to some basic concepts. When you're done, you'll meet with me and I'll check you off. | ||
* A few interesting links we discussed in class are [[Community_Data_Science_Course_% | * A few interesting links we discussed in class are [[Community_Data_Science_Course_%28Spring_2017%29/DataSources|here]] | ||
* Hints | * Hints | ||
** For exercise 5, look at chapter 3 of the textbook. This introduces "if" statements. | ** For exercise 5, look at chapter 3 of the textbook. This introduces "if" statements. | ||
Line 167: | Line 154: | ||
* Have a working python environment on your personal laptop. | * Have a working python environment on your personal laptop. | ||
* Have written your first program in the python language. | * Have written your first program in the python language. | ||
== Administrative Notes == | == Administrative Notes == | ||
Line 303: | Line 159: | ||
=== Attendance === | === Attendance === | ||
Attendance in class is expected of all participants. This class is going to move very quickly and the things we learn will build on the things we've covered the week before. ''It will be extremely difficult to miss classes.'' If you need to miss class for any reason, please contact the instructor ahead of time (email is best). Multiple unexplained absences will likely result in a lower grade or (in extreme circumstances) a failing grade. In the event of an absence, you are responsible for obtaining class notes, handouts, assignments, etc. | |||
=== Office Hours === | === Office Hours === | ||
Because this is an evening degree program and I understand you have busy schedules that keep us away from campus during the day, I will not hold regular office hours. In general, I am very happy to have a skype or hangouts session where we can share our screens and discuss your questions | Because this is an evening degree program and I understand you have busy schedules that keep us away from campus during the day, I will not hold regular office hours. In general, I am very happy to have a skype or hangouts session where we can share our screens and discuss your questions. Please contact me on email to arrange a meeting. | ||
=== Disability Accommodations Statement === | === Disability Accommodations Statement === | ||
To request academic accommodations due to a disability please contact Disability Resources for Students, 448 Schmitz, 206-543-8924/V, 206-5430-8925/TTY. If you have a letter from Disability Resources for Students indicating that you have a disability that requires academic accommodations, please present the letter to me so we can discuss the accommodations that you might need for the class. I am happy to work with you to maximize your learning experience. | |||
=== Comm Lead Electronic Mail Standards of Conduct === | === Comm Lead Electronic Mail Standards of Conduct === | ||
Line 355: | Line 200: | ||
=== Academic Misconduct === | === Academic Misconduct === | ||
Comm Lead is committed to upholding the academic standards of the University of Washington’s Student Conduct Code. | Comm Lead is committed to upholding the academic standards of the University of Washington’s Student Conduct Code. If I suspect a student violation of that code, I will first engage in a conversation with that student about my concerns. | ||
If we cannot successfully resolve a suspected case of academic misconduct through our conversations, I will refer the situation to the Anita Crofts, Comm Lead Associate Director of Academic Affairs. The Comm Lead Associate Director of Academic Affairs, in consultation with the Comm Lead Director, can then work with the COM Chair to seek further input and if necessary, move the case up to the Dean. | |||
While evidence of academic misconduct may result in a lower grade, Comm Lead faculty (indeed, all UW faculty) may '''not''' unilaterally lower a grade without taking the necessary steps outlined above. | |||
In closing, Comm Lead students are expected to: | In closing, Comm Lead students are expected to: |