Community Data Science Workshops (Fall 2015)



The Community Data Science Workshops in Fall 2015 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 Fall 2015 workshop series will take place over three Saturdays (plus a short Friday night setup session):


 * Friday, October 9th (evening)
 * Saturday, October 10th
 * Saturday, October 24th
 * Saturday, November 7th

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?

Several earlier versions of the workshops was run in 2014 and 2015 and the curriculum we used for previous sessions is all online.

Registration
Participants! If you are interested in learning data science, please fill out our registration form here. The deadline to register is Friday October 2. We will let participants know if we have room for them by Monday October 5. Space is limited and will depend on how many mentors we can recruit for the sessions.

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!

Schedule
There will be a mandatory evening setup session 6:00-9:00pm on Friday October 9 and three workshops held from 9:45am-4pm on three Saturdays (October 10 and 24 and November 7). 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 October 9 evening)

 * Time: 6-9pm
 * Location: Communications (CMU) 104
 * 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.

Come to Communications (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:30pm 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.

During this session, mentors will help you:


 * set up your development environment
 * learn how to execute Python code from a file and interactively from a Python prompt
 * learn about printing and using Python as a calculator

Session 1: Introduction to Programming (October 10)
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.


 * Time: 9:45am-4pm
 * Locations:
 * Morning Active Learning Classroom 136 in Odegaard Library (map)
 * Afternoon UW Research Commons in Allen Library (map)

Come to Odegaard Library Room 136 by 9:45am You will need time to get settled and setup. We will start lecturing promptly at 10am. There will be coffee!

Day schedule
 * Morning, 10am-12:20 (Odegaard 136): A 140 minute lecture-based introduction to the Python programming language
 * Lunch, 12:20-1pm (Odegaard Library Room 220): We'll provide pizza from lunch with including vegan and gluten free options
 * Afternoon, 1pm-3:30pm (Research commons): Python practice through short projects 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

Session 2: Importing Data from web APIs (October 24)
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, Socrata, and Yelp in the session, the principles and techniques are common to many other online communities.


 * Time: 9:45am-4pm
 * Location:
 * Morning Active Learning Classroom 136 in Odegaard Library (map)
 * Afternoon UW Research Commons in Allen Library (map)

Come to Odegaard Library Room 136 by 9:45am You will need time to get settled and setup. We will start lecturing promptly at 10am. There will be coffee!

Day schedule
 * Morning, 10am-12:20 (Odegaard 136): A 140 minute lecture-based intoduction to the web programming and APIs
 * Lunch, 12:20-1pm (Odegaard Library Room 220): We'll provide lunch (vegetarian Indian)
 * Afternoon, 1pm-3:30pm (Research commons): Web API practice through short projects 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

Projects
 * Twitter (*)
 * Wikipedia


 * Yelp (*)

(*) Important Note: If you plan to attend the Twitter afternoon session, you need to complete the Twitter authentication setup before the afternoon session on Saturday. If you plan to attend the Yelp afternoon session, you need to complete the Yelp authentication setup before the session.

Session 3: Data Analysis and Visualization (November 7)

 * Time: 9:45am-4pm
 * Location:
 * Morning Active Learning Classroom 136 in Odegaard Library (map)
 * Afternoon UW Research Commons in Allen Library (map)

Come to Odegaard Library Room 136 by 9:45am You will need time to get settled and setup. We will start lecturing promptly at 10am. There will be coffee!

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.

Activities
 * Morning: A 2 hour interactive lecture
 * Afternoon: independent projects using data from...
 * Plotting Harry Potter data in python
 * Twitter
 * Analyzing civic data from data.seattle.gov
 * Data visualization in Python with Matplotlib

<!--

Resources
The following materials are currently being updated by the mentors:


 * Friday April 10th setup and tutorial
 * Saturday April 11th lecture
 * Saturday April 11th projects
 * Introduction to Python CodeAcademy exercises
 * Twitter authentication setup
 * Saturday April 25th lecture
 * Saturday April 25th projects
 * Introduction to APIs in Python CodeAcademy exercises - Includes information on using APIs from NPR, Bitly, Sunlight Foundation, and PlaceKitten
 * Saturday May 9th lecture
 * Saturday May 9th projects

Contact information
If you have any questions about the events, you can contact [mailto:makohill@uw.edu makohill@uw.edu].

Location
The University of Washington Department of Communication is hosting the event and all of our events except the Saturday morning lectures will be held in the Communications building (CMU) on the Seattle UW campus. This includes the Friday setup and the and all of the afternoon projects. You can find the building on this Google map or on this campus map from UW.

Because we have grown so big, we have had to move the lectures into a larger lecture hall than the CMU building has available. Please meet at Savery Hall 260 (map) on the three Saturday mornings at 9:45. It is about a five minute walk from the Communications building. 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.

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. UW is also well served by public transportation and easily accessible by bicycle with the Burke Giilman Trail.

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

Food
Thanks to generous sponsorship by the eScience Institute at UW, we will provide catered lunchs 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 on campus and nearby.

Social Media

 * We use the hashtag #cdsw

About the Organizers
The workshops are being coordinated, organized by Benjamin Mako Hill, Jonathan Morgan, Tommy Guy, Ben Lewis, Dharma Dailey, 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.

The workshops are being supported by the UW Department of Communication and the eScience Institute.

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