Not logged in
Talk
Contributions
Create account
Log in
Navigation
Main page
About
People
Publications
Teaching
Resources
Research Blog
Wiki Functions
Recent changes
Help
Licensing
Page
Discussion
Edit
View history
Editing
Community Data Science Workshops (Spring 2014)/Reflections
(section)
From CommunityData
Jump to:
navigation
,
search
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.
Anti-spam check. Do
not
fill this in!
== Structure == The [[Community Data Science Workshops (Spring 2014)]] consisted of [[Community Data Science Workshops (Spring 2014)#Schedule|four sessions]]: * '''Session 0 (Friday April 4th)''': [[Community Data Science Workshops (Spring 2014)#Session 0 (Friday April 4th Evening 6-9pm)|Setup and Programming Practice]] * '''Session 1 (Saturday April 5th)''': [[Community Data Science Workshops (Spring 2014)#Session 1 (Saturday April 5th)|Introduction to Python]] * '''Session 2 (Saturday May 3rd)''': [[Community Data Science Workshops (Spring 2014)#Session 2 (Saturday May 3rd)|Building data sets using web APIs]] * '''Session 3 (Saturday May 31st)''': [[Community Data Science Workshops (Spring 2014)# Session 3 (Saturday May 31st)|Data analysis and visualization]] Our organization and the curriculum for Sessions 0 and 1 were borrowed from the [http://bostonpythonworkshop.com/ Boston Python Workshop] (BPW): Session 0 was a three hour evening session to install software. The other sessions were all day-long session (10am to 4pm) sessions broken up into the following schedule: * '''Morning, 10am-noon''': A 2 hour lecture * '''Lunch, noon-1pm''' * '''Afternoon, 1pm-3:30pm''': Practice working on projects in 3 breakout sessions * '''Wrap-up, 3:30pm-4pm''': Wrap-up, next steps, and upcoming opportunities We had 12 mentors volunteer initially although more joined as the event progressed. We had about 150 participants apply to attend the sessions. We selected on programming skill (to ensure that all attendees were complete beginners), enthusiasm, and randomly to maintain a learner to mentor ratio of between 4 and 5. We admitted just over 50 participants. Our feeling was that nearly every student who came to the first week (Sessions 0 and 1) came to Session 2. Retention between the second two sessions was much worse with perhaps only 60% of the full group returning for Session 3. We attribute this rentention to poor timing (the weekend before finals at UW which affected many students) and to the long space between the sessions. We collected detailed feedback from users at three points using the following Google forms (these are copies): * [https://docs.google.com/forms/d/1gPmgZvOxfE0KVRkb_ySgTqNvCaa4Rl8PYUY9u-NVwTE/viewform Application to the workshop] * [https://docs.google.com/forms/d/1FGASnZLA3V13JTuJg5LF0fVvrUX9quKYc95yeEATzHY/viewform After Session 1] * [https://docs.google.com/forms/d/1UhEU3aWKSuLpfBgR8CZcW8JrdgNRDj6FuT8yAqFCFmE/viewform After Session 2] We used this feedback to both evaluate what worked well and what did not and to get a sense of what students wanted to learn in the next session and which afternoon sessions they might find interesting. We did not collect feedback after the final session but we should have. === Morning Lectures === [[Benjamin Mako Hill]] gave all three of the two-hour morning lectures. All of the lectures involved the teacher working through material in the interactive Python interpreter shown on a projector with students following along in a Python interpretor on their own computers. In general, the lectures were rated well received by students. Concern with the lectures include feedback that: * Two hours of straight lecture of difficult material was long and difficult to sit through. * If students became lost, it could be very hard to catch up given how the interactive Python session tended to build on earlier steps and assume the presense of variables or particular states. * There were often more mentors than really needed in the morning sessions meaning that many mentors were often idle. * As the lectures progressed and the work and tasks became more complex, working in the interactive interpreter become increasingly difficult β particularly for long for loops or deeply nested blocks of codes. To address these concerns, we are planning the following changes to how we run these sessions in the future: * Breaking up the lecture into at least two parts. Between those parts, we will try include a small (~10-15 minute long) exercise. This will both break things up, allow mentors to be of more help during the sssions, and give students who fell behind a chance to catch up. It will also allow students to grab coffee or use the bathroom if they need to. * Record the lectures so that students can catch up after the sessions. We did not do this but should have. * Arrange for some mentors to arrive after noon if they would prefer. * Upload not only the outline, but examples of all of the code we'll use as part of the lectures. * Switch into writing code in separate files and running those files much earlier β perhaps as soon as we hit more than 2-3 lines in a <code>for</code> loop in Session 1. === Projects === In the afternoons, we broke into small groups to work on "projects". In each afternoon we tried to have three afternoon project tracks: Two projects on different substantive topics for learners with different interests and a third project that was much more self-directed. In Sessions 1 and 2, the self-directed projects were based on working through examples from [http://www.codecademy.com/ Code Academy] that we had put from material already online on the website. In the self-directed track, students could work at their own pace with mentors on hand to work with them when they became stuck. In Session 3, we did not use Code Academy but instead devoted the self-directed room to students working with mentors on data science projects of their choice. Because of issues with the student to mentor ratio, we asked that students only participate in the self-directed track if they felt confident they could be self-sufficient working on their own 70-80% of the time. In all other tracks, student would download a prepared example in the form a of a <code>zip</code> file or <code>tar.gz</code> file. In each case, these projects would include: * All of the libraries necessary to run the examples (e.g., [http://www.tweepy.org/ Tweepy] for the Session 2 Twitter track). * All of the data necessary to run the example programs (e.g., a full English word list for the Wordplay example). * Any other necessary code or libraries we had written for the example. * A series of small numbered example programs (~5-10 examples). Each example program attempts to be sparse, well documented, and not more than 10-15 lines of Python code. Each program tried both to do something concrete but also provide an example for learners to modify. Althought it was not always possible, the example programs tried to only used Python concepts we had covered in class. On average, the non-self-directed afternoon tracks constituted of about 30% impromptu lecture where a designated lead mentor would walk through one or more of the examples explaining the code and concepts in detail and answerinig questions. Afterwards, the lead mentor would then present a list of increasingly difficult challenges which would be listed for the entire group to work on sequentially. These were usually written on a whiteboard or projected and were often added to dynamically based on student feedback and interest. Learners would work on these challenges at their own pace working with mentors for help. If the group was stuck on a concept or tool, the lead mentor would bring the group back together to walk through the concept using the project in the full group. In cases, more advanced students could "jump ahead" and begin working on their own challenges or changing the code to work in different ways. This was welcome and encouraged. In all cases, we gave students red sticky notes they could use to signal that they needed help (a tool borrowed from [http://software-carpentry.org/ SWC]).
Summary:
Please note that all contributions to CommunityData are considered to be released under the Attribution-Share Alike 3.0 Unported (see
CommunityData:Copyrights
for details). If you do not want your writing to be edited mercilessly and redistributed at will, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource.
Do not submit copyrighted work without permission!
To protect the wiki against automated edit spam, we kindly ask you to solve the following CAPTCHA:
Cancel
Editing help
(opens in new window)
Tools
What links here
Related changes
Special pages
Page information