Anonymous user
Python Workshops for Beginners/Reflections: Difference between revisions
Python Workshops for Beginners/Reflections (view source)
Revision as of 00:37, 8 June 2015
, 8 years agoEditing general feedback about the sessions
imported>Ehashman m (1 revision: Python Workshops for Beginners - UWaterloo) |
imported>Ehashman (Editing general feedback about the sessions) |
||
Line 1:
Over three weekends in
This page hosts reflections on organization and curriculum and is written for anybody interested in organizing their own
In general, the mentors and students, suggested that the workshops were a huge success. Students suggested that learned an enormous amount and benefited enormously. Mentors were also generally very excited about running similar projects in the future. That said, we all felt there were many ways to improve on the sessions which are detailed below.
If you have any questions or issues, you can contact [
== Structure ==
Line 11:
The [[CDSW]] consisted of [[CDSW#Schedule|four sessions]]:
* '''Session 0 (Friday September 26th)''': [[CDSW#Session 0 (Friday September 26th Evening
* '''Session 1 (Saturday September 27th)''': [[CDSW#Session 1 (Saturday September 27th)|Introduction to Python]]
* '''Session 2 (Saturday October 25th)''': [[CDSW#Session 2 (Saturday October 25th)|Building data sets using web APIs]]
* '''Session 3 (Saturday November 15th)''': [[CDSW# Session 3 (Saturday November 15th)|Data analysis and visualization]]
The evening session ran from 6 to 9PM, and involved self-guided completion of setup and introductory exercises. The rest of the sessions followed this approximate structure:
* '''Morning,
* '''Lunch,
* '''Afternoon,
* '''Afternoon, 1:15 PM - 3:30 PM:''' Afternoon sessions with short projects.
* '''Wrap-up, 3:
Session 2 also featured a review session prior to the morning lecture.
We had a total of 10 mentors volunteer per session, with a total group of 22 volunteers.
We had about 230 participants apply to attend the sessions. About 100 of those were immediately filtered out for eligibility: no math or engineering undergrads were permitted to attend the workshops, as their programs have significant required programming components (often 2-3 classes in far more depth than we covered). We selected on programming skill (to ensure that all attendees were complete beginners), enthusiasm, and overall application quality, and I capped the total at 50 participants given our budget.
Sessions 0 and 1 had full attendance, but we lost about half our students for Session 2, which was held four weeks later during midterm season (initially planned to be a week earlier but there was a room booking conflict). Session 3 retained those students that attended Session 2. We attribute this rentention to poor timing (the heart of midterm season) 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):▼
▲We collected detailed feedback from users at
* [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]▼
▲* [https://docs.google.com/forms/d/
▲* [https://docs.google.com/forms/d/
▲* [https://docs.google.com/forms/d/
* [https://docs.google.com/forms/d/1tzjhvcmF5bg2AX2QKwtksAUri3gx71jCdNHt2LBrFe8/viewform After Session 3]
* [https://docs.google.com/forms/d/15SfIlAWJinmax2m1r98L36FzLKWQl4QsEB9N0KyhgYg/viewform Follow-up survey]
We used this feedback to both evaluate what worked well and what did not. The final follow-up survey was intended to evaluate how effective the workshops were.
=== Morning Lectures ===
The CDSW began each full day with 2h lectures with no breaks. This was a little too intense for the students, so I decided to reduce the length to 1.5h and break things up with short, self-directed exercises. These went over very well. Furthermore, I'm not as experience of a lecturer as Mako, so I chose to use slides and distribute them to students, who told me it made it easier to follow along.
In the Session 3 survey, 35% of respondants said the lectures were "Good", 35% called them "Very Good" and 18% called them "Excellent".
=== Projects ===
In the afternoons, we broken into small groups to work on
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, one of our session leads did not show up; at the behest of students, I held a single afternoon session that involved working through various data science examples together as a class, and answered general questions about Python programming. It ended up being more of an extension of the morning lecture and next steps than the projects we had imagined.
In
* 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
* 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 possiible, 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
Afterward, 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.
Line 83 ⟶ 75:
== Session 0: Python Setup ==
The goal of this session was to get users setup with Python and starting to learn some of the basics
* Users on Windows struggled to get Python setup and added to their path.
|