How to survive your RGSoC as a student
It’s already August and we’re now halfway through the program. This means that as a team, you’ve already had six weeks of working together, pair-programming, discussing ideas and new concepts. For a lot of you, this may be a completely new experience, and we realise that it’s difficult to cope with all these new tools and ‘to-dos’.
RGSoC is about your own learning process
It’s great to contribute to Open Source Software, but it might be daunting at first. This is why we provide you with a direct contact to project maintainers – this program is made to, first and foremost, connect you to the Open Source community and to encourage you to try something new. Of course you want to produce high-level, durable code; but before producing great code, you have to produce code that’s a little less than great – and we think that’s perfectly okay. This is how you learn.
Every student is different
..And every team will have a different experience throughout the summer.
A lot of teams are connecting to each other and communicating, or looking at how other teams’ projects are progressing. We think that’s amazing and love seeing all that activity and exchange taking place between teams. But don’t forget that everyone works at their own pace, even within a team: this isn’t a competition, and though it’s important to look at what the other students do, you shouldn’t necessarily always compare yourself with other teams. Every team is different and we embrace diversity: That’s what makes Rails Girls Summer of Code great!
Talk about your goals
What connects all of the students participating in the program is their common interest in programming. Different students have different goals for the end of the summer – some of you want to learn and contribute as much as you can, some of you want to experience ALL THE THINGS, and others want to find a job by the end of the summer. You might even want a combination of all three. The way you work on your project and with your team mate will help you achieve these goals, so talk about it openly with your team mate, supervisor, and your coaches. If they all know exactly what you want, it will be easier for them to help you through it.
Ask for help
Asking for help is a whole skill in itself. You might have very high expectations of yourself and be certain that, in order to meet those expectations, you have to make it by yourself. But it’s really difficult for a single individual to achieve a lot of their goals on their own. Asking for help is nothing to be ashamed of: it’s not a sign of weakness, it just shows that you appreciate the skills that people have and trust them enough to help you.
If you are stuck on a problem, give yourself a certain amount of time to think about it, to try things out, and to fix it on your own. If that doesn’t work, talk to your team mate or your coach. Tell them where it is that you’re stuck, and what things you have tried. Often a fresh perspective is all you need.
We’ve also set up a helpdesk slack channel where you can ask specific questions if you are stuck or something doesn’t work, or even very basic or general questions that you have about programming or your tools. All the volunteers in the helpdesk channel are super happy to be of help, so don’t hesitate to drop in there and ask. Of course, if you see a fellow student needing help in there, you can help them out, too!
Keeping the motivation up for three full months is difficult. You spend a lot of time with your team mate and they might be starting to get on your nerves, or you might be a little behind on your project plan. Sometimes personal problems arise, or situations take an unexpected turn. There are a million little things that might go wrong during the program and keep you from staying motivated.
If you’ve been doing a lot of pair-programming, shake it up by spending a day or two working on separate tasks. Take regular breaks during your work day when you feel that you can’t focus, maybe by going on a 10-minute walk to clear your head. Also try to ‘switch off’ in the evenings and on weekends by letting go of everything programming-related: There is only so much your brain can learn and ‘save’ at once. You have to let it rest sometimes!
Look back at your very first day of Rails Girls Summer of Code, and realise how much you have achieved since! We’re not just talking about code, but about all the things you’ve learned: setting up your project, having a daily routine and stand-ups with your team, using a lot of new tools. You, yes YOU, have achieved all of that in SIX WEEKS, and we think that’s pretty impressive. Give yourself a pat on the back, take a deep breath, and get ready for the remaining month and a half.