Welcome!

I am also a new infra contributor. I'm still learning my way around the project.

I will say - it is currently not easy to onboard here. Everyone knows this, and there has been a lot of talk about how to fix it. But I think the most important thing a new contributor can do is to think about what onboarding experience you had *hoped* to see and what difficulties you've encountered, and then at minimum write those down and share them. It's very difficult for people who have been in a place for a long time to "see what isn't there", e.g. which docs are needed or which old projects were confusing red herrings that need to be cleaned up. (See this classic article: https://danluu.com/wat/)

I'm currently doing a mix of 1) updating docs as I figure things out, and 2) taking TODO notes of things I'd like to improve later once I understand everything a little better. Docs contributions are always a great place to start.

For basic project orientation:
- Get plugged into all the text comms channels, including the Community Blog. - I suggest turning on email notifications for repos and Discussion tags that you are interested in, to get a feel for what's happening there. Use your email client's automatic folder filing capabilities liberally to stay sane. - Even though I prefer text, I highly recommend checking out the 2024 Flock playlist on YouTube as well as the podcast. Both of these have given me a lot of the project context that isn't really documented anywhere else.

As for skills and tools:
- First, you should ask yourself -- what kind of work do you want to do? Broadly speaking, do you want to run linux servers or write apps? Because there is a line here (albeit a very blurry line) between Infrastructure and Apps, and a lot of the code stuff is on the Apps side of that line. So you might want to look in that direction too. - For apps, you already know Python and Javascript. That's great, as most of the code I've seen so far is using one of those. - You'll need intermediate-level git skills no matter what you do, such as such as sync'ing a fork by hand, rebasing, and signing off on commits. Probably stuff you haven't had to do in smaller teams or on Github. - For infra you will need to know Ansible, and our ansible repo is rather large and somewhat complex. So even if you know Ansible you may need to spend some time staring at this to get your head around it. - Some services have started to move to the OpenShift flavor of Kubernetes. And whether you're ultimately more App or Infra, you'll need to know the basics. If you've never worked with Kubernetes before, I suggest to start with vanilla flavors such as minikube before checking out openshift.


Regarding your questions about workflow and team coordination:

1.
A lot of the "IT" style work that this team does is what's called "unplanned work". Meaning, something broke, or somebody is requesting a change to permissions. Most of this work is not very collaborative by nature -- a single person who knows how to solve the issue is going to just go solve it. So there isn't a Kanban board or anything for that stuff. Tickets are generally handled as Issues in various repositories, and generic infrastructure tickets are filed in our infrastructure repo: https://pagure.io/fedora-infrastructure/issues

You may find it useful to Watch that repo to get email alerts on tickets as they come up. You could also look at some recently-closed tickets and associated PRs to get a feel for the flow and how problems were solved.

2.
Not all of the work is unplanned work (thankfully!). In my opinion, we actually have a lot of room for improvement in making that work visible in a way where others can contribute (or even know what initiatives are in progress / on deck / goals for the year / nice to have / etc.) It seems that there have been various efforts in the past to achieve this, but I get the sense that those efforts didn't have a lot of return on investment in terms of added contributor help, so things naturally returned to the lowest energy state.

To get involved with these larger projects, keep an ear out for things that are happening (hint: look in recent public status updates), look for something that sounds interesting, and then reach out and ask people directly (in public spaces, not DM) where you can pitch in. Most large initiatives here seem to be handled by one or two people, so there isn't a "team" to go talk to.

Worst case: let the team know in the weekly meeting exactly how available you plan to be over the next week (10 hours? 20?), and ask for work. Nobody can resist letting all that free time go to waste when it's on the table like that :)


Welcome again to being the newest newbie! You won't have that title for long :) Feel free to reach me anywhere you find me.

Michael Winters



  * *Familiarize myself with the workflow of Infrastructure.* I have no
    idea where I could help, it feels a bit daunting. I have been
    reading the tickets, the map of critical services, about each app,
    and I'm yet to read the sysadmin and developer guide. So I believe
    familiarizing myself with the workflow would make contributing easier.


  * What things can I do to know how the team works? Besides reading the
    docs and attending the meetings
  * What advice would you give? You could answer this in a professional
    or personal way. I see it as a way to get to know you better and
    share wisdom



--
_______________________________________________
infrastructure mailing list -- infrastructure@lists.fedoraproject.org
To unsubscribe send an email to infrastructure-le...@lists.fedoraproject.org
Fedora Code of Conduct: 
https://docs.fedoraproject.org/en-US/project/code-of-conduct/
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: 
https://lists.fedoraproject.org/archives/list/infrastructure@lists.fedoraproject.org
Do not reply to spam, report it: 
https://pagure.io/fedora-infrastructure/new_issue

Reply via email to