Last weekend we participated in the Grace Hopper…

Last weekend we participated in the Grace Hopper Women in Computing Conference‘s Open Source Day in Minneapolis. I, Alison Barrett, and Carolyn Sonnek attended as workshop teachers for the people who signed up for the WordPress section.

Alison led the group interested in working on how to contribute to coreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress.. They went through the setup process with svn, and worked on a javascriptJavaScript JavaScript or JS is an object-oriented computer programming language commonly used to create interactive effects within web browsers. WordPress makes extensive use of JS for a better user experience. While PHP is executed on the server, JS executes within a user’s browser. patch that was submitted on tracTrac Trac is the place where contributors create issues for bugs or feature requests much like GitHub. I pinged Helen and Andrew Ozz to review the ticket so the participants could get an idea for how feedback gets delivered. After lunch, Alison’s group continued to learn about wp core (they mostly had js experience, no php).

Carolyn and I each led a small group in the morning that was focused on setting up a local installLocal Install A local install of WordPress is a way to create a staging environment by installing a LAMP or LEMP stack on your local computer. and learning how to use WordPress (they mostly had no experience with it, coming from programming backgrounds rather than content management). After lunch our two groups combined and we taught them how themes work and how to build a child themeChild theme A Child Theme is a customized theme based upon a Parent Theme. It’s considered best practice to create a child theme if you want to modify the CSS of your theme.

At the end of the day we had to get up and show a demo of what our group had worked on, so we threw together some quick posts on a test site I had (because we couldn’t have multiple people contributing to a local install simultaneously) describing some of the activity, and one of the students’ child theme was used. It won’t be representative of the class after next week, but if anyone wants to see what was shown, you can see it here until October 16, 2013 (after which I’ll remove the link and it goes back to being a test site for me).

What we learned:

  • Most of the computer science majors/professionals we met had heard of WordPress but not used it, and didn’t work with PHPPHP PHP (recursive acronym for PHP: Hypertext Preprocessor) is a widely-used open source general-purpose scripting language that is especially suited for web development and can be embedded into HTML.
  • Because of our user/developer dual audience, it’s very difficult to ensure that a targeted workshop will reach the right audience without fairly strict pre-screening. We thought our group would be all people wanting to contribute to core, but 2/3 just wanted to learn how to use WP for the first time.
  • Having mamp and the most recent version of wp on a thumb drive is always very handy.
  • We could have jumped right into using WP if we hadn’t needed to dither with database connection errors etc in mamp/wamp for the first 20-30 minutes. That said, with this audience, they liked setting up the development environment, even if they weren’t going to do anything hardcore.
  • The workshop was the day after the conference proper ended, so some people had to leave after lunch because they were checking out of hotels, catching flights, etc. This is something we see when we do tack-ons after WordCamps also.
  • We really really need to kick it into gear with building curriculums and getting them online so we can start doing trainings of all stripes.

#conferences, #diversity, #grace-hopper, #training, #women, #workshops

Community Expectations

Anyone who’s paid attention to other open sourceOpen Source Open Source denotes software for which the original source code is made freely available and may be redistributed and modified. Open Source **must be** delivered via a licensing model, see GPL. projects over the past year or two has seen the development of codes of conduct for almost every project/conference series that didn’t already have one. We’re behind here, for several reasons.

  • Our project tends to mostly be filled with respectful, kind people, so many people don’t feel we need a code of conductCode of Conduct “A code of conduct is a set of rules outlining the norms, rules, and responsibilities or proper practices of an individual party.” - Wikipedia.
  • Some people feel a code of conduct sets up the notion that we expect people to be inappropriate jerks, and that will make people not want to join us.
  • We have lots of libertarians that don’t like centralized rules and policies. 🙂

For these reasons we have tended toward generalities rather than stating behavioral rules in specific detail.

We’re outgrowing this.

WordCamps, meetupsMeetup Meetup groups are locally-organized groups that get together for face-to-face events on a regular basis (commonly once a month). Learn more about Meetups in our Meetup Organizer Handbook., forums, irc, tracTrac Trac is the place where contributors create issues for bugs or feature requests much like GitHub. tickets, blog comments, and more all have the potential to be home to conduct unbecoming a WordPress community member. But how is anyone supposed to know what we expect without having been around?

And even if they have been around, the people who’ve been around longer have inside jokes and know each other well enough that they might say things tongue-in-cheek that newcomers think are being said seriously and take in a way other than intended. Without any evil intentions, people who’ve never thought about what it’s like to be a member of a minority or anything other than able-bodied/financially-stable/caucasian/American/male/heterosexual/bearded/whatever-the-majority-is might not realize how unwelcoming some language or imagery may be to those who are different.

To that end, I want us to have a page on The community site where WordPress code is created and shared by the users. This is where you can download the source code for WordPress core, plugins and themes as well as the central location for community conversations and organization. that lays out our Community Expectations. A little less harsh-sounding than Code of Conduct, the Community Expectations should lay out what kinds of behavior are welcome/encouraged/expected in the project/at events, and provide a way for people to let us know if we fail to live up to these expectations so that we can continually improve our ability to welcome new contributors.

This is part of the diversity initiative. I’d like to assemble a small team of folks to work together on creating a draft of this document that we can then share with the broader contributor community for comment. To ensure that we are sensitive to language affecting multiple groups of people, I’d like this small team to itself be diverse. If you’re interested in helping draft this document, please leave a comment on this post and I’ll be in touch next week.

If you don’t want to be on the team that works on the document but you’d like to make sure we take something or other into account while we draft it, feel free to leave suggestions in the comments as well.

#diversity, #documentation, #policy

WordPress will be participating in Grace Hopper Open…

WordPress will be participating in Grace Hopper Open Source Day 2013 at the Women in Computing Conference. It’s the same Saturday as WC Europe, so will need to see who’s heading to that before choosing a couple of (preferably women) mentorsEvent Supporter Event Supporter (formerly Mentor) is someone who has already organised a WordCamp and has time to meet with their assigned mentee every 2 weeks, they talk over where they should be in their timeline, help them to identify their issues, and also identify solutions for their issues. to go and oversee the workshop. We’ll be guiding some first-time contributors through a first project. Told Christie (co-chair of OSD) I wanted to wait to choose our project until we were into the next dev cycle so we could pick something relevant.

#conferences, #diversity, #grace-hopper, #women, #workshops

Level Up Training for Diversity/Growth

When I launched this site, I made a giant list of all the great things we could do to grow the community, and others suggested even more great things. I hope we get to all of them (I understand the impatience), but have found that trying to focus on rolling out one thing at a time helps get things launched and set to the point that someone else can take over. I focused first on the integration, and now am passing the torch to Aaron Jorbin. Now I’m focusing on starting a training program to increase women’s participation in the contributor community.

We’re going to be creating a series of training workshops over the next next year aimed at helping people level up: from new user to advanced user, from advanced user to troubleshooter, from troubleshooter to theme modifier, to pluginPlugin A plugin is a piece of software containing a group of functions that can be added to a WordPress website. They can extend functionality or add new features to your WordPress websites. WordPress plugins are written in the PHP programming language and integrate seamlessly with WordPress. These can be free in the Plugin Directory or can be cost-based plugin from a third-party author, etc. These workshops will be targeted specifically on teaching immediately useful skills, how to think about [topic x in WordPress], building confidence, and where to go next. Anyone who completes the workshop should be able to increase their professional range (and rates?), and will be primed to become a contributor to WordPress, in one or more of the contributor groups.

We’re starting with a focus on women for these in-person events, but will expand to other underrepresented groups, and the training material will also be posted for free online for anyone to use, and we’ll be encouraging meetupMeetup Meetup groups are locally-organized groups that get together for face-to-face events on a regular basis (commonly once a month). Learn more about Meetups in our Meetup Organizer Handbook. groups to run trainings with these vetted curricula as well.

So what’s the plan? Here’s what I’ve got so far:

  • Each training will have a specific topic and a specific audience, aimed at leveling them up. If our first workshop is Troubleshooting, our target audience will be women who are savvy enough with WordPress to manage sites, possibly fiddle with htmlHTML HTML is an acronym for Hyper Text Markup Language. It is a markup language that is used in the development of web pages and websites./css, and not afraid of a challenge, but who lack the technical know-how to figure out why a site is broken. By the end of the workshop, they should have skills to troubleshoot a handful of common problems, be comfortable with tools like debug bar, firebug, etc, and have the confidence to ask questions without feeling like an idiot. Also, be able to start answering questions in the forum.
  • Each workshop will be over a weekend, with a Friday night installfest (a la railsbridge), a full day workshop on Saturday (with breaks), and a wrap-up on Sunday morning that is part feedback session, part graduation, part brunch or coffee before people head home. The Saturday portion will be broken into 2-hour segments, which could be taught independently in a series (like once a week through a meetup group etc) if desired.
  • Each two hour segment should have these components.
    1. Initial intro to topic/short orientation lecture.
    2. Guided walkthrough of the problem, q&a.
    3. Break into groups and solve 2-3 additional examples of same issue. Teachers provide help and answer questions in the groups as needed. After each example, make sure everyone has been successful. If a group has not, use their work as a walkthrough to show where they went off track and how to get back on/solve the problem.
    4. Everyone does one last one on their own (test).
    5. Final discussion of topic, lingering questions.
    This format will mean we need to set up some test sites with broken things in advance so that everyone has the same problems to solve in an environment where we have control/full access.
  • The first one will be in DC, with the 2nd in San Francisco. Talking to a few people currently about donating space in DC (though if you have any leads, send ’em my way), and Automattic has offered its new office space for the one in SF. Other locations will be decided after we’ve run these two pilots. In all locations, we’ll use local women as teachers/teaching assistants whenever possible, to help grow the local community. We should plan to have 2 ringers (such as trusted contributors in whose knowledge of the topics we’re confident) in each teaching group, regardless of location.
  • If space works out, would like the DC workshop to be the weekend of March 1st, and for the SF one to be sometime shortly after sxsw.
  • Once a draft curriculum is agreed on, we’ll do a dry run workshop virtually with a couple of people in our target audience to find weak points/confusing things/etc.
  • All teaching materials will be available online afterward. Later, we can potentially spruce up courseware and create online courses people can take, vs just having the teaching material online, but that’s a ways off.
  • We’re not going to use the name WordSchool, as has been bandied around in the past. We’re going to call the series Learn WordPress, so this one would be Learn WordPress: Troubleshooting. This will tie in well with building out the site at The community site where WordPress code is created and shared by the users. This is where you can download the source code for WordPress core, plugins and themes as well as the central location for community conversations and organization. (we’ll need a designer who wants to dig into this).
  • In an ideal world we would already have handbooks for all our Learn topics, but we don’t. We should just barrel ahead and make classes, and we can sync up with handbooks (and they can borrow from training materials) as they’re created.

The brain trust working on the troubleshooting curriculum is Christine Rondeau, Mika Epstein, Andrea Rennick, Amy Hendrix, and Kailey Lampert. Curriculum effort lives on make/support.


Yes, I know we need a new page on, and better docs, and a lot of things. We’ll get there. Please keep comments on this post relevant to the topic of the training program. Thanks!

#diversity, #training, #troubleshooting, #women