 All right everyone, welcome to the first edition of the GitLab online hackathon, David Plonello. I'm the director of community relations at GitLab and I'm joined here by Ray Paik, my mate and colleague, code contributor, program manager, and we'll be here to guide you through the event, what it is, what does it look like, how you can join and how you can participate and get started. I think then without further ado, let me just fade into our slides and share my screen with you. Okay, so there we are. All right then, so yes, this is the first time that we run such an event, we're planning to extend this on the next quarter to have more hackathons or hackdays so that people can participate and can join in. One of the things that we always say at GitLab is that everyone can contribute and that's exactly why we're creating this event. We want to show everyone how easy it is to contribute to GitLab, how easy it is to essentially give your first merge request and then get help along the way. So in terms of the event itself, this is what we're going to talk about today. We're going to guide you through the logistics, how to join, what would it look like and so on. Then we'll go through the session schedule. We've got a set of tutorials with some experts on different areas of contributions to help you get started on those and also answer your questions. We'll talk about merge request and prizes because we've got exciting prizes for contributors and finally we'll go through the starters guide to contributing to GitLab, actually on how to get started and then finally we'll have some time for questions if you have any. So at a glance, what's the hackathon? It is a today online contributor event with prizes. We're kicking it off today at 7 o'clock UTC and it will run until tomorrow Friday at 23 o'clock UTC. It's online, it's distributed, it's synchronous but it can also be synchronous in terms of conversation if you've got any questions on how to get started. If you get stuck in a merge request, if you need help from an expert, we'll be talking at Gitter Channel. It's Gitter.i.m. slash GitLab HQ slash community and there we'll have some experts that can help you with your first merge requests. On that line as well, we will have a set of sessions every day on different topics on getting started contributing. We'll be talking about GDK, the GitLab developer kit, about internationalization and translations, about UX design, merge request coaches and I think we've got even one other documentation as well. To join in, there's a link for participating live on the sessions. I see some people already joined us so hi and welcome. With this, you'll be able to participate live on the sessions towards your questions to those who are driving those sessions. In any case, you can also ask questions on Gitter as mentioned before. After the sessions, the sessions are going to be recorded and we will upload them to YouTube after each one has been finished. You can check on that link. We've got a wiki page where all of the links to all of the videos will be posted essentially. In terms of people, who we are and who you can ping, we'll have a set of experts on the Gitter channels and you might just simply ask your question in there and they will jump in if they're available but if not, you can always ping each one of us. As I said, I'm David. I'm based in Cologne in Germany so it's best to ping me during European hours but in any case, I will ping afterwards if you ping me on Gitter. We've got Ray who's based in the US so we can cover the rest of the two major time zones and on that slide you can see our handles on Twitter and on GitLab as well. Ray's handle is RSPake on Twitter or airpake.com I think Ray, you've got rpake underscore GitLab on Gitter, right? Right, that's correct. I had a couple of postings last 50 minutes which should both be pretty relatively easy to find on Gitter but David has noted any questions on whatever channel you're most comfortable with just ping us and we'll do our best to get back to you or find others who can help. Excellent. A few words about Gitter. Some of you might be familiar with it. You might have used it before. We've got two rooms essentially on Gitter. You can see the URL on that slide essentially. You can see the people to ping. I'll update the slide with the Ray's correct handle once I've finished. But yeah, I mean essentially the community channel is the one to be on when we want to ask questions about getting started, about contributing in general. We've got another support channel which is GitLab HQ but we tend to direct people who support questions to that other channel. It is cozy right now. We've got about 60 people so it's easy to read, easy to get to know everyone and I say please do post your questions in there and we'll be really happy to get to them as soon as we can. In terms of the sessions, we've got quite a lot of... quite the panel of experts in here. We'll be having five sessions on different aspects of contributing to GitLab. We'll be keying off today right after this presentation on the next hour. So Toon Klaes, who's based in Belgium and he's a developer on the geo component of GitLab will be talking through the GitLab development kit. Essentially you will need to install once you start getting involved in development for GitLab. You might be able to do some of the first contributions directly on the IDE on GitLab but for something more involved then you'll probably have to go to the GitLab development kit. In any case, even if you're just starting, I would recommend to go to that session to understand where it is, how to install it and when you will need it. So that session is going to be today at 8 o'clock UTC, 10 o'clock in European time, 1 o'clock Pacific Daylight time in the US. Then today we've got another session. Mike Lewis who's the manager of the technical writing team at GitLab where the responsible for creating the documentation at docs.gitlab.com will be talking through contributing to GitLab documentation. There's also an important session in terms of documentation being one of the first areas of contribution or one of the easiest as well areas of contribution because it's relatively easy to get started. It's relatively easy to edit the pages online and you can even submit your first merge proposals online as well. So be sure to be there today at 14 UTC or 16 European time or 7 o'clock if you're in Pacific Daylight time in the US. Then today we're going to have another interesting one in terms of other areas of contribution. Hannes Rosenhoge who's based in Germany is one of our core team members. Core team members are essentially a group of volunteers, a group of community members who have done sustained and key contributions to GitLab and essentially managed to enroll that team. This is our team of ambassadors, this is our team of leaders in GitLab and we're very proud that Hannes is actually taking his time to do this presentation. He'll be talking about internationalization and localization at GitLab, both important areas for users that speak other languages than English. In terms of internationalization, that's again another easy area to get started contributing on development on GitLab. This is about essentially marking messages for translation so that translators can do their work. Then on the next step he'll be talking about localization, which is the work of people who are translating GitLab online. So this is going to be today at 4 o'clock UTC, 6 o'clock European time and 9 o'clock in the morning in the US. And then tomorrow we'll have Sara Veselov, who's the UX manager at GitLab. He'll be guiding us through the GitLab UX design workflow. You can check out her slides on our Wiki page. They are quite rich in terms of content and it's quite interesting to see how the UX team works. I will recommend to go to that session as well. That's going to be tomorrow, 2 o'clock UTC, 1600 European time, 7 o'clock in the morning in the Pacific. And then finally we'll have Clement Ho, who's front-end engineering manager for distribution monitoring and packaging at GitLab. And he'll be talking about merge request coaches, who we are, what their work is and how you can reach them. Essentially merge request coaches are the first people that you will encounter when you submit your merge request and they will guide you through getting your merge request accepted and merged. That's going to be tomorrow at 4 o'clock in the afternoon UTC time, 1800 European time and 9 o'clock Pacific time in the US. Alright, so here's just another reminder of the schedule in table form. Again, as a reminder, you can join the sessions live using this Zoom link and recorded sessions will be posted as soon as the sessions finish on the GitLab Hackathon Wiki page on that link as well. And just a quick comment, I guess, thanks, David, on these sessions, I mean, we don't necessarily expect all these sessions to last a full hour, if you're concerned about time. I mean, we wanted to be conservative in terms of budgeting the presenter's time in case there are a lot of questions from people that are participating. So even if you're able to only join for like, you know, in 20 to 25 minutes, I think you might get like just the important topics, for example, if you're interested in internationalization. So don't feel like you need to budget like a full hour for this and if you need to leave early like David said they'll be recordings. So even if you're able to only participate for a portion of the time, you're more than welcome to attend. And then the wrap up sessions are going to be relatively quick. Maybe it'll be slightly longer on Friday. But mostly I'll be sort of recapping what's happened during the day. Probably won't have a whole lot of slides and, you know, any feedback that we've gotten through, like, you know, through Gitter or other channels. So yeah, so I think that's all I wanted to cover. Cool. Thanks, Frank. All right. So next something that the central part of the of the event essentially merge request is about getting started is about submitting your first contribution in the form of a merge request. Generally, the way it will work is that you will either have a feature that you want to include to get up, or you have a feature that's a feature or an issue. That's in pending that's been already in some intake to get up and you will pick it up and and work and work on it. A good place to start looking at which part of the club you'd like to work on is this long and ugly URL. So apologies for that. But essentially it will take you to that to that page that you see on the on the slide where you can filter the pending. You can filter issues that are accepting merge requests. And you can see that you will start with the long list. We've got about 500 right now. So you've got quite a lot of choice in there. There are different levels of difficulty. So, so depending on your skills and you can you can choose the one that you think you might be able to work on. And also what I would recommend as well is while you filter those those issues. You can use the search box in there to add another label in there other than accepting merge request if you have documentation. You will see the documentation issues that you can you can actually work on. And I'll say the orientation issues issues are generally the easiest to get started on in terms of in terms of well in terms of logistics in the sense that you generally don't need to install the GDK. However, it also requires good technical writing skills too. In any case, that's that's a place where you can just go and have some choice to get to get started. If you already have something in mind. If you've got a feature of you've noticed about that's not in there, please do feel free to contribute with that as well. So any other contributions are welcome. Not just the ones that are there listed. And then, yes, when you are working on a on a on a mesh request, feel free to to mention, which is essentially just writing or handle on the on the documents on the sorry on the comments of your mesh requests. And you can also mention the docs team with that with that handle and what this will do is that it will add to do on our on our list and it will give us a notification for us to have a look at that. So yes, do do feel free to do that as well. I haven't also, I mean what I also will kind of think about doing over the next couple of days is that as I get notified on these merger requests, I might create an issue under under under hackathon where the wiki is located and keep an inventory of some of the mesh requests that have been coming that have been created during the event. So people can, you know, make sure that we're not missing anything but I'll let people know on Gitter that create that page or create that issue. That's right. All right, and then now we get to another interesting part as well. So, I did like we're always really, really time for for any for any contributions. And you always think of ways in which we can reward and then blow and knowledge. Essentially, those gives where people have spent their time and put a lot of effort in making it up even even better. For the hackathon, anyone with a merge, merge request that means that they have submitted and they have gone through the process until it has gotten merged into the into the code will receive will receive a price. Also will have a grand price for the individual with the most merge requests and merge. And then we will. We also bear in mind the fact that much requests sometimes can be difficult to to get to get merge in terms of there's a process of iteration as well. I mean, you might get great right the first time, but it might upon review, you might need to go back to go back to it to some changes we submit and so on. So, that's why we are extending the window for merge proposals to be accepted, not only to the two days, but to a week after as well. So, to be eligible for the price, your merge request must be sub-inmers by October the 8th. Essentially, next next week. Also price winners will be notified by issues on the Q3 hackathon project. We will announce it generally on a blog post, but then we will get in touch with you via email or via notification on the on the hackathon project prices themselves. So, these are the prices that you can add that you can win by submitting and getting your merge request accepted. So, each submitted and accepted merge request will have a $20 coupon for the for the GitLab shop. There's going to be a maximum one maximum one maximum one coupon per per contributor. And also the contributor with most accepted merge request will get a grand prize of $100 coupon again for the for the store where he or she or they will be able to pick essentially a pack of or of merchandise items. Once we need to be reading that shop.GitLab.com and we generally make this very, very straight forward process. All right, so getting more into the meat of how to get how to get started. So, in short, just visit the contributing to GitLab page. It's about.GitLab.com slash contributing. That will list all of the ways in which you can get involved. You just need to pick to pick one to get started. I would recommend to focus on just on just one. But here to reflect, we'll be talking on about during the during the event and different ways to get to get started. So we're going to into development, for example, documentation relations and UX design for development. We recommend the world in the GitLab development kit. It's on that. It's on that URL on that repository and there's documentation in there on how to install it. Documentation pages as well. There's one on troubleshooting. For example, if you get stuck, but today and tomorrow will be more active than usual on the other channels. So feel free to ask your questions in there as well. In terms of documentation, you can go to docs.GitLab.com. Read the documentation. See if there's anything that you think that could be improved and essentially scroll scroll down to the page. And you will see an edit this page linked at the bottom of the bottom. That will take you directly to the repository and to the file of that particular documentation page. And you can submit your much proposal from there. It's a very, very streamlined way of getting started and essentially making the docs better. Translations. And there's two different ways of contributing. Internet translation, which is about, as I said before, making sure that these messages are available for translators to do their work. Essentially, the way to get started is similar to development. You will probably need to download the GitLab development kit. But we've got some more information, which is specific to I-18N or internationalization insurance. For localization, you can go to translate.GitLab.com, sign up for the crowd-in project and get started translating it on your language. Translations that you do there will be reviewed by another peer. And once they've been reviewed, they will get onto the next GitLab release, which is monthly. But let me just talk about it in a minute. Then finally, UX design. I will have Sarah to talk about getting involved in design. But for a taster, you're going to design.GitLab.com to learn more about our guidelines and UI components and how you can essentially make them better as well. So one quick word about releases and about when your contributions will make it to the next GitLab major or minor version. We release GitLab once a month, under 20 seconds each month. So it's a fix and known cadence. So any of the contributions that you do for the hackathon will get to be published on the next version of GitLab, which is going to be 11.4 on the next 20 seconds of October. So that's an easy way to see that there's a tight feedback loop in terms of getting your contributions reviewed and getting your contributions actually online for everyone who uses GitLab to use. If you need help as a reminder again, you can go to the community channel in Gitter. Not only these two days, but please do feel free to ask your questions anytime if you get stuck or if you've got any particular doubt on how to get started contributing. These two days there will be more chatter, there will be more traffic on the channel, but generally we're always in there and we're always happy for people essentially getting involved. Again, getting started contributing to GitLab, it's a contributing page. If you want to learn more about merge requests, I've put a link in there, it is a basic unit of contribution essentially for development. If you want to learn more about merge request coaches, do feel free to go to Clement's session tomorrow as per the schedule. You can find the merge request coaches on that page on the link. And then you can actually find them and find them by their handle and ping them on issues to help you. That's their job and they will be more than happy and they will be very, very welcoming as well for your contribution. And then finally, if you are looking for a particular expert on the area that you're working on, you can go to the viewers and maintainers page for each one of the projects. You can scroll down and see the managers and developers for each one of those projects and you can ping them individually as well. So you can add that ping to your merge request as well. And then finally, I think that's all that we had, unless Ray, is there anything else? Yeah, I guess just one item on the merge request coaches. I mean, don't feel like you need to have your merge request almost 100% completed before you get a hold of a merge request coach. I mean, even if you have things like partially done, but if you have questions, just go ahead and submit a merge request. And then, you know, either find a merge request coach or contact one of us and then we'll find somebody who can help you. I mean, that's what they're there for. Like if you think you got, you know, issue address most of the way, but you have a couple of other questions that you want to ask. It's completely appropriate to submit a merge request and then go from there. That's what they're there for. They're there to help you. Yeah, and then also to compliment on that, you can, you can see it on the UI, but you can mark your merge request as WIP as a working process as well. And that's a standard procedure as well. So people are happy and with people, I mean, folks from the GitLat team are happy to start looking at your merge request and give you guidance even when it's in a working progress. So that essentially, if you're going in a direction that's perhaps not fitting to the code base, they can give you guidance on how to spare you work essentially. All right. So let me check the GitHub channel. Yeah. Feel free to ask any questions. Well, for a couple of sessions, if there are seconds, sorry, if there isn't anything else than I said, once we finish with the meeting, we'll upload it to our YouTube channel and we'll have to link for people to watch later on. If you're too shy to speak up, feel free to type it on the chat. All right, so I think we'll leave it at here. If you've got any questions, feel free to type them directly in the chat and we'll answer them directly in there. That's github.im slash github.hq slash community. So yeah, happy hackathon. Thanks.