Portland Python Workshop Wrap-up
After learning at PyCon 2012 about the success of the Boston Python User Group’s efforts to increase diversity through their women-oriented Boston Python Workshop, the Portland Python User Group (PDX Python) decided to try running a Python workshop for women in Portland. With the help of Jessica McKellar from the Boston Python Workshop, a Python Software Foundation Outreach Committee grant, and generous sponsorship from Idealist, the first Portland Python Workshop was held on June 22nd and 23rd at Idealist’s offices in downtown Portland.
The steps Boston Ruby is taking to become friendly to beginners
(This is a guest post by Daniel Choi, a participant on our Events list.) My name is Daniel Choi and I am a Rubyist in Boston. I love programming and am the author of a few websites and open source projects, including Vmail, a Vim client for Gmail. I am also a member of BostonRB, the official community organization for Rubyists in Boston, Massachusetts.
I am writing to tell you about the new effort the Boston Ruby Community is making to reach out to beginners, newcomers, and to women. It started just three weeks ago, with stirrings of malaise in the Boston Ruby mailing list about our lack of diversity and beginner-friendliness. Our female representation at monthly Boston Ruby meetings is embarrassingly low, and too often our events are intimidating for beginners and newcomers. We wanted to do something about this, but had no clear idea how.
Lessons from Boston Python
Then someone pointed to Boston Python as a community that had its act together on outreach and welcoming newcomers. I contacted some people there, and they pointed me to the 2012 PyCon presentation by Jessica McKellar and Asheesh Laroia titled “Diversity in practice: How the Boston Python User Group grew to 1700 people and over 15% women.”
After I watched that video, I urged everyone on the Boston Ruby mailing list to watch it. Then things started happening fast.
Jessica and Asheesh’s presentation changed our whole outlook on what is possible for the Boston Ruby community. In 40 minutes, they opened our eyes to how we were stunting ourselves as a community and excited us by laying out such a clear, practical, and feasible outreach strategy that we could follow to change things dramatically in a short period of time.
We were so pumped that a day after we saw the video, we organized a BostonRB outreach organizational meeting to start moving. We even got Jessica and Asheesh to attend it! (Asheesh, 3 time zones away, was there virtually, thanks to Google Hangouts.) In an hour, everyone agreed that we would follow the playbook Jessica and Asheesh laid out.
First step: a project night (formerly “hack night”)
Our first goal was to hold a beginner-friendly Ruby Project Night, modeled on the Python Project Night that Asheesh and Jessica had pioneered. They gave us invaluable advice on how to pull this off. Ned Batchelder, the head organizer of Boston Python, also welcomed me when I went to attend and observe a Boston Python Project Night in person. Accessible and friendly, Ned graciously answered all my questions about how they made their Project Night event work.
BostonRB already had been organizing a twice-a-month “Hack Night” that wasn’t well-attended, especially not by newcomers and beginners. We gave that a big makeover following Boston Python’s template and turned it into Boston Ruby Project Night.
First, we changed the name from “Hack Night” to “Project Night”. That’s what Boston Python had done, and people agreed that the word “hack” was probably a poor word to use for outreach. It was vague, confusing, and maybe slightly anti-social to non-programmers, newbies, and novices. But everyone understands what a “project” is, and to most people a project is something collaborative, creative, and fun.
A more crucial improvement was changing the whole organization and tone of what was formerly known as Hack Night. We set up a beginners’ corner for the first time, along with experienced volunteer Rubyists available to give help. And we had an excellent emcee who went the whole nine yards to make damn sure that everyone felt welcome and included!
Our first Boston Ruby Project Night, on June 5 at the offices of thoughtbot, was a great success. Attendance tripled. There were many new faces. The energy level was amazing, and it was cool to see so many people learning, teaching, and helping each other — and having a great time. Many of the newcomers who came went out of their way to thank us for organizing it. The volunteers who helped the beginners loved it too. Everyone who took part seemed to become more empowered, engaged, and invested as members of the Boston Ruby community.
Result: a healthy outreach effort, and plans for a diversity-oriented intro workshop
A successful project night under our belt is giving us a lot of confidence in planning our first Boston Ruby Workshop for Women and Their Friends. We are gathering support and volunteers from all sides. Our outreach effort, which was nonexistent just a month ago, is growing strong and confident legs.
I wanted to share that good news with everyone here via the OpenHatch blog. I also hope this message can help inspire new outreach efforts elsewhere!
P.S. A special thanks the BostonRB members who contributed to the outreach effort so far: Valentine Rogers, Dan Pickett, Gavin Murphy, Michael Denomy, Braulio Carreno, Liana Leahy, Aaron Graves, Kevin Bedell, Alex Jarvis, Patrick Robertson, Andrew Kuklewicz, Michael Durrant, and Dylan Cashman. Thanks also to thoughtbot for hosting the first Project Night, and to Public Radio Exchange for our first outreach volunteers’ meeting.
Daniel Choi
Cambridge, MA
Photo credit: Liana Leahy, with permission to share.
June 9: Help Wikipedia test some software, and get involved in their community (no programming required)
Wikipedia software developers are working on a new “Article Feedback Tool” which sits at the bottom of every article in Wikipedia. On June 9, you can help test the latest version (before it gets rolled out to all of Wikipedia!) just by showing up for chat and following instructions. It’s free, entirely on-line, requires no programming, and will let you make a difference in the software that runs Wikipedia.
Details
The Wikimedia Foundation wants people to test that the newest version of the Article Feedback Tool works properly. It is hosting a chat session where anyone, with any degree of programming experience, is invited to chat about the tool, follow a detailed test plan to see if the tool works as designed, and report issues (e.g. by filing bugs) where it doesn’t work.
The Article Feedback tool is a box at the bottom of every Wikipedia article, designed ‘as an “on-ramp” to engage readers to contribute to Wikipedia — and become editors over time’. You can read more on the main event info page.
In this event, you spend an hour or two chatting online, you get a lot of insight into how a part of Wikipedia works, and you get to see how bugs in Bugzilla drive activity in the open source MediaWiki software that powers the encyclopedia.
The event will be led by veteran quality assurance engineer Chris McMahon, and has a clear test plan to keep the event focused.
To summarize:
WHO: Anyone who can read/write English and wants to test software just before it gets deployed for all Wikipedia users
WHERE: The main MediaWiki chat room, #mediawiki on irc.freenode.net (we will send instructions on using IRC to people who sign up)
WHEN: June 9, 10 AM US/Pacific; 1 PM US/Eastern (Convert to your time zone)
MORE INFO: https://www.mediawiki.org/wiki/Article_feedback/Testing_June_2012
SIGN UP: http://smarturl.it/afd-qa
Once you sign up, we’ll email you essential information on setting up your computer for IRC chat and with important dates to maximize your impact.
The event is co-sponsored by OpenHatch, which means we’re helping with publicity (like this blog post)!
OpenHatch May sprint report
Many thanks to all the attendees for a fun OpenHatch sprint. As announced on OH-Dev, we met up at the new Metreon in San Francisco, CA.
Here’s a quick summary of what we were up to:
- Karen Rustad began the process of converting our CSS to use less, a CSS wrapper that lets us use named constants and other niceties that make design work more enjoyable. (This is published on a branch, awaiting work to make sure it gets a production mode.)
- New contributor Roan Kattouw worked on improving GitMediawiki, a Perl-based tool to let us use git to push/pull from the OpenHatch wiki. Wiki spam is still a small problem for us, and I think interacting with the wiki over git will make cleaning up the spam easier. (This work is nearly done; it works against a local wiki on Roan’s dev machine, but has some small snag against the main OpenHatch wiki.) It also led to Roan submitting a patch to MediaWiki to improve its API.
- Daniel Mizyrycki continued to work on moving our documentation from the wiki into Sphinx. He also investigated documenting our new, Github-based workflow.
- Remote sprinter Shawn Landden landed his first commits, fixing links in our documentation and cleaning up some text in the tar training mission. (This work is committed and deployed!)
- First-time committer Mark Holmquist came to the sprint and fixed UI problems via CSS and Javascript contributions. (This work is committed and deployed!)
- Nathan Yergler continued work on a refactoring of the training missions, including documenting how to write a training mission. This is will be ready to land as soon as some test failures are fixed.
- Asheesh fixed a bug that was breaking the Subversion training mission and mentored people through their contributions. (The code work here is pushed and deployed! Reviewed by Shawn.)
- Berry Phillips begun moving the tests for oh-bugimporters out of the oh-mainline repo, starting with the tests for the Trac bug importers. This separates concerns more effectively and paves the way for it to be way easier to add new types of bug importers. (This is awaiting a review, but is expected to be pushed and deployed shortly.)
- Grant Bowman from Partimus also stopped by (sadly, not during the time we took the group photo) and provided his feedback on the site’s user experience. Major thanks to Grant for this review.
Thanks to all who attended! Special thanks to the Python Software Foundation for sponsoring the sprint, and to Cortland Setlow for taking the group picture!
Wrapping up the 6th Boston Python Workshop
The 6th Boston Python Workshop ran the weekend of March 30th at MIT.
This workshop marks a full year of diversity outreach with the Boston Python user group. Thank you to the amazing volunteers who have dedicated so much of their time this past year to making this workshop and this whole initiative such a success.
The Boston Python Workshop is a 1.5 day introduction to Python for women and their friends, focusing on beginning programmers. We had roughly 60 attendees and 15 volunteers staffing this event. This was the second workshop to utilize our grant from the Python Software Foundation’s Outreach and Education Committee; thank you to the PSF for supporting this outreach initiative here in Boston as well as other cities in the US.
The workshop structure was roughly the same as that of the 5th workshop:
Friday evening: laptop setup and first steps with Python
We assume no prior programming experience and require no prior laptop setup, so when you get to the workshop we help you install Python and set up your development environment, including installing a reasonable text editor for writing code and learning some basic command line navigation.
The bulk of Friday evening is dedicated to an online, self-directed tutorial covering basic data types and flow control. We reinforce the material through custom online CodingBat question.
Saturday: interactive lecture and projects
- 10am – Noon: an interactive lecture that builds on Friday’s material and covers lists, dictionaries, and iteration. Lecture ends with a state capitals quizzer that synthesizes the morning’s material.
- Noon – 1pm: lunch and demos. Pam showcased a Lunar Lander clone written in PyGame that she’s creating with her son. Katherine talked about the excellent work being done with Boston University’s Artemis Project — a summer computer science program for rising 9th grade girls. I pitched matplotlib — a powerful plotting library and Excel alternative.
- 1pm – 4pm: CodingBat review followed by splitting into groups to work through our afternoon projects.
- 4pm – 4:30pm: wrap-up and next steps. Workshop alums are encouraged to attend the next monthly Boston Python Project Night, where we can continue to support them as they learn and practice Python.
Saturday projects
We reinforce the lecture material through small, real-world Python projects. This is also an opportunity for attendees to collaborate and practice reading other people’s code.
- Twitter: use the Twitter API to write parts of a Twitter client.
- Wordplay: learn about regular expressions and how to cheat at Words with Friends.
- ColorWall: program graphical effects for a pixel grid.
Reflection
We conduct an exit survey after every workshop and consistently get very thoughtful and helpful feedback from our attendees. I wanted to highlight an observation from this workshop’s exit survey:
I was listening to folks describing their backgrounds at lunch. You pulled in people from a wide range of interests an expertise. Yay for diversity!
We work very hard to advertise this event to a wide range of communities in the Boston area and to make sure that the event is accessible for as many people as possible, so it is great to see and hear that those efforts pay off.
One question we ask is about prior programming experience. This workshop, we got everything from an emphatic
“NONE”
to
“studied and did programming 30 years ago. Mainly C. Haven’t programmed in over 18 years. Gee — my oldest child is 18 … Even with that, I didn’t feel “old”, even with the teenager in the room 🙂 Looking to get back on the career track.”
How awesome is that? It is really gratifying to see people from such diverse computing backgrounds, as well as such a wide range of ages and cultural backgrounds, at our events.
Resources
For more details about the 6th Boston Python Workshop, please check out:
Want to see an event like this in your city? Get in touch! Our material is all online and Creative Commons licensed.
-Jessica, for the Boston Python Workshop staff
OpenHatch goes to RPI, concluding our Spring 2012 university tour
On April 21-22, OpenHatch visited Rensselaer Polytechnic Institute (RPI) as the fourth site in the campus.openhatch.org program!
We were honored to be invited by the Rensselaer Center for Open Source, a student computing organization that encourages students to develop open source projects. Thanks also go out to the event’s sponsors, Nokia and Kitware.
You can see photos of the event taken by Christopher Schmidt, Asheesh Laroia, and Peter Hajas.
As usual, we split the event in two days: Saturday, for learning more background about open source, and Sunday, for getting involved in real open source communities. (This post is co-written by Christopher Schmidt and Asheesh Laroia.) Keep reading for the full details.
Thanking rsync.net for donated backup space
Thanks to rsync.net and their donated storage space, we now have constant, tested backups of the main OpenHatch virtual machine! I’ve just set up a Jenkins job that creates a blank VM, restores from backup, and makes sure the site can load there.
I’ve just finished creating a tested backups plan for main OpenHatch website, its databases, and the entire filesystem on our main (virtual) server. I’ve been keeping documentation of this on a wiki page.
I want to draw special attention to the fact that their recommended backup procedure involves encrypting backups so they can’t read them. Kudos to them for that! The other reasons I’ve enjoyed them is:
- It’s extremely easy to use if you’re used to UNIXy tools like rsync and the quota command.
- They recommend and document how to use duplicity to secure backups.
- Every time I’ve contacted support, I’ve received a prompt, smart response.
With the donated space, we use duplicity (as per the rsync.net official document) to do full encrypted backups weekly and incrementals daily. I sent an email to the OH-Dev list with the full details.
Thanks to rsync.net for donating this space! Please consider them when you’re thinking about where and how to back up your own data.
You are invited: welcoming women into the Python community, one workshop at a time
This week — still flying high from my experience at PyCon 2012 — I’ll begin planning Philadelphia’s fourth introduction to Python workshop for women and their friends.
For nearly a year, I’ve been working with a fantastic group of Pythonistas, women and men, to get more women involved in our local Python community. Our strategy has been to create events that are beginner-friendly, welcoming, fun, and content-rich, and to invite as many women as possible to participate.
We’ve been calling our group PyStar Philly, and so far we’ve organized several workshops, project nights, and beginner-level lectures. We’ve reached out to librarians, designers, data analysts, artists, geographers, engineers, graduate students, historians, stay-at-home moms, gamers, and journalists. At our workshops, we’ve welcomed a 12-year-old girl who wants to design her own games, 20- and 30-somethings looking to make career changes, 40-somethings eager to re-enter the workforce after time at home with kids, and women in their 50s and 60s interested in building new tech skills. (We’ve also welcomed several men, usually as guests of our female students.) We’ve garnered tremendous support from a broad segment of the Python community: PhillyPUG, our local Python user group; the Boston Python Workshop and the Boston Python user group; PyLadies; PyStar San Francisco and PyStar Minneapolis; and the Python Software Foundation.
In this year of community building, I’ve learned a couple of crucial lessons:
1. Everyone wants to be invited, especially newbies. Personal invitations are the best.
2. It’s impossible to do this work alone.
These things are as true for workshop organizers as they are for students learning to code.
I got started organizing our Python workshops because several amazing folks invited and challenged me to do it. In April 2011, I stumbled across the PyStar website and dashed off a message to the PyStar Google group, asking about a possible workshop in Philly. Within minutes, Lukas Blakk, who founded PyStar in the Bay Area, responded with information and resources for organizing a workshop on my own. Within two weeks, I was sitting in a coffee shop with Amanda Nyren, a PyStar Minneapolis organizer (she was in Philly visiting friends), getting an earful of encouragement. Her invitation: You can do this! I want you to do this. Go for it! Later that month, I had separate lunches with Mike Taylor (Bear), a developer at Mozilla who also had been thinking about organizing a Philly-based Python workshop for women, and Asheesh Laroia, an experienced tech community organizer and the co-founder of the Boston Python Workshop. Both of them offered clear steps for how to move forward.
Over the next several months, I reached out to the Philly tech community for help and pulled together a terrific group of instructors and volunteers: Maneesha Sane, Bear, Jake Richter, Andrew Jennings, Erika Owens, Pam Selle, Justin Walgran, Mjumbe Poe, Corey Laitslaw, Gabe Farrell, Sarah Gray, Far McKon, and Erik Osheim. With the help of Christine Spang and Jessica McKellar, veteran instructors from Boston Python, we offered workshops on June 18, 2011 and September 24, 2011. Jessica and Christine provided us with a curriculum and traveled to Philly to lead the lectures and show us how to teach the material to new coders.
After our second workshop, our friends from Boston presented us with a bigger challenge: make the workshop part of our Python user group and create a pipeline to get more women involved with our local Python community.
Lucky for us, Tom Panzarella, the PhillyPUG organizer and a huge supporter of our work, loved the idea. In early 2012, PyStar Philly joined PhillyPUG, and on February 3-4, 2012 we offered our first workshop under the PhillyPUG umbrella. Students must now join the user group before they can register for a workshop, and once they’ve joined they’re automatically invited to PhillyPUG’s project nights, meetups, and other great events. Probably the best outcome of this collaboration is that it creates opportunities for workshop graduates to continue their learning and network with professional programmers.
Maneesha Sane, who co-organizes our Python workshops, and I are excited about what’s next. Boston Python continues to support our efforts, and through that group we’ve received grant money from the Python Software Foundation to cover some of the costs of our workshops and project nights. We’re also grateful to have the support of several local companies and organizations: Azavea, Chariot Solutions, Cloudmine, Devnuts, the Drexel University Computer Science Department, the Hacktory, Mozilla, NextFab Studio, Girl Geek Dinners, Girl Develop It, and Web Start Women. Like us, these folks are committed to getting more women involved in the Philly tech community.
We still have a lot of work to do. We want to create a program as comprehensive and well-documented as the Boston Python Workshop. We also share Lukas Blakk’s goals to expand opportunities and create bigger challenges for workshop graduates. We hope to build a professional network of Pythonistas that is as vibrant and joyous and women-centered as the network created by the PyLadies. Our biggest goal is to welcome many more women into the Philly Python community, one workshop and project night at a time.
The truth is that we’re just getting started. And we’d like to invite you to help.
In addition to being a Python workshop organizer, Dana Bauer (@geography76) is an independent mapmaker and spatial data analyst. For more information about getting involved with PyStar Philly and the Philadelphia Python Workshop, please contact Dana, dana.bauer {at} gmail dot com, or Maneesha Sane, ahseenam {at} gmail dot com.
Ten contributors hacked on OpenHatch during PyCon sprints
Hi there! This is Greg Grossmeier, new member of the OpenHatch publicity team writing my first post for the OH blog.
As you know, OpenHatch was at PyCon this year. Asheesh and Jessica gave a great talk on diversity in usergroups specifically about the Boston Python user group.
But the OpenHatch goodness didn’t stop with just a great talk. Long time contributors and board members Karen and Asheesh organized a sprint for the website code. There was a lot of great activity during the sprint on OpenHatch, and we welcomed some new members to our community, which is amazing.
Here is some of what was accomplished (thanks to Asheesh for writing this up in an email):
- Portia, a new contributor, submitted a patch to improve the quality of the git training mission.
- Jacquie, whose first commit landed in Janaury 2012, stayed to sprint on improving the quality of the training missions, moving them toward class-based views. This also meant learning a lot about git branches and Github.
- Berry Phillips started (and completed, post-sprint) the long slog of extracting the OpenHatch bug download+parse code into a separate Python package. Having seen the deep inside of OpenHatch, he will probably spend a bunch of his future time on the frontend. (-:
- John Morrison wrote new code that integrates with the Github API to download issue data from there. This, having just been deployed, makes it possible for users of Github Issues to automatically add their bitesize bugs to OpenHatch’s volunteer opportunity finder.
- Karen Rustad fixed crucial layout issues with the redesign that Asheesh missed when he deployed the redesign, and also created (and got feedback on) a mockup for how openhatch.org/search/ can meaningfully show projects, not just individual bugs, for new contributors.
- Russia submitted her first patch, moving patch.py from mysite/missions/base/ into the vendor/ directory. She also experimented with Github pull requests, and is interested in solving another ticket.
- Walker Hale IV identified two fundamental issues with the data import/export system, and submitted patches+email conversations that addressed most of them. Jenkins’ builder for the search app is still failing; further patches to finish the issues are forthcoming. He also repeatedly answered the question for other PyCon attendees, “What is OpenHatch?” which was great.
- Daniel Mizyrycki got to know our documentation and auto-builders. He was particularly enthused by Karen’s talk on documentation, and how it can be built in a way that does not repeat oneself. We now have Sphinx documentation directly due to him.
- Pam Selle submitted fixes for various important layout problems, some which were as bad as CSS syntax errors and missing close-tags on our HTML.
- Asheesh managed to not just mentor new contributors but also write some code that is a sketch of how we can improve the bug downloading code, via removing a lot of our bookkeeping on top of Twisted, and showing that to John, who might be able to run with it.
- Pam and Walker led the battle cry to convince Asheesh to accept patches as Github pull requests, which he succumbed to. See the OpenHatch GitHub project page.
- We all made a video of the sprint, and a photo was snapped also. I don’t know where the video is, but if you see it anywhere on PyVideo, please let us know :-).
In terms of users of the site, and interest in the project,
- glyph (of Twisted) asked if we had implemented a workflow for handing new contributors to his project. Asheesh was happy to say “yes,” thanks to Jule Slootbeek’s work on the backend a few months ago.
- One new user went through the training missions and learned a lot about command-line tools on his Ubuntu machine in the process.
This was astounding! OpenHatch had 10 people at the sprint who made meaningful contributions to the code. And their enthusiasm for the project is what will push it to new great new directions.
Asheesh reflected on this and thinks a few things made this such as success:
- He prepared (during the start of the sprint, as well as over the course of the sprint) to list some good issues for newcomers.
- He asked people at the beginning of the sprint what their backgrounds are, and aimed to come up with tasks targeted at them.
- Pam showed up in the middle, adding one to our contributor count, and also encouraged us to have a group dinner. (-:
- People were quite willing to ask questions. This could have been even better — more maintainers in attendance would have been a plus. New contributors did chat a lot with each other, so Asheesh wasn’t always a bottleneck, which is great.
- The setup instructions for getting a development environment going were dramatically more reliable, compared to one year ago.
We can’t wait until next year for another great PyCon Sprint!
The Boston Python Workshop at PyCon 2012
Asheesh Laroia and I gave a talk at PyCon 2012 called Diversity in practice: How the Boston Python user group grew to 1700 people and over 15% women:
How do you bring more women into programming communities with long-term, measurable results? In this talk we’ll analyze one successful effort, the Boston Python Workshop, which brought over 200 women into Boston’s Python community this year. We’ll talk about lessons learned running the workshop, the dramatic effect it has had on the local user group, and how to run a workshop in your city.
You can also view the video online with Universal Subtitles here. Thank you to the PyCon organizers and conference volunteers for orchestrating the lightning-fast turnaround time on subtitling and publishing the talk videos.
The slides are available here.
Starting with the thesis that diversity makes a user group better and that diversity outreach is a great way for user groups to grow, we covered the following material:
- The Boston Python Workshop
- Motivation
- Goals
- Central tenant: work within existing communities for measurable, long-term change
- Setting up a beginners’ pipeline into the community
- Boston Python Workshop structure
- Impact on the Boston Python user group
- Now > 15% women at general user group events
- Successful beginners’ pipeline benefits all community members
- Global community impact: the women of PyCon 2012
- Individual success stories: workshop alums’ first programming jobs, and more
- Reflection and sharing
- Public iteration, Creative Commons-licensed material remixed across the globe
- Giving open-source materials back upstream
- Scaling out: impact beyond Boston
- Python Software Foundation grant for women-focused outreach across the US
- Inspiring new communities: PyStar, PyLadies
- What’s next: turning workshop volunteers and alums into community leaders
- Call to action: how to run successful, effective programming outreach in your city
The talk was very well-received, with a great Q&A and many follow-up contacts from folks interested in running outreach events in their communities. Praise from Glyph, the creator of Twisted and a long-time supporter who is leaving Boston soon for San Francisco, was particularly touching. We also had a chance to share strategies with other user group organizers at a community organizers’ Birds of a Feather.
Want to see an event like the Boston Python Workshop in your city? Get in touch!