Rails Girls Summer of Code & Hackership: The benefits & challenges of being part of 2 programs at the same time
We are Ruby ‘n’ Bugs and one of the 20 selected pair teams (16 sponsored & 4 volunteering teams) world wide to start our journey as Ruby on Rails programming interns on 1 July 2015 for three months. Hackership provided us a spot in their summer batch 15–07 in Berlin (hosted by Wooga), so we both have the chance to benefit for free from two learning programs and the education of each at the same time.
Before we tell you something about the benefits and the challenges we face while we proceed, we would love to explain what these two programs are about.
What is the difference between RGSoC and Hackership?
While RGSoC aims to encourage explicitly women* (or those who identify as women) to dive into Open Source development with Ruby/Ruby on Rails and a very supportive community (e.g. Rails Girls, Ruby User Group, Eurucamp, etc.) in the back, Hackership focuses on all genders and developes each batch based on the students’ demands of different technology interests, needs and knowledge in a self-driven learning environment. Though the people from Hackership are part of the Open Tech School team, the Hackership batches are basically not for free, it requires a fee to join the 9 weeks (incl. 1 break week) intensive program which happens at different places per batch. Fortunately since this year they also offer a scholarship with grant to underrepresented groups who usually don’t have the privilege to access this education environment. This is a topic which is very important for us as organizers of events which strive for more inclusiveness and diversity in tech. We will write more about inclusive communities and diversity in tech in a later post, e.g. about our experiences at eurucamp 2015 (31 Jul — 2 Aug 2015).
What are the education structures of RGSoC and Hackership?
- learn to work in and as a team
- write daily logs for teams activities
- consult our mentors on slack channel
- join other slack channels e.g. rgsoc-community, berlin-students, students, private chats, etc.
- talk to our coaches in-person and online
- talk to our supervisor once a week
- write 2 blog posts about our team and progress
- monday breakfast with all learners (might change to: lunch with our family)
- rate how we feel and report what we did yesterday and want to do next at the daily stand-ups with our “family” (each group is a family and assigned to one coach )
- write, edit, review & evaluate our project plan (every Monday)
- attend 2 workshops per week (e.g. database/server, dancing git, http-requests, regex, etc.)
- join a hackathon (until now only one-time)
- join Gitter communication channels, e.g. “family” chat, chat with all learners, private chats, etc.
- write a blog post every week
- join a discussion to contribute to the code of conduct (until now only one-time)
- discuss & prepare a demo (every Thursday)
- tba-sessions while we progress
As you may see there are a lot of activities we face every week. While in the beginning we were excited and happy about all these parallel activities, we realized soon that being in two programs at the same time is also overwhelming and distracting when trying to concentrate on our learning path (contribute to OSEM). Even though we know that almost every mentioned point above is voluntarily based (and we are happy about this), our inner-self permanently told us to meet these requirements which of course put us both a lot under self-made stress.
But the biggest challenge we face is to learn how to work together even though we are totally different characters and have different knowledge, skills (working in a team vs. working alone), passions (front-end vs. back-end) and approaches of tasks (panicking vs. taking things easily). In the first two weeks it was not easy for us to find a compromise, because as developer beginners each of us tried to stick to their own path of dealing with issues. There was no team work at all, therefore we felt a bit lost and desperate in our current situation. We talked a few times honestly with each other about our goals, expectations and feelings, but again nothing has changed. One day we realized the fact that the RGSoC has just started (2 weeks) but we were already completely demotivated. We knew that something definitely has to change, otherwise we would have to split up. To our surprise we somehow managed to find a good compromise where both of us feel comfortable with and satisfied in our own needs:
- every morning we talk shortly about our daily plan and arrange a time when we can/want to work together
- each of us does/learns stuff independently from another until our appointment
- when we come together we talk about and demo the things we have done so far
- we then do pair programming or a code walk-through, so that at the end of the day both of us have the same status in their own repository and both of us areon the same page
We have been told by so many people that we should do more pair programming which, of course, put us a lot under pressure ( when we had difficulties working together). We guess since we accept that we are beginners and don’t need to be perfect (therefore don’t need to do exactly the same things experienced programmers do daily), we became much more relaxed and now (after 4 weeks) enjoy to work with each other.
We also accepted that we don’t need to follow up all social activities or communications (with the fear of missing out topics), this way we now enjoy our learning environment at Hackership much more. :)
As a learning process out of all this:
- find your own learning path to succeed in the goals you set yourself and/or with your team mate
- even though a lot of experienced programmers advise you to do some things does not mean that it works for you at your current path
- if you think this is the way you can deal best with on your own or with your team mate, be confident about doing things differently
- be patient that you will gain experience and knowledge as you progress, but it does not need to be now
- take your time to develop your other skills apart from programming knowledge because the environment & setting around you is much more important (to keep being motivated) than you think