Sam Thursfield, a software engineer at Codethink, has given up his free time to become an open source mentor for Outreachy. We spoke to Sam, to discover what this means.
What is Outreachy?
Outreachy is a programme that provides internships in open source and open science. These internship projects may include programming, research, user experience, documentation, graphical design, data science, marketing, user advocacy, event planning and more. The internships are designed to support those subject to systematic bias, or those who are underrepresented in the tech industry.
Becoming a mentor
Sam was previously a teacher who spent a few formative years teaching English. As a result, he wanted to use his teaching skills as part of his day to day role. Outreachy provided a platform to marry his passion for software engineering with his teaching skills.
In addition to the above, Sam explained that open source projects depend largely on getting people involved to do that work. Outreachy provides a great platform to allow people to grow their skills and do exactly this.
The journey into open source
Sam started his journey into the world of open source software engineering in the late 90s. Windows wasn’t doing what he needed it to, so he installed Linux. He began following blogs about GNOME, and slowly learning more and more about the communities available.
Sam says: “Open source is more about the people involved in the process than the code. It’s a real community."
Before starting this journey, Sam didn’t realise how software was made. He learnt as much as he could before committing his first merge requests (MRs), and gradually got more and more involved.
Mentoring with Outreachy
The Outreachy mentorship programme runs twice a year. One cycle focusing on the Northern Hemisphere and one cycle focusing on the Southern Hemisphere.
Prior to selecting a project, the prospective mentees are asked to spend one month before committing to a project, reviewing all the projects on offer. They are then encouraged to make a contribution to a project. This process both tests how accessible the projects are so the mentors can iterate on them, as well as giving the students a chance to make an informed decision about the project that they choose.
Sam is leading a project which concentrates on extending GNOME OS end-to-end tests that use openQA. The mentorship group comprises of two mentors (one of which is Sam), and two mentees. The interns are supported with a closed channel for the mentorship group where they can ask for help when needed; face-to-face video calls; as well as occasional 1-2-1s.
Mentee benefits
Outreachy also supports the students with guidance on how to develop their wider skills. There will be regular topics that they discuss with their mentors, and the learnings are published in the form of a blog.
As the mentees advance through the programme, they deliver more and more commits to an open source project. This not only develops their skills but also works to develop an open work portfolio for them, a bit like an open CV. This will be something they can use in future to showcase to a prospective employer.
In short, the Outreachy programme provides a great stepping stone for kick-starting a career in open source software development in general.
Getting involved
If you are keen to get involved in a future programme, Sam shares a few top tips:
- Start early
- Choose a project you are genuinely interested in
- Ask for help
- Make sure you join the project channels
If you’d like to join a future project, check out the Outreachy website to learn more.
Other Content
- Codethink/Arm White Paper: Arm STLs at Runtime on Linux
- Speed Up Embedded Software Testing with QEMU
- Open Source Summit Europe (OSSEU) 2024
- Watch: Real-time Scheduling Fault Simulation
- Improving systemd’s integration testing infrastructure (part 2)
- Meet the Team: Laurence Urhegyi
- A new way to develop on Linux - Part II
- Shaping the future of GNOME: GUADEC 2024
- Developing a cryptographically secure bootloader for RISC-V in Rust
- Meet the Team: Philip Martin
- Improving systemd’s integration testing infrastructure (part 1)
- A new way to develop on Linux
- RISC-V Summit Europe 2024
- Safety Frontier: A Retrospective on ELISA
- Codethink sponsors Outreachy
- The Linux kernel is a CNA - so what?
- GNOME OS + systemd-sysupdate
- Codethink has achieved ISO 9001:2015 accreditation
- Outreachy internship: Improving end-to-end testing for GNOME
- Lessons learnt from building a distributed system in Rust
- FOSDEM 2024
- QAnvas and QAD: Streamlining UI Testing for Embedded Systems
- Using Git LFS and fast-import together
- Testing in a Box: Streamlining Embedded Systems Testing
- SDV Europe: What Codethink has planned
- How do Hardware Security Modules impact the automotive sector? The final blog in a three part discussion
- How do Hardware Security Modules impact the automotive sector? Part two of a three part discussion
- How do Hardware Security Modules impact the automotive sector? Part one of a three part discussion
- Automated Kernel Testing on RISC-V Hardware
- Automated end-to-end testing for Android Automotive on Hardware
- GUADEC 2023
- Embedded Open Source Summit 2023
- RISC-V: Exploring a Bug in Stack Unwinding
- Adding RISC-V Vector Cryptography Extension support to QEMU
- Introducing Our New Open-Source Tool: Quality Assurance Daemon
- Achieving Long-Term Maintainability with Open Source
- FOSDEM 2023
- Think before you Pip
- BuildStream 2.0 is here, just in time for the holidays!
- A Valuable & Comprehensive Firmware Code Review by Codethink
- GNOME OS & Atomic Upgrades on the PinePhone
- Flathub-Codethink Collaboration
- Codethink proudly sponsors GUADEC 2022
- Tracking Down an Obscure Reproducibility Bug in glibc
- Web app test automation with `cdt`
- FOSDEM Testing and Automation talk
- Protecting your project from dependency access problems
- Full archive