Community Data Science Workshops (Winter 2020): Difference between revisions

From CommunityData
No edit summary
 
(23 intermediate revisions by 7 users not shown)
Line 36: Line 36:
== Registration ==
== Registration ==


'''''Participants!''''' Unfortunately, the registration period is over. Sorry about that! This is our fifth set of workshops and we do hope to run more of these again in the future.  You can find out about future workshops by signing up for [https://communitydata.science/mailman3/postorius/lists/cdsw-announce.communitydata.science/ our announcement mailing list].
'''''Participants!''''' Unfortunately, the registration period is over. Sorry about that! This is our sixth set of workshops and we do hope to run more of these again in the future.  You can find out about future workshops by signing up for [https://communitydata.science/mailman3/postorius/lists/cdsw-announce.communitydata.science/ our announcement mailing list].


'''''Interested in being a mentor?''''' If you already have experience with Python, please consider helping out at the sessions as a mentor. Being a mentor will involve working with participants and talking them through the challenges they encounter in programming. No special preparation is required. And we'll feed you!  Because we want to keep a very high mentor-to-student ratio, recruiting more mentors means we can accept more participants. If you're interested you can [https://forms.gle/6ZxxH77z2m18mhgo6 fill out this form] or email makohill@uw.edu. Also, thank you, thank you, thank you!
'''''Interested in being a mentor?''''' If you already have experience with Python, please consider helping out at the sessions as a mentor. Being a mentor will involve working with participants and talking them through the challenges they encounter in programming. No special preparation is required. And we'll feed you!  Because we want to keep a very high mentor-to-student ratio, recruiting more mentors means we can accept more participants. If you're interested you can [https://forms.gle/6ZxxH77z2m18mhgo6 fill out this form] or email makohill@uw.edu. Also, thank you, thank you, thank you! Here are some [[mentoring]] tips for being successful!


== Schedule ==
== Schedule ==
Line 55: Line 55:


:: set up your development environment
:: set up your development environment
:: learn how to write and execute Python code a Jupyter Notebook
:: learn how to write and execute Python code in a Jupyter Notebook
:: learn about printing and using Python as a calculator
:: learn about printing and using Python as a calculator


Line 65: Line 65:


Come to '''[http://uw.edu/maps/?sav Savery Hall (SAV) 260] by 9:45am'''.
Come to '''[http://uw.edu/maps/?sav Savery Hall (SAV) 260] by 9:45am'''.
Plan to be on UW campus by 9:45am (location TBD). You will need time to get settled and setup. We will start lecturing promptly at 10am. There will be coffee!
Plan to be on UW campus by 9:45am. You will need time to get settled and setup. We will start lecturing promptly at 10am. There will be coffee!


: '''Time:''' 9:45am-4pm
: '''Time:''' 9:45am-4pm
Line 72: Line 72:
: '''Schedule'''
: '''Schedule'''
:: '''Morning, 10am-12:20 (SAV 260)''': [[CDSW/Day_1_lecture|A 2.5 hour lecture-based introduction to the Python programming language]]
:: '''Morning, 10am-12:20 (SAV 260)''': [[CDSW/Day_1_lecture|A 2.5 hour lecture-based introduction to the Python programming language]]
:: '''Lunch, 12:20-1pm (Savery Hall)''': We'll provide lunch (pizza!)
:: '''Lunch, 12:20-1pm (Savery Hall in the downstairs hallway)''': We'll provide lunch (pizza!)
:: '''Afternoon, 1pm-3:30pm (SAV 138, 139, 155, 156):''' Python practice through short projects (see below) on a variety of fun and practical topics:
:: '''Afternoon, 1pm-3:30pm (SAV 130, 137, 138, 156):''' Python practice through short projects (see below) on a variety of fun and practical topics:
::* [[Baby_Names | Baby Names]]
::* [[Baby_Names | Baby Names]]
::* [[Learning Python | Learning Python]]
::* [[Learnpython.org exercises]]
:: '''Wrap-up, 3:30pm-4pm (SAV 260):''' Wrap-up, next steps, and upcoming opportunities for learning and practicing Python
:: '''Wrap-up, 3:30pm-4pm (SAV 260):''' Wrap-up, next steps, and upcoming opportunities for learning and practicing Python


: '''Objectives''': Programming is an essential tool for data science and is useful for solving many other problems. The goal of this session will be to introduce programming in the [http://www.python.org/ Python programming language]. Each participant will leave having solved a real problem and will have built their first real programming project.
: '''Objectives''': Programming is an essential tool for data science and is useful for solving many other problems. The goal of this session will be to introduce programming in the [http://www.python.org/ Python programming language]. Each participant will leave having solved a real problem and will have built their first real programming project.


<!--
=== Session 2: Importing Data from web APIs (February 1) ===
=== Session 2: Importing Data from web APIs (April 23) ===
Come to '''[http://uw.edu/maps/?sav Savery Hall (SAV) 260] by 9:45am'''. You will need time to get settled and setup. We will start lecturing promptly at 10am. There will be coffee!
Come to '''[http://uw.edu/maps/?sav Savery Hall (SAV) 260] by 9:45am'''. You will need time to get settled and setup. We will start lecturing promptly at 10am. There will be coffee!


Line 90: Line 89:
: '''Schedule''':
: '''Schedule''':
:: '''Morning: 10am-12:20 (SAV 260)''': [[CDSW/Day_2_Lecture|A 2.5 hour lecture-based introduction to the web programming and APIs]]
:: '''Morning: 10am-12:20 (SAV 260)''': [[CDSW/Day_2_Lecture|A 2.5 hour lecture-based introduction to the web programming and APIs]]
:: '''Lunch: 12:20-1pm (Savery Hall downstairs hallway)''': We'll provide lunch (vegetarian Indian!)
:: '''Lunch: 12:20-1pm (Savery Hall downstairs hallway)''': We'll provide lunch (TBD)
:: '''Afternoon: 1pm-3:30pm (SAV 138, 139, 155, 156)''': Web API practice through short projects (see below) on a variety of fun and practical topics:
:: '''Afternoon: 1pm-3:30pm (SAV 130, 137, 138, 156)''': Web API practice through short projects (see below) on a variety of fun and practical topics:
::* [[Community_Data_Science_Workshops_(Spring_2016)/Day_2_Projects/Twitter|Twitter]]
::* [[Twitter (CDSW)|Twitter]]
::* [[Wikipedia (CDSW)|Wikipedia]]
::* [[Wikipedia (CDSW)|Wikipedia]]
::* [[Yelp (CDSW)|Yelp]]
::* [[Yelp (CDSW)|Yelp]] - Get a [[Yelp API Key]] ahead of time so you're ready to go.
:: '''Wrap-up: 3:30pm-4pm (SAV 260)''': Wrap-up, next steps, and upcoming opportunities for learning and practicing Python
:: '''Wrap-up: 3:30pm-4pm''': Wrap-up, next steps, and upcoming opportunities for learning and practicing Python


: '''Objectives''': An important step in doing data science is collecting data. The goal of this session will be to teach participants how to get data from the [https://en.wikipedia.org/wiki/Application_programming_interface public application programming interfaces] ("APIs") common to many social media and online communities. Although we will use the APIs provided by Wikipedia, Twitter, and Socrata in the session, the principles and techniques are common to many other online communities.
: '''Objectives''': An important step in doing data science is collecting data. The goal of this session will be to teach participants how to get data from the [https://en.wikipedia.org/wiki/Application_programming_interface public application programming interfaces] ("APIs") common to many social media and online communities. Although we will use the APIs provided by Wikipedia, Twitter, and Socrata in the session, the principles and techniques are common to many other online communities.
Line 103: Line 102:
'''Important Note:''' If you plan to attend the Twitter afternoon session, you need to complete the [[Twitter authentication setup]] ''before'' the afternoon setup on Saturday. If you plan to complete the Yelp session, you need to complete the [[Yelp authentication setup]] instructions. There's no promise that we will be running these sessions this weekend unless there is demand but you will need to have done these if you want to attend the session.
'''Important Note:''' If you plan to attend the Twitter afternoon session, you need to complete the [[Twitter authentication setup]] ''before'' the afternoon setup on Saturday. If you plan to complete the Yelp session, you need to complete the [[Yelp authentication setup]] instructions. There's no promise that we will be running these sessions this weekend unless there is demand but you will need to have done these if you want to attend the session.


=== Session 3: Data Analysis and Visualization (May 7) ===
=== Session 3: Data Analysis and Visualization (February 15) ===
Come to '''[http://uw.edu/maps/?sav Savery Hall (SAV) 260] by 9:45am'''. You will need time to get settled and setup. We will start lecturing promptly at 10am. There will be coffee!
Come to '''[http://uw.edu/maps/?sav Savery Hall (SAV) 260] by 9:45am'''. You will need time to get settled and setup. We will start lecturing promptly at 10am. There will be coffee!


Line 113: Line 112:


:: '''Morning, 10am-12:20 (SAV 260):''' [[CDSW/Day_3_Lecture|2.5 hour interactive lecture]]
:: '''Morning, 10am-12:20 (SAV 260):''' [[CDSW/Day_3_Lecture|2.5 hour interactive lecture]]
:: '''Lunch, 12:20-1pm (TBD):''' We'll provide lunch (TBD)
:: '''Lunch, 12:20-1pm (TBD):''' We'll provide lunch ([[:wikipedia:Bahn mi|Bahm mi]] from Saigon Deli)
:: '''Afternoon, 1pm-3:30pm (TBD): '''Web API practice through independent projects
:: '''Afternoon, 1pm-3:30pm (SAV 130, 137, 138, 156): '''Web API practice through independent projects
::* [[Harry Potter on Wikipedia|Visualization and analysis using Spreadsheets]]
::* [[Seattle_open_data|Visualization and analysis of civic data from data.seattle.gov]]
::* [[Matplotlib|Visualization using Python and Matplotlib]]
::* [[CDSW/Review_Wk1_Wk2 | Review of Week 1 and Week 2]]
::* [[Community_Data_Science_Workshops_(Spring_2016)/Day_3_Projects/Twitter|Analyzing data from Twitter]]
::* [[Community_Data_Science_Workshops_(Spring_2016)/Day_3_Projects|Visualization and analysis of civic data from data.seattle.gov]]
::* Independent projects working on issues of ''your'' choosing!
::* Independent projects working on issues of ''your'' choosing!
:: '''Wrap-up, 3:30-4pm (SAV 260)
:: '''Wrap-up, 3:30-4pm


: '''Objectives''': The goal of data science is to use data to answer questions. In our final session, we will use the Python skills we learned in the first session and the datasets we've created in the second to ask and answer common questions about the activity and health of online communities. We will focus on learning how to generate visualizations, create summary statistics, and test hypotheses.
: '''Objectives''': The goal of data science is to use data to answer questions. In our final session, we will use the Python skills we learned in the first session and the datasets we've created in the second to ask and answer common questions about online and offline communities. We will focus on learning how to generate visualizations, create summary statistics, and test hypotheses.


== Venue and Logistics ==
== Venue and Logistics ==
Line 141: Line 138:


'''[http://www.soundtransit.org/Rider-Guide/University-of-Washington-Station The UW Station] on Link is now open''' and Savery Hall is an easy walk on campus from the station. UW is also well served by buses and easily accessible by bicycle with the [https://en.wikipedia.org/wiki/Burke_Gilman_Trail Burke Gilman Trail]. Parking at UW is available but is not free. There is [https://www.washington.edu/facilities/transportation/commuterservices/parking/selfserve self-serve parking] as well as gatehouses that are staffed from 7am on Saturday and can issue you parking passes and point you to an appropriate lot. More details are on the [https://www.washington.edu/facilities/transportation/commuterservices/parking/daily UW Commuter Services website for Visitors and Guests].
'''[http://www.soundtransit.org/Rider-Guide/University-of-Washington-Station The UW Station] on Link is now open''' and Savery Hall is an easy walk on campus from the station. UW is also well served by buses and easily accessible by bicycle with the [https://en.wikipedia.org/wiki/Burke_Gilman_Trail Burke Gilman Trail]. Parking at UW is available but is not free. There is [https://www.washington.edu/facilities/transportation/commuterservices/parking/selfserve self-serve parking] as well as gatehouses that are staffed from 7am on Saturday and can issue you parking passes and point you to an appropriate lot. More details are on the [https://www.washington.edu/facilities/transportation/commuterservices/parking/daily UW Commuter Services website for Visitors and Guests].
-->


=== Food ===
=== Food ===
Line 159: Line 154:
== About the Organizers ==
== About the Organizers ==


The workshops are being coordinated, organized by [http://mako.cc/academic/ Benjamin Mako Hill], [http://jtmorgan.net/ Jonathan Morgan], Dharma Dailey, Mika Matsuzaki, [https://guyrt.github.io/ Tommy Guy], Ben Lewis, Emilia Gan, and a long list of other volunteer mentors. The workshops have been designed with lots of help and inspiration from Shauna Gordon-McKeon and Asheesh Laroia of OpenHatch and lots of inspiration from the [http://bostonpythonworkshop.com/ Boston Python Workshop].
The workshops are being coordinated, organized by [http://mako.cc/academic/ Benjamin Mako Hill], [http://jtmorgan.net/ Jonathan Morgan],[http://dharmadailey.info/ Dharma Dailey], Mika Matsuzaki, [https://guyrt.github.io/ Tommy Guy], Ben Lewis, Emilia Gan, and a long list of other volunteer mentors. The workshops have been designed with lots of help and inspiration from Shauna Gordon-McKeon and Asheesh Laroia of OpenHatch and lots of inspiration from the [http://bostonpythonworkshop.com/ Boston Python Workshop].


These workshops are an all-volunteer effort. Fundamentally, we're doing this because we're programmers and data scientists who work in online communities and we really believe that the skills you'll learn in these sessions are important and empowering tools.
These workshops are an all-volunteer effort. Fundamentally, we're doing this because we're programmers and data scientists who work in online communities and we really believe that the skills you'll learn in these sessions are important and empowering tools.

Latest revision as of 17:38, 15 February 2020

More photos from past workshops.

The Community Data Science Workshops in Winter 2020 are a series of project-based workshops being held at the University of Washington for anyone interested in learning how to use programming and data science tools to ask and answer questions about online communities like Wikipedia, Twitter, free and open source software, and civic media.

The Winter 2020 workshop series will take place over three Saturdays (plus a short Friday night setup session):

  • Friday, January 17th (6-9pm)
  • Saturday, January 18th (9:45-4pm)
  • Saturday, February 1st (9:45-4pm)
  • Saturday, February 15th (9:45-4pm)

These workshops are for people with absolutely no previous programming experience and they bring together researchers and academics with participants and leaders in online communities. The workshops are run entirely by volunteers and are entirely free of charge for participants, generously sponsored by the UW Department of Communication and the eScience Institute. Participants from outside UW are encouraged to apply.

Our goal is that, after the three workshops, participants will be able to use data to produce numbers, hypothesis tests, tables, and graphical visualizations to answer questions like:

  • Are new contributors in Wikipedia this year sticking around longer or contributing more than people who joined last year?
  • Who are the most active or influential users of a particular Twitter hashtag?
  • Are people who join through a Wikipedia outreach event staying involved? How do they compare to people who decide to join the project outside of the event?

We've run these workshops five times in 2014, 2015, and 2016 and the curriculum we used for previous sessions is all online.

Registration[edit]

Participants! Unfortunately, the registration period is over. Sorry about that! This is our sixth set of workshops and we do hope to run more of these again in the future. You can find out about future workshops by signing up for our announcement mailing list.

Interested in being a mentor? If you already have experience with Python, please consider helping out at the sessions as a mentor. Being a mentor will involve working with participants and talking them through the challenges they encounter in programming. No special preparation is required. And we'll feed you! Because we want to keep a very high mentor-to-student ratio, recruiting more mentors means we can accept more participants. If you're interested you can fill out this form or email makohill@uw.edu. Also, thank you, thank you, thank you! Here are some mentoring tips for being successful!

Schedule[edit]

There will be a mandatory evening setup session 6:00-9:00pm on Friday January 17 and three workshops held from 9:45am-4pm on three Saturdays (January 18 and February 1 and 15). Each Saturday session will involve a period for lecture and technical demonstrations in the morning. This will be followed by a lunch graciously provided by the eScience Institute at UW. The rest of the day will be followed by group work on programming and data science projects supported by more experienced mentors.

All sessions are interactive and involve you programming on your own and on your own laptop. Everybody attending should bring a laptop and a power cord so that they don't run out of battery.

Session 0: Setup and Programming Tutorial (Friday January 17 evening)[edit]

Come to the Communications Building (CMU) 104 between 6:00 and 9:00pm. It's OK if you come a little late but you'll want to have as much time as you can to finish the setup and self-directed assignments so come as close to 6:00pm as you can. Most people will finish early but some people will definitely need the full 3 hours. It's hard to know in advance where problems will crop up so please come on time even if you are confident.

Time: 6-9pm
Location: Communications Building (CMU) 104
Objectives: During this session, mentors will help you:
set up your development environment
learn how to write and execute Python code in a Jupyter Notebook
learn about printing and using Python as a calculator
Material: Click here for the the setup and tutorial material.

Note: Because we expect to hit the ground running on our first full day, we will meet to help participants get software installed and to work through a self-guided tutorial that will help ensure that everyone has the skills and vocabulary to start programming and learning when we meet the following morning.

Session 1: Introduction to Programming (January 18)[edit]

Come to Savery Hall (SAV) 260 by 9:45am. Plan to be on UW campus by 9:45am. You will need time to get settled and setup. We will start lecturing promptly at 10am. There will be coffee!

Time: 9:45am-4pm
Location: Savery Hall (SAV)
Schedule
Morning, 10am-12:20 (SAV 260): A 2.5 hour lecture-based introduction to the Python programming language
Lunch, 12:20-1pm (Savery Hall in the downstairs hallway): We'll provide lunch (pizza!)
Afternoon, 1pm-3:30pm (SAV 130, 137, 138, 156): Python practice through short projects (see below) on a variety of fun and practical topics:
Wrap-up, 3:30pm-4pm (SAV 260): Wrap-up, next steps, and upcoming opportunities for learning and practicing Python
Objectives: Programming is an essential tool for data science and is useful for solving many other problems. The goal of this session will be to introduce programming in the Python programming language. Each participant will leave having solved a real problem and will have built their first real programming project.

Session 2: Importing Data from web APIs (February 1)[edit]

Come to Savery Hall (SAV) 260 by 9:45am. You will need time to get settled and setup. We will start lecturing promptly at 10am. There will be coffee!

Time: 9:45am-4pm
Location: Savery Hall (SAV)
Schedule:
Morning: 10am-12:20 (SAV 260): A 2.5 hour lecture-based introduction to the web programming and APIs
Lunch: 12:20-1pm (Savery Hall downstairs hallway): We'll provide lunch (TBD)
Afternoon: 1pm-3:30pm (SAV 130, 137, 138, 156): Web API practice through short projects (see below) on a variety of fun and practical topics:
Wrap-up: 3:30pm-4pm: Wrap-up, next steps, and upcoming opportunities for learning and practicing Python
Objectives: An important step in doing data science is collecting data. The goal of this session will be to teach participants how to get data from the public application programming interfaces ("APIs") common to many social media and online communities. Although we will use the APIs provided by Wikipedia, Twitter, and Socrata in the session, the principles and techniques are common to many other online communities.
An outline for the lecture can be found here and a list of potential projects for the afternoon session are listed below:

Important Note: If you plan to attend the Twitter afternoon session, you need to complete the Twitter authentication setup before the afternoon setup on Saturday. If you plan to complete the Yelp session, you need to complete the Yelp authentication setup instructions. There's no promise that we will be running these sessions this weekend unless there is demand but you will need to have done these if you want to attend the session.

Session 3: Data Analysis and Visualization (February 15)[edit]

Come to Savery Hall (SAV) 260 by 9:45am. You will need time to get settled and setup. We will start lecturing promptly at 10am. There will be coffee!

Time: 9:45am-4pm
Location: Savery Hall (SAV) 260
Schedule:
Morning, 10am-12:20 (SAV 260): 2.5 hour interactive lecture
Lunch, 12:20-1pm (TBD): We'll provide lunch (Bahm mi from Saigon Deli)
Afternoon, 1pm-3:30pm (SAV 130, 137, 138, 156): Web API practice through independent projects
Wrap-up, 3:30-4pm
Objectives: The goal of data science is to use data to answer questions. In our final session, we will use the Python skills we learned in the first session and the datasets we've created in the second to ask and answer common questions about online and offline communities. We will focus on learning how to generate visualizations, create summary statistics, and test hypotheses.

Venue and Logistics[edit]

What to bring[edit]

  1. a laptop
    • for Session 0 make sure that you have about 1GB of space free so you can install Python and all the necessary other software
    • for Sessions 1-3 bring your laptop with Python set up
  2. a power cord
  3. a sense of adventure!

Location[edit]

15 mins from the UW Station to Savery Hall

For the first Friday setup session, please come to the Communications building map. The direction from the UW Link station is here.

For all the Saturday sessions, please meet at Savery Hall 260 (map) on the the three Saturday mornings at 9:45. Unfortunately, most of the doors to Savery Hall are locked on weekends. The door on the west side of the building (i.e., the one nearest Kane Hall) should be open.

The UW Station on Link is now open and Savery Hall is an easy walk on campus from the station. UW is also well served by buses and easily accessible by bicycle with the Burke Gilman Trail. Parking at UW is available but is not free. There is self-serve parking as well as gatehouses that are staffed from 7am on Saturday and can issue you parking passes and point you to an appropriate lot. More details are on the UW Commuter Services website for Visitors and Guests.

Food[edit]

Thanks to generous sponsorship by the eScience Institute at UW, we will provide catered lunches during the Saturday sessions. Although we haven't figured out the menu, the food will all be vegetarian and there will be vegan and gluten free options. If the food we have doesn't doesn't work for you, there is a food court open for lunch in the HUB (the UW student center) that is almost directly next door.

Social Media[edit]


Contact information[edit]

If you have any questions about the events, you can contact makohill@uw.edu.

About the Organizers[edit]

The workshops are being coordinated, organized by Benjamin Mako Hill, Jonathan Morgan,Dharma Dailey, Mika Matsuzaki, Tommy Guy, Ben Lewis, Emilia Gan, and a long list of other volunteer mentors. The workshops have been designed with lots of help and inspiration from Shauna Gordon-McKeon and Asheesh Laroia of OpenHatch and lots of inspiration from the Boston Python Workshop.

These workshops are an all-volunteer effort. Fundamentally, we're doing this because we're programmers and data scientists who work in online communities and we really believe that the skills you'll learn in these sessions are important and empowering tools.


If you have any questions or concerns, please contact Benjamin Mako Hill at makohill@uw.edu.