Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Journey as a Google Summer of Code student with Systers

Journey as a Google Summer of Code student with Systers

In this talk, I share my experience as a Google Summer of Code student with Systers Open Source community. I share how I contributed to Systers Community, aside from coding, because Open Source is not just about code and there’s a place for everyone. I present my story from the moment I applied to Systers until I finished the program and remained in the community.

Isabel Costa

March 07, 2019
Tweet

More Decks by Isabel Costa

Other Decks in Technology

Transcript

  1. 2 ©2017 AnitaB.org I am ... • Software Developer from

    Portugal • GSoC2018 student with Systers • Open Source enthusiast • Maintainer at Systers Open Source
  2. 3 ©2017 AnitaB.org What is Google Summer of Code? “Google

    Summer of Code is a global program focused on bringing more student developers into open source software development. Students work with an open source organization on a 3 month programming project during their break from school.” from https://summerofcode.withgoogle.com/
  3. 9 ©2017 AnitaB.org Came up with an idea Help women

    in tech mentor each other during a certain period of time about career development topics.
  4. 10 ©2017 AnitaB.org Came up with an idea Mission: Help

    women in tech mentor each other during a certain period of time about career development topics. Project: Build a Mobile application to find mentors and mentees interested in the same topics, to later be paired and learn together.
  5. 11 ©2017 AnitaB.org Started crafting the Proposal Answered questions about

    … • my background • experience with open source • experience with remote work Started describing my project … • motivation • application features • project timeline with deliverables
  6. 15 ©2017 AnitaB.org Engaging with community Contributing however I could

    … • helped other students • tested projects • reported an issue and submitted a PR for that • participated on Slack discussions and open sessions
  7. 19 ©2017 AnitaB.org Getting proposal review ... Mentors and Admins

    started reviewing and leaving notes on my proposal!
  8. 20 ©2017 AnitaB.org Improving Proposal According to feedback ... •

    Improving Proposal according to review • Make it stronger and stronger • Improving Timeline • Defining backend API (high level) • Data modeling • Defining Required, Nice to have and Future features • Improved Motivation, Benefits for the community, … • Ended up with 19 pages proposal
  9. 23 ©2017 AnitaB.org Continue contributing ... After proposal submission I

    continued engaging … • created a Google Docs to document Community Open Sessions • participated in Slack discussions • started conversations about the GitHub Wiki sidebar • thought of ways to improve documentation
  10. 26 ©2017 AnitaB.org Community Bonding Time to ... • Understand

    Student & Mentor Expectations • Refine the first coding phase tasks • Created an interactive app wireframe • Have first meetings with mentors • Get to know mentors, admins and students • Refining Database model • Get familiar with workflow and tools
  11. 27 ©2017 AnitaB.org Student Expectations Summary of expectations ... •

    Discuss project in public • Share 3 scrums check-ins per week on Slack • Write blog post per week • Write weekly report • Attend weekly meetings (thursday) • Follow code of conduct
  12. 31 ©2017 AnitaB.org Coding Phase I Early beginnings … •

    Learned how to build a flask app w/ python • Learned how to work on Backend • Learned more about Open Source workflow • Learned how to do tests for flask apps • Build first public API methods • Getting used to writing blog, weekly reports, scrum check-ins
  13. 32 ©2017 AnitaB.org Coding Phase II Becoming more familiar with

    flask … • Continued building backend API • Refined Data Model • Presented a Demo as preparation for final demo
  14. 33 ©2017 AnitaB.org Coding Phase III Began developing Android app

    … • Created QA test cases for the community • Fixed bugs I found and reported by others • Studied Android App architectures • Defined Minimum Functional Product ◦ to prioritize tasks • Started building initial screens
  15. 36 ©2017 AnitaB.org I was doing many things Documentation Quality

    Assurance Research / Outreach Design Code Management
  16. 37 ©2017 AnitaB.org Documentation GitHub Wiki • Meeting Minutes docs

    • Quality Assurance docs • Backend & Android docs • Blog Posts • Weekly Reports • Scrum Check-ins
  17. 39 ©2017 AnitaB.org Final Week(s) Wrapping up work ... •

    Submit final code • Complete final Evaluation • Present Final Demo on YouTube • Write Final Blog Post • Create Final Product GitHub Gist • Document future work
  18. 41 ©2017 AnitaB.org End of GSoC journey • Was nominated

    as Most Outstanding Student • Passed 3rd Evaluation Phase • Finally took some time to rest • Became Mentorship System Maintainer
  19. 43 ©2017 AnitaB.org What did I learn? So many things

    ... • Open Source is not just about code • Contributing to Open Source takes effort • Not all communities and project work the same way • My “passion” for Documentation • Working remote work is a powerful thing
  20. 44 ©2017 AnitaB.org Impact on my career and my life

    ... • Went represent Systers Open Source organization at GHC 2019 • Learn how to develop a Backend REST API • Became an Open Source maintainer • Did 2 public talks about Open Source (at a meetup and conference) • Met some incredible people
  21. 45 ©2017 AnitaB.org More information ... systers/mentorship-android About my journey:

    • Isabel Costa GSoC Medium Blog • GitHub Wiki weekly reports • Scrum Report check-ins About Systers Open Source: • systers.io • github.com/systers • Systers Open Source Medium systers/mentorship-backend