 Hey, hello good to have you here. I'm Karolina. I am working as a software engineer for Red Hat But today I'm here not as a company for representative But just I myself as a person who start a journey with open source that's so far a time ago even though my experience in IT is a is a bigger than that and Inspiration for that tag was that I haven't met much other people like me who just started So I thought it will be valuable to share my experience and my observation how this whole process looked like and how did I start it? I'm not very great about talking on myself. So here is just set of the subjects and Concepts. I'm dealing on my daily basis job. I Mostly work and contribute for RDO project. We are shipping RPM packages of OpenStack for a centos so mostly I'm doing packaging devopsing and bugging also some coding But let's go to the question. How did I meet open source? when I was studying IT in Vroswaf, I was fascinated about networking and security and It became obvious for me that you can do it without Tooling tooling which is available for a for a Linux and studying for Linux mostly more means that they are open source So I did that to large students project first was for my my engineer project and this is a This was a sandbox network for a security research and testing. It was a kind of honeypot I was using technologies like snort and like nmap Kali Linux and security union and then on my master sizes. I was testing and benchmarking Distributed file systems Few time ago after I was graduated. I realized that two of the systems I was testing a Glaster and safe was a redhead project if I didn't know when I was doing my job Of course, self appears the best from from all this. I will add I tested Then when I initially knew some mil nukes tooling and was really amazed that this wonderful tool It's so powerful. It's open. It's free for everyone and that idea was amazing for me That's why I meant to force them. This is a large conference for our open source in a in a brothel and Then I sell so some community from from a closer view and it was really amazing experience for me How I didn't met open source was on students interest groups and it's a pity that There is no any At least at my university any way to encourage people at the university when they actually choosing their way or their careers path To encourage them to go to go to open source Also, no all my friends or colleagues from studies was contributing to open source So, you know, I was like lonely in this topic Why people enter the open source? There are many reasons and they are mostly mixed But there are some few which are most solid let's say Generally people would like to gain a new skills They are starting their project new projects some new adventure to just learn a new speak new things and they decide to just share it with a wider range of a people Also, they are starting something new because they need it for their work or for their other projects and just put it on a GitHub as an open source on a product on a proper license Sometimes they just need development in the desired project So they just missing some face at some features or they discovered the bug which is really Painful for them and does that just decide to fix the job or did the feature and that's why they appears to be a open source contributors and The third way is I would say rare, but It's going to is going to be more Often to be hired to contribute to open source project and this is a my path of growing in open source And speaking about motivation Let's say there are also some more soft non-technical ones like people like teaching others people like Sharing the knowledge the people have a need to opt to belonging and all these motivation are mixed But it's worth to remember that most of their motivations are not materialistic No matter what motivation stays behind people somehow has to start the work and I observed that three mandatory pillars of a good start on boarding mentoring and documentation Absolute base of start if any kind of projects no matter if commercial of open source is an onboarding process for open source Compoco projects is a crucial for gaining new contributors and for commercial one It's providing smooth and quicker start and also it helps to reduce stress and just make the start quicker So it's good and boarding process is shortening the time when people stops to be a cost for a company and Starts to actually provide the value because don't get me wrong here Even the best engineers are a cost at the beginning of course until the time they are get into the project and get enough knowledge to provide value Speaking about onboarding it's also worth to mention Some kind of vicious circle if we have a project where Contributors or developers are overwhelmed with a work. They don't have a time to onboard new new people They don't have a time for all doing at boardings or the stuff just let me leave me alone I want to how I want to just work but if they don't Onboard new people properly. They still have too much work because they don't have anyone to help them That's why it's very important to have this process because it will help with it and automate some stuff for any new people Everyone hates writing documentation including me But good documentation is a huge support not only for a newbies, but also for our experienced contributors and maintainers and This is a far more important tool than just the opportunity to say RTFM Think about it in more materialistic way When there is with some process is undocumented every new people who is dealing with it has to do some let's say will engineering on it and it was a time and Time as we said is a cost so if we have some I Had I heard a quite good Description about such situation it calls tribal knowledge and this is a piece of undocumented Project, which is so obvious for a maintainer that they didn't even mention it any kind of documentation It can be for example setting a flag before a infra deployment And you know you just start your deployment you are doing everything and you are meeting all these horrible bugs Which you'd never seen before before that and you are struggling with it. This point you'll be spending a time digging inside and Ways of time. Yeah, you know, I know that trying is a way of process And the way to growth, but you know come on it's pointless this time can be spent for something more valuable And you know it's enough to have this flag documented and that's why it's called tribal knowledge Also, speaking of documentation, there is a one important note Keep it up to date because if your documentation is outdated People who are using kids users or new beach or new contributors are Learning that they cannot trust this documentation and they will keep you asked anyway and this competition is you know Not you don't need it because it's outdated and the third pillar of a good start is having a mentor as a Mentor I understand the person who on a partnership partnership level will show you the project will explain you the rules show you how the team Team works, but also this is a somebody who will grow you on other Or in other ways than only technicals. So this is somebody who also who understand what do you like? who will Help you to clarify the way of a development you want to go as a as a developer The good mentor should also understand the tasks and helps to provide the proper task which will grow the newbie and which newbie will like and I have to say that I had an amazing amazing mentor on RDO and If you will only have a possibility to find a mentor at your company Please do it because I think that having a mentor is a kind of highway on a personal development world in All this stuff I mentioned there is a challenges First of them is a remote life and if you work for cooperation You at least have some chances for for office if you work like me. So hundreds percent remotely Prepare also for a remote communication and kind of remote life. I Have to say that COVID helped develop the culture of remote working in Poland where I when I work Covid showed for many employers that remote working is possible It's efficient and people actually during the job when they are at home and Also, I have to say that it proved it to me because for a COVID I never thought that I had enough courage a knife Self-confidence to even try to work remotely and not in a native language. I Have to say that comic COVID just leave no choice and Speaking about language English is a not native language for most of us and this fact is often neglected people are afraid of Asking for repetition or just saying that they don't understand in fear of being known as incompetent incompetent and It's good to remember when some problems or issue appeared It may be not related to know technical abilities of a person or just a simple basic communication problem related to language when I start my work at red hat and I get know that I will have a meetings normal stuff, but in written on IRC I Was so shocked. I couldn't even you know understand. How is that possible that the meetings are written and? Also, I thought that IRC is a communication method which appears only on xkcd mems, but it's still alive Yep, and Now from the perspective here also IRC is our official channel communication for Open-stack community. So I understand why we are using IRC. It has its advantages because it's very easy to use for a whole community But that time I was very very very shocked and didn't prepare for that and I say that Fedora did it nice way because they moved for some kind. Let's say more modern communicator because they move the matrix, which is very, you know, nice web web user interface and you know, it's easier for anyone from outside to just use it and Challenge about communication is to just choose a platform where anyone who would like to have an influence for the project Will be able to use it communities are Relations communities are people so building correlations inside the community and on the way community and Commercial world is very very important And this is a huge role of community architects to just build these relations and events like that Events like for them are very important for the communities because this is a place where you actually go Meet people exchange your experience exchange your ideas and that's why how community is growing also, this is very important to inside this community build a welcoming culture Because you know you when you are out of the communities is very nice and I experienced that that you are just welcome here We we are happy having to have you here. It's very it's very good for the beginning Also, it's very important to have a safe space to ask to not be afraid to you know ask and and grow and solve your solve your issues Yeah, the governance of the project The world of corporations and the road of open source differs in corporate world We have words like tickets KPIs performance measurements, you know it and At the same way, they are not existing in Up in open source communities is just not the way they are working And this is a challenge to find a way to find the balance between these two approaches And the workflow in those projects The way how you are making decisions the way how you're making even the meetings how you are sharing the tasks all this All this issue to be solved. They cannot be the same day way in community like they are done in a corporate because Voice of the community has to be taken into an account when when while making decisions or while doing just a normal basic Duties I have some teams for other newbies and Fear most important important and I think it's the surprise just ask Use the time we just consider as being your training of the onboarding process as your time to be you know Safe to ask because everyone are expecting that you will be asked that you will don't know that you will looking for Looking for a solutions and it's normal and that's okay, and you should take best of the time, but you even can Trying to ask proper and valuable questions. You have to first try to do something so If you want to ask somebody a question Don't let anyone to answer you with let me Google for you or here is a documentation. Just read it Try to avoid that because you know it's a waste of time and I think kind of lack of respect and First just try to do the job. Okay. It's normal that you probably will faint or probably I don't know you stuck on something. Yeah, but you at least try at least do some effort to solve the problem And this is something which will improve your skills make friends Talk with as many people as possible because you will never know with whom you will collaborate So this is on board this onboarding time This usually you know one one four three points depends on the company or community Is the best time to meet new people to make new friends like saying hi, I'm new here and Just make networking between people and as I as I said if we only have a Possibility to find a mentor do it because The there can they can there can be a mentoring program in your company or in your community Community that you even don't even know about it. So maybe you can just ask your manager or just try to find one Because he will only be profitable out of having a having a mentor tips for mentors and As I say keep your documentation up to date. I think I Argumented it quite quite enough so I won't repeat that and Again this world of asking but now asking from a different perspective You know why asking is so important because this is a route of communication. So people should The the communication should not be only in one way should be in both ways no matter if it's your mentor If it's your manager, you should just exchange your communication I know this is very trivial as I'm saying but what I'm observing people don't talk So they're just sometimes they are not even aware about the problems of each others and if you are a mentor I Mean when you are in a situation that you are you give some tasks to your newbie for example Rita Read this documentation or try this tool After the time ask your newbie and try to figure it out. How is the level understanding of the newbie? What did this newbie? Got from this reading got from this tutorial Because this is a great way for you to understand how the newbie is looking at the projects also this opportunity to Indicate the moments in your projects, which are order badly documented or unclear or just undocumented because you as a mentor Probably you don't have this this perspective because there are four so long in this project that too many stuff are too obvious for you So this is an opportunity to you to have a different perspective on your project and What's important if this asking? Remember to emphasize that this is not an exam not any kind of assessment because your newbie can feel a little bit In danger in this fire of your questions Just let them know that you know just I'm asking it's not assessment. It's important because without it your relations can be Distracted Give tasks to help understand, you know when you are not only not only give a Documentation to read but also give a small task to use this new stuff You just learned when I was learning our delorean tools our very versatile tool for building packages I got a task. Hey, just try to build this one package with this tool and It's completely changed my whole perspective for reading this this documentation because I was looking for a some Complete concrete informations in this in this documentation Which will allows me to allows me to solve the problem I've got and I think this is a very valuable way of teaching new stuff learning new stuff Give away background Not only explain the solution of problem or a bug but also show how and why this happened This is an opportunity to explain the workflows and actually architecture in the project because it's actually having an anchor If a problem because newbie meets something did some some effort to solve the problem so if they are inside the context, so it's very easy to make a notes about it and explain the context around it and Hold your horses Don't try to explain everything at the beginning because I'm sure I'm sure you will have to repeat it later And general tips for a good start for anyone Have a definition of don't this is something I really like to have I mean that when you are describing making a description of a tasks in some kind of tax manas management Define input and output of the tasks in a clear way Describe this task that way if you are for example go for a holiday and someone will do the task after you It will be totally clear for for this person And I think this is a this is a good description enough good description Don't assume that somebody will understand what you mean without this description. That's why it's so important and Guessing is never an option because there's a very high probability that you will don't get what you expected describe the role When somebody's new is coming It's very useful to define what this person was going to do after the onboarding process and it's like setting an aim and setting a target for whatever they did and When the new when the person will go among through this through this Onboarding process will be very sensitive for information which will be related to the job which they are gonna be inside after the onboarding process for example, let's say If you are a mentor of a manager, let's say at the beginning. Hey, we are needed the person who will be in charge of Developing our infra or a charge or new CI jobs and you know Hold this onboarding then you'll be will be preparing itself for taking these responsibilities Show collaboration with other teams or projects As I said, it's very useful to know where to look for help and being able to ask it, of course And who is responsible for what and the onboarding process is a great thing for that time for that And last but not least give yourself and themselves a time As a mentor be patient and don't judge People have a different way of thinking different talents different approaches to problem as we are trying to build a diverse environment in our works Also be ready that sometimes you will not only develop someone on a technical way or or to someone these hard skills also be prepared that you will have to teach also the soft skills like problem-solving Abilities or doing dependency or required management or just way of speaking or discussing be ready for that as a mentor and if you are a newbie don't expect that you will be great since Every every first day any first day or even a first month because you don't have an any idea about the complexity of the problem or the projects and Don't care too much about the failures because if you failed it means that you tried and trying is something which is most important For make you growing Thank you very much for the attention I'm here for you and I will very appreciate your feedback and if you have any questions. I'm here for you But I can see that You mean by giving a task for Making documentation up-to-date. Yes. Yes Okay, okay Okay, so the question is if it's good to give a task for a newbie to fill some gaps in a documentation, right? Huh, I've got I've got a task for that and yes, I think this is a good task, but don't be too too difficult in that Don't give somebody a task to explain something what you don't really understand But I think it's a it's a good idea for start. Yes So Okay, the question was Where to stop when to stop digging inside the project and stop trying to do yourself and actually ask for help Ah well I've got this issue on my on my previous job that tried to do it, but don't too much and I heard from my manager that you know it's up to you this onboarding process is for you and you will decide when you want to stop and move to asking before because your manager or mentor is not inside your head and They don't don't know where you are when is the moment we were frustrated or you feel stuck It's up to you if you feel that this few more for hours will solve the problem go get it It's onboarding process of nobody, you'll know Track your hours in jihad or at least should not do it But if you are feel stuck and you feel stuck that even these two days more will not solve the problem Just leave it just ask because there's a waste of time and your energy So you have your interest, but then you know someone to kick you in the product and so on so now In the perspective of people, you know in those open source projects for ages, you know We like to have you know, so for the first we have programs like, you know, be somewhere called the outreach Projects so somewhere at the level of you know upstream Those programs So now from your perspective Somehow Okay, I have no idea how to make your question short for a recording I Tried to understand with a context So remember that programs you are saying about like this g-cloud. Yes These are big corporations and most people what I was thinking about open source You know is is it just this small initiative is just like I will start and do it or You know Google is not widely recognized as an open source company Maybe let's say Fedora is because even though is the same also supported and sponsored by Red Hat and I Would say people who are Have a clear idea of joining open source They will not first thing it will not be Google or programs of a big big big corporations and From the other side from smaller projects is very high hard for me at least to find this way to join Also, this is a another another another threat here that people for example, I mean I wasn't I wouldn't Believe that I can handle the tasks in totally remotely without not knowing people and just you know Using my keyboards to solve the problem and actually providing a value So maybe I think people this is a mixed because people doesn't recognize the Google or order my bread hat But other big companies as open source Possibility And from the other side, they don't have any easy way to start with smaller projects It's it's changing. I have to say since I joined I have to say that it's changing I think that for example, there's a lot of Programs to start as you saying but I think this is a this is a way to matter of time to Changing but people are aware that inside open source that they need newbies and I think this is a important change here Yes, it may be branding My own Yes You know if people if someone is here for example Program for open BSD is very clear that this is open source, but if you hear Google summer of code You understand, okay Okay, come to me after