Lessons learned from the boston python workshop, an outreach event for women geek feminism blog gold price us dollars

.

My name is Jessica, and I’m an organizer, curriculum developer, and lecturer for the Boston Python Workshop, a free, 1.5 day project-driven introduction to Python for women and their friends. The workshop has run twice, in March and May, and the third run is happening in July at Google Cambridge.

I’d like to share some of the lessons the Boston Python Workshop staff have learned about organizing outreach workshops and our goal of bringing more gender diversity to the local Python community usd yen chart. First, the structure of the Boston Python Workshop

The Boston Python Workshop is for women and their friends who have no or limited programming experience (I’ll talk more about “women and their friends” in a bit).

The workshop is held on a Friday evening and all day Saturday. On Friday, attendees set up their development environments and start learning Python through a self-directed tutorial and practice problems.


On Saturday, attendees continue learning Python with a 2 hour interactive lecture. Attendees and staff socialize over a sponsored, on-site lunch. In the afternoon, we break out into groups to practice Python while rotating through three short projects on a variety of fun and practical topics. Our projects have included writing parts of a Twitter client, how to cheat at Words with Friends, writing a basic web app in Django, and writing graphical effects for a ColorWall. Our material is all online, so check it out.

This comes to a solid 10 hours of learning and practicing Python, with support from a strong group of volunteers from the local programming and open source communities taux de change euro dollar canadien. The workshop is run under the auspices of the Boston Python Meetup (I’m one of the Meetup organizers) and we hold follow-up events like an open Project Night through the Meetup. Lessons learned about teaching Python to beginners

There is a huge difference between teaching Python to people with programming experience in another language and people with absolutely no prior programming experience. The biggest lesson we learned is that if you are going to teach absolute beginners, you have to commit to really starting at the beginning:

Make getting your environment set up a part of the event. If you say that attendees need to install Python and dependencies before the event, you will scare off some beginners. For us, environment setup includes:

We provide step-by-step instructions for Windows, OS X, and Linux. We want people to leave Friday confident in their ability to create and navigate a Python development environment.

Introduce programming vocabulary before you use it. It’s easy to toss around words like ‘variable’, ‘parameter’, ‘string’, or ‘syntax’ without thinking about it 200 usd to eur. Define these words as you use them, and tell other staff and attendees to call you out if you start using jargon. Consider having a glossary to which attendees can refer.

Make it clear that experimenting is okay. This isn’t a sculpture or glassblowing class; there is no physical or expensive resource “wasted” on mistakes, so don’t be afraid of making them. Get attendees in the habit of answering their own questions by testing and tinkering. As much as you can, give answers at a Python prompt instead of saying them. We also introduce tracebacks very early and strip away any intimidation or sense of having done something “wrong” when attendees encounter them.

Have clear, bite-sized goals. Completing a task, no matter how small, is encouraging and lets you know that you are on the right track. Our Friday night material has explicit steps for each bit of environment setup and ends in a check-off of a handful of key lessons with a staff member.

Give attendees opportunities to practice thinking about and solving problems in code binary to decimal conversion method. It is a huge leap from following along with an instructor or tutorial to solving a problem on your own in code, and it’s a leap that is often neglected in intro material. We have attendees practice with codingbat.com and some staff-written exercises.

Motivate the experience. Start and end the workshop with why programming is useful, empowering, and fun. Our Saturday projects are an opportunity to experience this first hand. Have the staff share their programming stories.

Make it clear that trans women are welcome. I had a tough time coming up with language that I liked, so I asked some trans women I knew for help.

Audience: Women and their friends who have no or limited programming experience. This event is welcoming and respectful of trans women. Men are welcome as guests of women who are attending.

Talk about childcare. Childcare responsibilities are often overlooked at events like this. Maybe you can afford childcare; maybe you can get a volunteer to watch kids on-site. Even if you can’t provide any help, acknowledging that childcare is a concern for some women who’d like to attend goes a long way towards cultivating an inclusive environment.

Have female instructors binary search in c. Studies show that female instructors can substantially impact the confidence and performance of women pursuing science and engineering [1][2][3]. It’s also an opportunity for attendees and the general Python programming community to see more examples of smart, confident, capable women programmers. Need help finding staff? Ask around your local user group, universities, and tech companies.

You can’t run a workshop without a venue, food (for all-day events), and attendees investing in futures market. The Boston Python Workshop is a free event run by volunteers, so we have to handle space, food, and publicity through donations, grants, and a lot of on-the-ground effort. Here’s how we do it, from a women’s outreach perspective:

Ask local businesses and universities for space and food. Don’t underestimate the ability of local businesses and universities to help you with space and food donations. Often all it takes is asking. A lot of bigger companies have budgets for community relations or diversity outreach that they are dying to use on events like this.

Ask the Python Software Foundation for help. Apply for funding through the PSF grant and sprint programs. PyLadies in LA received a PSF grant for their outreach events earlier this year.

Short on attendees? Send an e-mail blast. Advertise the event with your local user group (better yet, make it a user group event). Still not full? How about contacting:

• the organizers of local Science, Technology, Engineering, and Math (STEM) youth initiatives. Some examples from Boston are Science Club For Girls and Citizen Schools.

Play the social media game euro vs usd exchange rate. Get on Twitter, pick a hashtag, and promote the event. Write blog posts and encourage attendees to do the same. Invite famous local tech women to attend the event and blog about it.

Have a roadmap binary search. An intro workshop is a great first step, but what’s next? We end the workshop with explicit suggestions for next steps and reiterate them on our wiki and in a follow-up e-mail. We also specifically invite workshop attendees to a pre-scheduled follow-up Project Night, and since attendees joined the Boston Python Meetup to register for the workshop, they’ll get information about all future Meetup events.

Be data-driven. We run detailed exit surveys and use that data to iterate on the curriculum and projects. We hold a staff wrap-up shortly after the workshop where we dissect every part of the event from the instructor perspective and identify parts that can be improved. We also track attendance at general Meetup events.

Prior to our outreach workshops, Meetup events were under 5% women. I can happily report that the 6 general Meetup events (which typically bring in 40 – 70 people) held since running our first workshop have all had at least 15% women attending, and we have some fantastic workshop alums who have become Project Night regulars. Your turn

There is a huge, unmet demand for programming events for women, across the US and globally. Our workshops fill up within hours, and we plan on running the Boston Python Workshop every 2 months for the foreseeable future.

You can read more about the Boston Python Workshop on our wiki. We are #bospythonworkshop on Twitter, and we run under the auspices of the Boston Python Meetup ( @bostonpython) and the OpenHatch project ( @openhatchery). We plan events and share strategies with other outreach events on the OpenHatch Events list.

It’s your turn! What programming or open source communities are you passionate about? What kinds of outreach are important to you, and what are the biggest barriers to running a workshop in your city? We want to see more outreach events across the globe, so tell us what you need and we’ll help make it happen!

[1] Gürer, D. & Camp, T. (2001) 500 usd. Investigating the incredible shrinking pipeline for women in computer science (Final Report — NSF Project 9812016).

[2] Sonnert, G., Fox, M. F. and Adkins, K. (2007). Undergraduate Women in Science and Engineering: Effects of Faculty, Fields, and Institutions Over Time. Social Science Quarterly, 88: 1333–1356. doi: 10.1111/j.1540-6237.2007.00505.x

[3] Bettinger, Eric P. & Long, Bridget Terry. (2005). Do Faculty Serve as Role Models? The Impact of Instructor Gender on Female Students. The American Economic Review

Vol. 95, No. 2, Papers and Proceedings of the One Hundred Seventeenth Annual Meeting of the American Economic Association, Philadelphia, PA, pp. 152-157

I want to share with you one idea for dealing with situations such as your workshop where one is dealing with a “stereotype threat”. It has been shown that a simple writing exercise done at the beginning of class will pretty much completely eliminate differences in performance between men and women in a college physics class, among other results.

Yeah, this was a good one — it was mentioned in a GF post last November, but I’m glad it came up again because it gives me a chance to call out this paragraph:

Miyake’s achievement is doubly impressive because the physics course had already tried to introduce ways of reducing the gender gap, including extra tutorials. But all of these methods involved more of the same – more teaching, or more problems to solve binary to octal examples. Miyake’s exercise, by contrast, had nothing whatsoever to do with physics; it worked because it improved the environment in which women learn physics. Put it this way: if someone can’t hammer in a tricky nail, it might not be because their arm isn’t strong enough. It might be that they constantly have to look over their shoulders while they work.

Thanks for this post — I really enjoyed it, love that this event happened, and appreciate the resources! I’ve emailed my local chapter of the Association for Women in Computing about making something happen like this where I live (before I move to the Boston area in Fall 2012..!). It’s just at the beginning of the process and everything, putting together ideas and so on. I was curious whether you’re okay with people using those step-by-step instructions as a baseline for…step-by-step instructions? I’ve noticed already how easy it is to miss something while trying to explain basics or first steps because of taking things for granted re: what I already knew about computing when I started programming.

In terms of languages — this should maybe be a separate comment but how to help people beginning is interesting to me and I am curious if there are other thoughts —

I was starting to use Python for NLP (parsing stuff with NLTK, actually) when I took my first intro programming class in my CS department, which was in C++. A year later, I took an introductory programming course using Python and spent the entire semester (a) not especially challenged but (b) astonished at how much better the building blocks we were given were. That’s about particular classes, in large part, but maybe not entirely.

I agree that Python is fantastic for beginners and exploring for a lot of reasons, many already mentioned. Including because there is so much variety within what you can do with Python and what has been done with it, and I think it’s easy to learn other things ‘through’ it (like terminal usage and various widely-applicable programming concepts); it’s awesome to feel like you understand how to learn more.

I am a bit torn sometimes because I personally am glad that the first experience/s I had were in C++ as well as Python. I actually thought that the C++ made it a lot easier for me to learn Python, although it confused me occasionally too, in terms of structure especially. I usually recommend that people really interested in doing CS at my school take one of our C++ intros first, and then the Python if they still want to learn Python through a class. (My school doesn’t offer Java as a cold-intro language; the Python class is our Informatics intro technically, which is a separate track that can be very close or only somewhat close to the CS, as you choose.)

For a supportive environment/a kind (in the sense of personal-kindness) introduction to programming/if someone is really worried about beginning programming, though, I’d switch the Python and the C++ around in my recommendation, and I’m not completely sure what that means — it’s something I keep thinking about. My programming experience is still shallow enough that I am not 100% certain which of these and other things I enjoy most myself, but I suspect (perhaps wrongly) that which language is the best bridge for you to learning other languages depends on what sort of learner you are.

All materials are found on open spaces of a network the Internet as freely extended and laid out exclusively in the fact-finding purposes. If you are what lawful legal owner or a product and against its placing on the given site, inform us and we will immediately remove the given material. The administration of a site does not bear responsibility for actions of the visitors breaking copyrights. abuzesite@bigmir.net

banner