Skip to content

Instantly share code, notes, and snippets.

@mcdougs
Last active January 27, 2016 02:57
Show Gist options
  • Star 3 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save mcdougs/9c0718412ad572216691 to your computer and use it in GitHub Desktop.
Save mcdougs/9c0718412ad572216691 to your computer and use it in GitHub Desktop.
Open Source Mentorship Program {Philadelphia} 2015: Organizers Guidebook

The Open Source Mentorship Program is a partnership between Code for America brigades and Girl Develop It chapters. The "Summer of Open Source" was piloted in Philadelphia over the summer of 2014. Met with great excitement from the success of the experiment, CfA and GDI cemented the partnership so that other brigades and chapters across the country might replicate and extend the impact of this collaboration.

In the summer of 2015, Philadelphia once again launched osmp. This guidebook is the result of their experience and includes both successes and opportunities for improvement. It is as comprehensive as possible, but the intention is for subsequent programs to fork and build on the knowledge gained. We’re sure to have forgotten to include some details, so don’t be shy about reaching out!

Step 01: Planning

A quick checklist
  • Clear goals and population served

  • Research and program structure

  • The curriculum, timeline, and location

  • Building a team

  • Communication Platforms

  • Getting sponsors

Goals and target audience: First, you'll need clear goals of the program and a sense of who your target audience is. It's not an easy job to run a 10-week program, but it's easier if you know why you're doing it. Your goals are determined by the impact you want to make. How are you making change? Who is that change for? Answering these questions ahead of time is critical for knowing what kind of women you want in the program and managing expectations for everyone. It keeps you grounded when decisions are unclear. This also helps your participants to know if this is the right program for them. Finally, this informs your definitions of success, which is helpful for both organizers and potential sponsors. In our case, we wanted to replicate what had been done last year, expand our community to be more inclusive and welcoming, and to build a stronger relationship with the local GDI chapter.

Research and structure: You're off to a good start! Research and building contextual knowledge for yourself is critical for putting this all together. Find out what other similar efforts exist, what you might learn from and where you might improve. Talk to others in your community who have thoughts about the program tenets and could suggest resources for best practices. While this guidebook is based on our experience, there are likely many solutions worth exploring. This is especially important if you are new to organizing and/or event planning. It's perfectly fine if you are--don't let anyone make you feel shy about asking questions. No one starts as an expert, so ask lots of questions, lots of times to make sure you feel prepared for the undertaking.

Our program had a “kickoff” session to introduce the program participants. You may have this if planned out ahead of time. It may also be useful to have open house sessions as a way to promote the program before the applications even open. We had six sessions total over the course of 12 weeks, which we hosted every other week as part of the weekly Code for Philly workshop night. The numbers were staggering on those nights and put strain on the program participants and created some confusion for newcomers unfamiliar with the program and the civic tech community in general. Though we didn’t want to make too large of an ask, in the future we will ask the cohort to make a weekly commitment to relieve the amount of work that needs to get done in a single night every other week.

Curriculum, timeline and location: This was a major challenge for us. We didn't have a structured curriculum that built off of itself. Instead we chose topics based on the expertise of our mentors and asked each one to teach a section in a workshop style. This worked out okay, but in the beginning it was confusing and left our mentors feeling unprepared. Here, we would suggest creating a schedule with the session topics and creating a sign-up list before the program begins. GDI should likely take the lead on this area of the program, since the education piece is a large part of their organization. The timeline should also be considered. The brigade hack night was a weekly event, however the sessions with curriculum scheduled was bi-weekly. This limited how much curriculum could be covered in a short time. While it's a big ask, we would encourage requiring weekly participation, alternating between learning nights and project dev nights. Finally, location should also be secured as far in advance as possible. While it may have been more cost-effective to search for a free space for every session, we found it more beneficial to reserve a consistent space ahead of time. Pros included less stress for the organizers, less confusion for participants, streamlined logistics and reduced scheduling problems, and consistent promotion from the host location.

Building a team: Any osmp should have representation from their local CfA brigade and GDI chapter. As the primary contact and face of osmp your program coordinators are essential to the success of the program. They coordinate the details of the weekly session logistics, communicate with mentor and mentees about the schedule and curriculum, handle issues that may arise, and generally oversee how the program is running. You'll want to recruit people who embody the spirit of the program, eagerly take ownership over its health, and treat it as a serious commitment worthy of their time and attention. In our case, we also made sure to raise funds to pay the coordinators at least a small stipend to show appreciation of their time. While it couldn't possibly be enough, it's a small appreciation for their incredibly hard work over the course of the program.

Communication Platforms: While organizing and planning it is helpful to have frequent communication. Program coordinators wrote the schedule for each session and sent the schedule to the cohort about a week ahead of time. Regular group emails were useful for keeping everyone up-to-date about the sessions, deadlines, events, and activities outside of the sessions. For our purposes we used an existing Slack team and then created a unique Slack for osmp 2015. This was incredibly useful for communicating quickly and keeping up-to-date. Helpful hint: suggest the mobile app for those who don't have it--push notifications are useful in alerting to activity in a Slack-saturated world. However, not everyone uses Slack regularly so doing both Slack and email proved to be most effective.

Getting Sponsors: This can be intimidating at first because you might wonder what value you offer to a company--the answer is a lot! The key is to know what you're trying to accomplish and communicating it effectively. In our case, we were primarily concerned with three items:

  1. Exposing more women to the open source community and building their confidence to make commits

  2. Bringing diversity and perspective to the civic tech community for mutual benefit. The civic tech ecosystem thrives on a multiplicity of viewpoints that add unique value to a project. The participants are conversely introduced to an inspiring group of people working collaboratively to improve daily life in Philadelphia

  3. Increasing nuanced learning, teaching and engagement opportunities for our participants. Our program was based largely in the process rather than on final products. The primary interest was on learning from each other and gaining fundamental skills in learning how to learn so that participants could continue to build on their work and even start new projects

With these three items in mind, we were able to clearly articulate goals and metrics for ourselves that we could share with potential sponsors. That made it easy on all sides to know if there was a fit or not. Let sponsors know what to expect for their contribution, whether social media promotion, logo placement, dedicated time at the events, etc.

Helpful hint: be sure to leverage the networks you've been building and who have likely contributed to past events. We included sponsorship tiers that clearly demonstrated what a donor could expect from their contribution. With that said, you may not need to raise the entirety of funding before the event. Since our events were bi-weekly and attracted a larger audience it was fairly easy to get sponsorship for the individual sessions. You can certainly be creative about income streams for this particular program. Again, be clear about what the sponsor can expect from their donation. It's generally worth their time to simply get access to the civic tech community and have their name associated with a program that targets a female demographic in adding diversity to technology fields. Look to sample sponsor kits to get you started.

Step 02: Execution

The process
  • Announcements

  • Applications and selection

  • Orientation and mentorship roles

  • Suggested curriculum schedule

  • Project pairing

  • Unexpected challenges

  • Communicating and having fun!

Announcements: Our program had an unusually quick turnaround time between deciding to run the series again this year and when we launched. While this enabled us to do the program, it also put strain on the organizers and narrowed the timeframe to polish our outputs. We consider this a lesson learned and would suggest making an announcement early on notifying potential participants of when the applications will open and then sending another reminder when they do open. It is also worthwhile to notify the relevant media channels. Rather than make a press release, we wrote a blog post and shared with our media contacts. 2-4 weeks as a minimum lead time for announcements is prudent and 6-8 weeks in organizing lead time would have been better.

Applications and selection: For the Philadelphia program we required an application for both mentors and mentees. This was in part because we wanted to ensure that both parties could make the time commitment necessary for the program. It also helps filter out those who may only be semi-interested in taking part. The program is largely supported by the participants, so it's key to have the right mixture of people. The program was open for application but there were also people who we directly asked if they would be interested in joining either as a mentor or mentee.

In addition to practical questions detailed in this sample application, here are some thoughts you might consider when selecting mentors and mentees:

  1. Why are they interested in participating?
  2. What do they expect and hope to get out of the experience?
  3. What do they want to contribute to the program?

Be explicit about expectations for program participants in the application. We had specific questions related to time commitments in the application and this helped to weed out applicants who would be unable to make a full commitment to the program. At the same time, do not be surprised if selected applicants experience life changes (e.g.: new job, unexpected move) that affect their ability to participate. It may come in handy to have a list of selected alternates to call on if participants drop out of the program early on.

Selection will largely be determined by how many mentees the program can support (funds, how many mentors do you have and how many civic tech projects are available). This year we capped our mentee limit at 10 women and aimed to have one or more mentors per mentee. However, the ratio is more important than the actual number.

Orientation and mentorship roles: Orientation refers to a mentor onboarding session that gives mentors an overview of how the program will run and the role they play. We wanted our program to be more mentor-driven, but what does that mean? Of course the mentor-mentee relationship is critical, and in addition to that it seemed sensible for mentors to drive the content of the curriculum. As we learned how to best equip mentors to take on this role it worked out well. To start, though, there were questions that we didn't know we should have been asking. The lack of clarity was obstructive because mentors seemed to be waiting for direction. Once we established a pattern of curriculum taught in a group setting by a mentor in the cohort, the routine could be carried out easily in the following weeks. Following this model, the mentors were able to teach subjects they truly cared about (or had extensive professional experience in) and the mentees were exposed to multiplicity of perspectives. We would also suggest having some amount training on "how to be a mentor" or at least common challenges as well as a platform to sharing resources among the mentors.

Suggested curriculum schedule: In its original conception, this was a program for beginner female devs who may or may not be familiar some basic concepts in open source but also programming more generally. This year we moved toward inviting females with basic programming knowledge to build on their existing skills rather than ask mentors to start from scratch with their mentees. Either path can work depending on the makeup of your respective communities. Our plan is to continue the program as a beginner's crash course focusing on introductory lessons and building a selection of generic projects to choose from and customize.

Project pairing: In the previous year we allowed mentees to pick the project they were interested in working on, but this allowed for some teams to be mismatched in skills and experience. To resolve this, we chose projects ahead of time, had maintainers present what the project was about to mentees, and documented the skills necessary to be able to make an impact on the project as well as other skills that could be gained from working on the project. In doing so, we allowed mentees to hone in on what they wanted to get out of their experience. For example, a mentee with some frontend dev experience may be interested in just improving those skills, or she may be interested in helping with the UX of a project in exchange for learning some backend skills. Following distribution of this project documentation to mentees, we allowed them to rank two projects and then the program coordinators worked to assemble project teams that were more equal than they had been previously. Not everyone got their first choice, but everyone seemed happy with their results.

Fostering social cohesion: A major lesson learned from the pilot program: who is actually in the program? The first year had little differentiation between Code for Philly and the mentorship program, especially because there were several people who were not part of the mentorship program who would join in on a project at any given point. Our approach to addressing this lesson learned includes the following:

  1. Dedicated breakout sessions. In the beginning of hack night (~6:30-7pm in our case) mentors lead an individualized
  2. Slack Team.
  3. GitHub Organization.
  4. *osmp-only events (happy hour, picnic, demo night)

Continuity among these resources helps participants know where to go when coming up against a problem.

Unexpected challenges: You might have planned everything perfectly, but sometimes circumstances are out of your control. For example, one of the requirements included in the application process is that every mentor and mentee agree to attend the bi-weekly sessions. Over the course of summer we had a number of absences both from the mentees and mentors. This might cause some frustration among the organizers for any number of reasons, but you have to ask yourself what is most important--is it that the applicants accepted into the program follow the pre-designated rules or is it the larger picture where people are having meaningful engagement on a regular basis. With Slack, participation is happening much more frequently than we have predicted otherwise. Part of the program is also learning as organizers that communities are organic and unpredictable. It's tempting to take these actions personally or as a reflection of competency. The reality is that these are all volunteers doing this work in their free time. Our role as organizers is to enable as best we can and accept that success cannot be measured by the same metrics in other cases. Keep in mind that this is an iteration, and think about how you might improve the circumstances in future efforts.

Step 03: Metrics, insights, and documentation

####Evaluation and definitions of success

  • But what did we really get done this summer? It’s the question on everyone’s mind. osmp boasts some big ideas, and no one wants to disappoint. It’s the job of the organizer to remind the cohort and ourselves that only so much can be done in 6 sessions. No one is going to ship a project or create a novel app that solves a major issue in the city. Just as valuable, and much more realistic for the timeline, is the exchange of ideas and disrupting entrenched norms. We’re building a community, we’re demonstrating how mentoring can change lives, and we’re unlocking the confidence women need to become more involved and empowered in the tech world. Let’s not undersell just what we’re attempting to do with a short, volunteer-driven effort.

  • The deliverable is process At Code for America they say that "strategy is the deliverable". Here we like to focus on process. Though the convention may be to look at the project and see how a person's contribution has moved it forward in a tangible way, this program helps disrupt definitions of what defines a "contribution". Projects are pushed forward in any number of ways including commits but also fresh perspectives, questions that challenge assumptions, and asking for explanation that might not otherwise exist. This process of learning works both ways. While the mentee is receiving brand new knowledge, the mentor is developing a sophisticated understanding through teaching. This level of insight improves the quality of work while simultaneously affirming all those who participate.

  • Appreciate, Celebrate, and Support osmp in so many ways lives and thrives because of the investment of everyone involved. Don’t let it go unnoticed! From your program coordinators to your mentors to your mentees--acknowledge their efforts and appreciate them. Encouragement is an especially helpful reminder for the mentees as they may struggle with confidence in the process of building it.

Celebrate what they’re doing by making it public and sharing it with the rest of the community. We created a webpage on the Code for Philly site that included the cohort with bios and quotes as well as the projects they were working on. The focus was on the skills being developed rather than specific contributions or improvements on the projects themselves. At the final demo event, the mentee experience was demonstrated in a presentation followed by fun “paper plate awards” for project mentors. A discussion group on the mentoring process added to the benefits on both sides.

Program coordinators supported mentees with surveys and checkins, keeping a constant pulse of the group to make sure the experience was going as smoothly as possible. They also wrote a dedicated blog post to update everyone at the midpoint as a way to show what others in the program were up to. The intent was to have a check-in survey every week, however this proved to be arduous for the mentees, who had enough to worry about with their projects. The checkins were reduced to an opening survey to get bios and expectations, a project first impressions survey, and a program exit survey. The responses to these surveys gave us content for blog posts and the web page, and allowed us to gauge mentee progress over the course of the program.

  • Documentation As you might have guessed from reaching the end of this guidebook, we found documentation to be pretty important. When caught up in the excitement of new ideas and ambitious work, it's easy to forego the documentation piece. But writing things down--ideas, practices and processes, and insights--helps other programs as well as your future organizers. We hope you'll continue this work by forking this guidebook for your city and including your own "best practices".

Beyond capturing knowledge for other programs to learn from, documentation is incredibly useful for organizational metrics and demonstrating impact. This provides clarity when asked how you know if you’re actually creating change and making a difference. Especially with programs such as these where the effects are intangible, narrative of the program as a whole brings some objectivity to an otherwise subjective, individual experience.

  • Keeping the cohort connected after the program While we hope everyone continues to take part in various civic tech events and activities, it would be difficult to track this with current resources. We asked the cohort to join the Code for Philly page, Meetup, Slack, and gave everyone osmp t-shirts. For now that seems to be enough and those who are really interested will want to come back on their own. We have to be sensitive to the fact that we have a community of volunteers, and they have other life commitments to manage in addition to what they do in their spare time.

  • Key takeaways

  1. Plan ahead
  2. Communicate early and often!
  3. Allow yourself to experiment; be kind with expectations and outcomes
  • Media

Philly's open source mentorship program is back and expanding to 3 cities

Why Philly's Open Source Mentorship Program is so impressive

This map shows where Philly city government spends its art funding

How is gentrification affecting Philadelphia's elderly population?

osmp 2016

  • Begin planning 2-3 months ahead of time Allow plenty of time to plan projects, solicit sponsorship, build a team, secure a consistent session space, promote the event with media and open houses, as well as the application open date, allow time for mentor orientation and curriculum development, plan socializing events ahead of time and send out calendar invitations ahead of time,

  • New projects or tweaking evergreen projects One successful project that came out of the 2015 program was a “blank” beginner project. Two mentors created a module and mentees chose datasets for an easy, custom beginner project. We’ll look to create multiple modules to choose from for beginners. Alternatively, we’ll offer evergreen projects that are largely finished but could benefit from small detailing.

  • Defined curriculum Next year we’ll require that mentees commit to weekly osmp sessions alternating between learning and practicing. Learning sessions can be guided by GDI instructors and TA’s executing the pre-determined curriculum. Practicing sessions will be with mentors working on Code for Philly projects. In between sessions mentees can stay in touch with their instructors and mentors via email and Slack.

  • Questions that remain What can be done ahead of time to optimize the short program time? We’ll look into how we might streamline the project pairing process and getting the ball rolling on project setup. How do we increase retention and engagement? While there is generally a good amount of excitement before the program, we experienced some attrition in both attendance and project contribution. This could likely be avoided, so we’ll explore what can be done within the program structure as well as the mentees themselves.

  • Continuing to experiment Finally, remember to keep in mind that everyone is doing their best including you. We’re looking for answers to complex questions. Stumbling along the way is a given, and that’s okay. Questions will remain, there will undoubtedly be criticisms of your efforts and feedback for improvements, and experiments that don’t have the effect you want or expect them to. Those who are participating don’t see the incredible amount of work that goes on behind the scenes. Know that doing any version of the program is better than not doing it at all. Don’t let “perfect” be the enemy of “good” because there’s always next year to do even better:] So we’ll keep experimenting and encouraging natural evolution. osmp is a learning experience for everyone including the organizers themselves. Woah. Meta.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment