On March 4th, 2024, the application phase kicked off for the Outreachy 2024 internship program. Fedora is proud to continue our participation in Outreachy again this year. We are offering three internships that will run from May to August 2024. This blog post is an orientation for both community members and new applicants to the Fedora community to understand Outreachy, what projects we are running this year, and some best practices for working with the Fedora community.

Read on for more details!

About Outreachy

From the Outreachy website:

Outreachy provides internships in open source and open science. Outreachy provides internships to people subject to systemic bias and impacted by underrepresentation in the technical industry where they are living. […] Outreachy internships are for applicants from around the world who face under-representation, and systemic bias or discrimination in the technology industry of their country. Our internships are completely remote, paid, and last three months.

outreachy.org

Outreachy is unique among internship programs because it includes a contribution phase, where applicants actually get involved and participate with the project before interns are selected. Project mentors evaluate applicants based on their participation and contributions in the community before they are selected. The application phase runs from March 4th, 2024 to April 2nd, 2024, when applicants must submit their final application.

So, because of this, many newcomers will start showing up in Fedora Project contributor spaces for the next couple of weeks. This can cause a flood of activity and engagement in project-related channels, which might be overwhelming if you are not expecting it! Fortunately, Fedora is lucky to have an excellent team of mentors running three projects this year.

Fedora Outreachy 2024 projects

Fedora is running three projects under Outreachy this year. The descriptions below are taken directly from the Outreachy website as shown to applicants:

Create a gateway from webhooks to Fedora Messaging

We currently have multiple applications that receive a webhook from an online app and turn the content into a Fedora Messaging message. Some of them are very old and are still using fedmsg, others are kinda recent and more maintainable (with tests, CI, etc).

It would simplify our setup and our maintenance to regroup all that in a single app with multiple endpoints. There’s been an investigation on this subject already: https://fedora-arc.readthedocs.io/en/latest/webhook2fedmsg/

Create an outreach strategy, write documentation, run a marketing campaign, and measure results

Join the Fedora community as a Community Architect Intern, working together with Fedora Project leadership and the Marketing Team to develop an outreach strategy, improve technical documentation, run and execute a marketing campaign, and measure results on efforts. This project proposal does not require a software engineering or computer science background, although this can be an asset.

May to August is an exciting time of year for the Fedora Project. We will release Fedora Linux 40 in early May, the DevConf CZ conference in Brno, Czechia will happen in June, and our flagship contributor conference, Flock, will take place in August. In addition, Fedora is in the process of defining a strategy for the global project until 2028. In a community as diverse and globally distributed as Fedora, communications are a key part to our success in boosting community awareness for key initiatives and also inviting participation in at the right times. We are looking for an intern who can work with stakeholders to build an outreach strategy for May to August, see it through from start to finish, and measure results on the impact of the outreach strategy.

A day in the life of a Community Architect Intern might look like the list of tasks below:

  • Write blog posts to share important dates or deadlines.
  • Improve documentation on how a community member can request support on promoting a new change in Fedora Linux.
  • Come up with social media campaigns for our various accounts.
  • Look over analytics and metrics about blog posts, social media posts, and other available data to figure out if a campaign is working or if it needs a new direction.
  • Create slideshow presentations that orient travelers to an event about key information, messaging about the Fedora Project, and how to get help promoting scheduled content (e.g. an accepted conference session by a Fedora speaker) on Fedora’s social media accounts.

This list is an example, but there is room for an intern to also bring their own ideas and creativity to help us share the story of the Fedora Project and why we have an amazing community.

Create a tool to use natural language to generate NetworkManager configuration

NetworkManager is the standard Linux network configuration tool suite. It supports a large range of networking setups, from desktop to servers and mobile and integrates well with popular desktop environments and server configuration management tools.

Nmstate is a library with an accompanying command line tool that manages host networking settings in a declarative manner. The networking state is described by a pre-defined schema. Reporting of current state and changes to it (desired state) both conform to the schema.

Linux System Roles is a project related to Ansible, a tool for automating configuration management, application deployment and software provisioning. The goal of linux system roles is to provide a consistent user interface, abstracting from any particular implementation of the linux subsystems, but trying to get the most out of the particular libraries on each one of them. The Network Linux System Role currently provides a unique configuration interface for network-scripts and NetworkManager.

The topic for this internship is enhancing this ecosystem with AI capabilities to improve the user experience for these projects.

While it is rather easy for users to describe in natural language what they would like to configure, it can be hard to find the right options or using the right syntax in configuration files. AI provides a way to use natural language. As part of the internship, the projects should be enhanced to provide user support TUI based on prompts such as “Configure network devices eth0 and eth1 in a linux bridge”.

Best practices for contributing to Fedora in Outreachy 2024

Are you an applicant for the Outreachy 2024 round? If so, this section is for you! Fedora has been around for over 20 years. There are norms and behaviors in our community that differ from other open source communities. Understanding these norms and following some best practices will help you be lead with the right forward on your journey contributing to Fedora.

Make your Fedora toolbox

There are a few important tools we use to communicate and get work done in Fedora:

  • Fedora Account System (FAS): Every Fedora contributor needs to register an account in the Fedora Account System, shortened to FAS. Your FAS account is like your digital passport in Fedora. You will use this account to log into different apps and services across the Fedora community.
    • Tip: Make sure to fill out your profile completely, including time zone, Matrix ID, and a profile picture. This will help others get to know you and also know when you might be asleep or offline!
  • Fedora Discussion: Our online forum. You use a FAS account to log in here. We use this for long-form discussions or things that need wider community input.
  • Fedora Chat: Our Matrix homeserver. You can use a FAS account to get a free Matrix account, or you can register one using Element. Anyone with a Matrix account can join Fedora Chat rooms. We use Matrix chat rooms for quick discussions or short-term planning and coordination.
  • Git forges: A git forge is a platform which uses git to collaborate. This can be for code or for issues to track, discuss, and plan work. Depending on what part of Fedora you are contributing to, this could be on GitLab, Pagure, or GitHub.

Setting yourself up on these tools will equip you for success. Regardless of which project you are contributing to during this application round, all Fedora contributors are encouraged to use these tools. Getting set up on these will help you be connected and informed about what is happening in Fedora.

Join important Fedora Chat rooms

Once you are oriented on Matrix, there are a few rooms that Outreachy applicants should make sure to join for the best experience:

  • Fedora: This is a Matrix Space that encompasses all of the Fedora rooms on Matrix. Joining this Matrix Space will make it easier to find all the Fedora rooms that exist on Matrix.
  • Fedora Mentoring: All Outreachy applicants should be in this room, as it is a general room for guidance and questions about contributing to Fedora. Mentors of other Outreachy projects are also in this room, so there is a lot of mentor knowledge there. Make sure you are joined here!
  • Announcements: Another good room to get a pulse on what is happening in the community. New blog posts automatically get posted here by a chat bot.
  • Fedora Meeting: For nearly 20 years, Fedora has run team and project meetings over chat rooms. We even have a bot to help us with those meetings, and the bot is in this room! You can see other teams having meetings there too, which will help give you a view of what all is happening in Fedora.

Introduce yourself on Fedora Discussion

Once you create an account in the Fedora Account System, you can log into Fedora Discussion. Check out this Outreachy 2024 welcome topic. Mentors and applicants are both encouraged to check out this topic and answer a few icebreaker questions so we can all get to know each other better.

Join the Fedora Outreachy 2024 community

If you want to stay informed with the Fedora Mentored Projects programs, please join #mentoring:fedoraproject.org on Fedora Chat and/or watch the #mentored-projects-team tag on Fedora Discussion. These are main places where we coordinate on our mentored projects. We also welcome contributors who are willing to be friendly faces to newcomers to the Fedora community. Mentors are the faces of the Fedora community, and it can have a lasting impression on a newcomer to have a friendly face welcome them into the community.

I wish the very best to all Outreachy 2024 applicants this round. Good luck on your final applications!