Join the 85,000 open source advocates who receive our giveaway alerts and article roundups.
OpenStack Summit interview with Victoria Martinez de la Cruz
How to be a good OpenStack mentor
Get the newsletter
Victoria Martinez de la Cruz wants to make mentoring within OpenStack an excellent experience.
As a software engineer at Red Hat and a coordinator for both Outreachy and Google Summer of Code, Victoria is always eager to get new people involved with the technologies, projects, and philosophies of open source. She is also the co-founder of the LinuxChix Argentina chapter, an organization that encourages more women to get involved with open source technologies.
At the Austin OpenStack Summit, Victoria Martinez de la Cruz will be speaking on a panel called Newcomers Need You, How to Be A Good Mentor. I caught up with her to ask a little bit more about this panel and her experience in mentoring. In addition to her talk on mentoring, Victoria is also giving a talk with her colleague Ryan Brown on Zaqar messaging for microservices and IoT.
What resources do programs like Outreachy and Google Summer of Code (GSoC) provide to participants and mentoring organizations?
Both Outreachy and GSoC act as hubs for interested candidates to reach people within, and start contributing to open source organizations. The first, Outreachy, is more targeted to underrepresented groups in tech and it's broader with regards to the type of activities that can be proposed for the internship in the sense that not only coding tasks are available but there is also room for documentation, translation, design, and marketing projects. The second one, GSoC is targeted to students and only involves coding projects.
In these internships, interns are paired with mentors that guide them through the entire workflow: getting started with their contributor accounts and development environments, breaking the ice with the rest of the community, and learning about the tools and processes required to accomplish their internship task and helping them to keep in the loop after the internship ends. A mentor, in this context, is someone that helps them not only with practical aspects but also with career advice. Great relationships are made in this process; at least that's what happened with my mentor and friend, Julie Pichon.
How can providing mentors help increase the diversity of participants in a project like OpenStack?
OpenStack is a huge and complex project, so most people get overwhelmed when they decide to start contributing and start reading what they need to do. Also, projects move too fast and it's very easy to lose track of things if you are not familiar with the dynamic. If you also add the diversity and/or seniority barriers, things get even harder.
Having a mentor, in this scenario, is very valuable. Someone that is contributing in a fulltime fashion and has been involved with the community for some time already knows which tools are being used and why, as well as what to do in certain situations (both technical and community related) and why certain discussions going on. The mentor is aware of the context, and they know what to do or who to reach out to if they don't, and this makes them an excellent reference for people just getting started. Mentors understand the situation of the interns, and can help them to overcome any barrier they may encounter and not only support them professionally, but also emotionally. This is extremely helpful to create a good working environment in which people wants to continue working.
What are some of the biggest challenges for people joining an open source project through a mentoring program, and how can OpenStack and other projects help address these challenges?
What I saw in the last couple of months serving as a coordinator for Outreachy and GSoC internships is that applicants sometimes don't have access to resources to set up their working environments. This is even more true for GSoC, in which coding tasks are the only choice.
Currently, setting up a relatively user-friendly development environment for OpenStack takes spinning up a virtual machine with Fedora 22 or Ubuntu 14.04 on it (we always recommend applicants to use the server version to save some resources) and to run within the VM an script, Devstack, that sets up an all-in-one cloud. The initial VM you need to create requires at least two processor cores, four gigs of memory, and 25 gigs of hard drive space. So, your physical machine needs to have the double in order to work decently. The requirements are even higher for projects like Trove or Sahara that require even more resources than the underlying infrastructure projects. So, you can imagine that for this cases applicants get easily frustrated and coordinators and mentors cannot help them much.
I have been dealing with this situation by providing access to my own server, but certainly it's something that doesn't scale very well. Plus, I can only provide it for the short-term, not for the full length of the internship. I don't have a clear answer on how to deal with this challenge in a better way though.
What one piece of advice would you give to someone thinking of becoming a mentor in an open source project?
I'd suggest to new mentors to do their best to keep good communication and to get to know their mentees. Not only relate with them in the a professional way, but also get to know their personal side. For this, make sure to have frequent one-on-one meetings (say, once a week). In addition to asking them about their progress on the tasks they have assigned and what are they planning to do in the upcoming days. Also ask them about how are they feeling with the internship and, apart from work, if there is something they want to share. Most interns usually hesitate on pinging the mentor when there is something wrong, whether it is something related to their internship task or their personal life. This lack of communication leads to misconceptions, and that's usually not a good thing.
Aside from this talk, what are you most excited about at the Austin OpenStack Summit?
I cannot wait to join the design sessions for the projects I'm working on and define in what we will be focusing on in the upcoming months. Also, I'm very interested on hearing more from users and operators to know what is working for them and what kind of blockers they are facing. I think that getting their feedback is truly valuable for engineers developing OpenStack. Last but not least, the OpenStack community is one of the best groups of people I ever had the chance to hang out with, so I'm really looking forward to meeting all of them and, with some luck, making some new friends.