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.
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.
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.
- Lessons learnt from building a distributed system in Rust
- FOSDEM 2024
- Introducing Web UI QAnvas and new features of Quality Assurance Daemon
- 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
- Long Term Maintainability
- 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
- Porting GNOME OS to Microchip's PolarFire Icicle Kit
- YAML Schemas: Validating Data without Writing Code
- Deterministic Construction Service
- Codethink becomes a Microchip Design Partner
- Hamsa: Using an NVIDIA Jetson Development Kit to create a fully open-source Robot Nano Hand
- Using STPA with software-intensive systems
- Codethink achieves ISO 26262 ASIL D Tool Certification
- RISC-V: running GNOME OS on SiFive hardware for the first time
- Automated Linux kernel testing
- Native compilation on Arm servers is so much faster now
- Higher quality of FOSS: How we are helping GNOME to improve their test pipeline
- RISC-V: A Small Hardware Project
- Why aligning with open source mainline is the way to go
- Build Meetup 2021: The BuildTeam Community Event
- A new approach to software safety
- Does the "Hypocrite Commits" incident prove that Linux is unsafe?
- ABI Stability in freedesktop-sdk
- Why your organisation needs to embrace working in the open-source ecosystem
- RISC-V User space access Oops
- Tracking Players at the Edge: An Overview
- What is Remote Asset API?
- Running a devroom at FOSDEM: Safety and Open Source
- Meet the codethings: Understanding BuildGrid and BuildBox with Beth White
- Streamlining Terraform configuration with Jsonnet
- Bloodlight: Designing a Heart Rate Sensor with STM32, LEDs and Photodiode
- Making the tech industry more inclusive for women
- Bloodlight Case Design: Lessons Learned
- Safety is a system property, not a software property
- Full archive