RGSoC - the grand finale

Posted on by Bundledore

Our logo

Our Logo (created by Amrita Nair and Anagha R)

It’s September, the long journey which started off on July 1st is about to touch the finish line. We can’t believe that we have reached the final phase. Time flies so quick.

So here, we the Bundledorian’s summarise our wonderful working experience with the RGSoC project.

The whole journey was super awesome. Starting from day 1 of the event kickoff to this moment, we have learned a lot. Working with our amazing panel of coaches, mentor and supervisor and interacting with the RGSoC community has been a thoroughly enriching experience.

We have been working on AFDC ( Atlanta Flying Disc Club League Management System), which is a Ruby on Rails application used by the Atlanta Flying Disc Club to manage league registrations, rosters, schedules, and result tracking. The application runs on docker platform.

Workspace:

We had a super cool workplace, the FOSS lab in our college where we settle down in the evening (soon after our classes) and continue working till late night. And of course, the coding continues until midnight. We are really grateful to our whole FOSS team and to our friends, who supported us all these days.

Our workspace

Our Workspace - the FOSS lab (img credits: Anagha's phone)

Tools:

The collaborative platform ‘Git’, the task manager ‘ Trello ‘ and our regular team meetings on Hangouts and the most important one, our day-to-day discussion space, Slack. These kept us well connected throughout the journey.

Things learnt:

  • Learnt to work with docker.

  • Learnt Git basics and a lot more.

  • Worked on more features in Ruby on Rails.

  • Got a good grip in Ruby.

  • Learnt a lot of new terms and concepts.

  • Time management.

  • Patience.

  • Being regular with updates.

Issues worked on:

This summer taught us a lot about the workflow of a project and how priorities change. We started with three issues in the beginning of the summer and now, towards the end, our plan has more or less changed. We integrated the site with it’s MailChimp account. This feature interested us a lot because we experimented around with MailChimp and actually sent out a few promotional e-mails(from a dummy account). Now we know how all the popular websites send out all those emails :) Implementing it took a lot of time because with every single line of code we wrote we learnt so much.

We also took up the job of porting the project to Bootstrap 3 and making the pages mobile-responsive. That helped us go through the whole project page-by-page giving us a lot of insight into how a Rails application works.

In the midst of this, we solved many minor issues in the repo. We lodged a few issues, cleaned up the documentation by relating to the minor difficulties we had in setting up the project on our systems.

Our next major feature is to implement an Attendance system. Still in the process and loving every moment of it.

Problems faced:

Thankyou

credits: giphy.com

In the initial weeks, we were troubled a lot by Docker issues. We were completely new to the platform and faced difficulty in setting it up. Fixing the issues one by one helped us learn in-depth about Docker. We went through the documentation of Docker a lot of times to figure out the problems we were facing. It really made us appreciate the usefulness of Docker in production.

In the middle of the SoC, both of our laptops(simultaneously !) crashed due to a kernel version error and hardware issues(keyboard stopped responding). Then came up another error, due to which our console stopped working. Googling about the issue brought us nowhere, everything got messed up. At last with the help of our coaches, we were able to fix the error. The funniest thing is that it was just the matter of changing 2-3 lines of code.

What’s next?

We would be continuing our work pattern, working on our skills, exploring new areas, mentoring our juniors. We are planning to attend the GHCI, dotCSS and dotJS, attend regular meetups of our local community, encouraging more people to take up the work. We are in the process of organising a Rails Girls workshop in our city and we have a lot of support from it by various organizations.

A final note:

We are really thankful to the whole team of RGSoC for giving us this opportunity to work on the AFDC project. This is a great learning experience for us. Our wholehearted thanks to our panel of coaches, Alfie and Mukesh, who have supported us in each and every step, our mentor, Pete who is always available to help us with our doubts, our supervisor, Rafal, who has coordinated the work of the team and always ready with the answers to our queries. Kudos to Team Bundledore.

Our team

credits: Collage created by Anagha
Follow us on:

Twitter

Blog

Anagha R

Amrita H Nair

Thankyou

credits: giphy.com

Banshee Bandits Wrap Up

Posted on by Shelby & Lillian

It’s the end of the line…time to wrap up!

What We’ve Learned

How to Read a Giant Website’s Repo

Public Lab has a large and complex website. For pretty much the entire first week of this project, we couldn’t even begin coding because we just had no idea where to start. It was really overwhelming at first, but after a week of Ruby tutorials and help from our mentors and coaches we were finally able to start working. It was a steep learning curve, but we now feel confident in our ability to navigate a large repo to find what we need.

Github: Push, Pull, Merge

After finding where to start our work, another hurdle awaited us: GitHub. It’s an indispensible tool for developers, but for beginners it’s the looming threat of pushing something to the wrong branch and ruining the entire project. But we followed Public Lab’s contribution instructions and, with some more help from our mentor Jeff and other Public Lab team members, managed to submit our very first pull request (and we didn’t even ruin the entire project). We’re really glad that we had the opportunity to learn how GitHub is used in a professional setting, so that when we (hopefully) get real jobs we have some experience and won’t feel as intimidated as we did when starting this project.

Reading Ruby Partials– Breaking Apart Elements that are not just HTML

On a technical level, one of the major things that we learned was how to integrate HTML into a website that is mostly written in Ruby, i.e. ruby partials. Partials are really cool because it allows you to break down your HTML code into very specific snippets that can then be called by the overarching code. It also allows you to break down the code into manageable chunks, so that you don’t have a massive file with 300 lines of code and can actually find what you’re looking for.

Working Remotely is Difficult

There were many periods during the project when our respective schedules forced us to be in separate locations. Additionally, often times we had to work with our coaches remotely. As a result, we learned so many different ways to video call!

Experiences We’ve Gained

We witnessed a “virtual community” versus an “actual community”

Public Lab is a community where you can learn to investigate environmental concerns. Using inexpensive DIY techniques, Public Lab seeks to change how people see the world in environmental, social, and political terms. Online, Public Lab hosts a variety of Wikis and research notes for people to collaborate– exchanging and updating environmental data in an open-source environment. In person, Public Lab hosts a variety of community events organized by administrators whose office is in a factory-turned-office building in Williamsburg, Brooklyn. One of Public Lab’s central missions is collaboration– through social media, through the website, through events. It was incredibly interesting to witness that as online contributors who lived just down the street from PL’s headquarters in New York City.

We learned how difficult it is to balance a part-time job, an open-source internship, and classes

“You can’t have your cake and eat it too.” A lesson the two of us learned oh-so-well during the past couple of months. It was often difficult to dedicate time to solely learning “how to code.” In the future, we hope to plan our time more sensibly in order to benefit as much as possible from the learning experiences open source projects can offer.

The Catch 22: Open Source’s “Technical Gap”

Open source is meant for collaboration. The problem: it is often difficult for “newbies” to comfortably navigate the demands of an open source project (ie. Github, how to read a project’s repository, etc.). Both of us gained a better understanding of the “technical gap,” and how it can limit diversity initiatives in tech.

RailsGyn come back to reality.

Posted on by Amanda & Juliana

All good things come to an end… OH GOD WHY!??!

We are just shocked! We still cannot believe how fast these three months passed! We do not want this summer to finish!

crying

That is exactly how we are now!

RGSoC was by far the best place ever that we already worked on. The environment was pure learning and assistance, we could implement a lot of cool features, we could meet a lot of nice people, we could discuss our ideas and we were heard. Certainly, we will keep contributing with the RGSoC team’s app, because this program deserves the best management app that could exist and we want to work on it!

rgsoc

Design by Juliana

What were our main achievements in this summer?

We started the summer of code working on beginner friendly issues, however, on the very first days, one of our friends from TeamsApp asked for help in a milestone to automate the conference process to offer conference tickets to teams. It was a big change, with a lot of issues and a lot of models builds and refactors. She even though that it wasn’t possible to build for this summer, but we did it! We build almost all the related things to this milestone conclusion and when we saw it on production was proud. It was really surrounding construct such a complex issue in a really new project for us. We had to learn a lot in just some days, but worth every second when we saw everything working. That is what a challenge does with you, it makes you find out how far you can get. After finishing the conference milestone, we have decided to start on a community milestone and we still are working on it. Even if we did not finish it until september/30 we will finish it! We are so happy to have our fingerprints on this project! That is something priceless.

us

By: Juliana's mother

What will we miss?

  • We will miss all the excellent developers from team’s app who worked closely with us in this summer: Carsten, Max, Maria, Maud…
  • We will miss Ines :\ our conversations were always the best ones and we don’t want to stop it.
  • We will miss sharing in all the social media that we work on the RGSoC.
  • We will miss pair working in nice coffee places in our city.

What did we learn?

This summer was all about learning! RGSoC is a great learning experience. We had support all the time, our mentors were fantastic. They suggested a lot of things to improve our code and that taught us a lot. During this summer we could learn more about tests with RSpec, using shared examples, many factories, finite state machine concept, some Ruby methods, code best practices applying DRY, metaprogramming, service objects, work with Continuous Integration, Git workflow and many ruby facts that we happily shared on our blog.

What more?

Besides knowledge, the program brought us a lot of local visibility. Due to the program, one of the local companies has contacted us to offer support for promoting events. Also, this same company has called us for a job interview. We are planning to promote a Rails Girls event in our city, and this company will give us space and some coaches to assist us in the Rails Girls workshop. We are very happy for all the opportunities that the project has given us, we will miss everything.

Contact

By: Juliana Dias

By: Juliana Dias

JSFoo 2017 - Team Serv0101

Posted on by Neha & Rakhi

Team Serv0101 at JSFoo 2017

Screenshot

JSFoo was launched in 2011 which is India’s first JavaScript conference. The JS community in India has grown phenomenally since then. JavaScript now pervades every aspect of web development – browsers, apps, front-end, backend, mobile and IoT, and there’s always scope to understand new ideas and solutions. The conference explores new ideas, implementing innovative solutions, and learning from experiences, especially negative ones!

JSFoo was two-day conference(15th Sep 2017 - 16th Sep 2017), Bangalore, India. This year theme was building reliable web apps. Talks happened on these topics and more:

  • Tooling and best practices for measuring and monitoring on the web

  • Modern programming languages like ES6/7 and TypeScript

  • Architecture and the practice of programming

  • Specific libraries and frameworks

  • Browser APIs like WebRTC, ServiceWorkers, Web Components, and Push API

  • Accessibility and localization

  • Game programming

  • Visualisation and animation on the web using JavaScript

Every talk and workshop we attended there was awesome but we found following two very interesting.

1. Tiny Computers, JavaScript and MIDI by George Mandis

Photo taken by Neha

George Mandis is a main developer of Konami.js. Being a konami js lover it was really nice to see his talk and meet him in person. In his JSFoo talk, we explored why MIDI implementation and prevalence in hardware makes uniquely intriguing and accessible platform for creative coding.

Tiny computers such as the RaspberryPi, Arduino and C.H.I.P. have finally reached a level of performance and affordability that makes hardware experimentation accessible to everyone. At the same time, JavaScript has emerged as the lingua franca of web programming and can be found in many places beyond just the browser.

MIDI — a niche protocol that’s been around since 1983 and was originally designed for musical instruments to communicate with one another.

Tiny Computers + JavaScript + MIDI - create great platform for both education and entertainment purposes.

2. Building Immersive Virtual Reality experiences quickly with WebVR by Ram Vaishnav

Ram Vaishnav says - “I believe that Virtual Reality is going to become a primary platform soon, which will completely change the way we work, play and communicate digitally.”

What is WebVR?

WebVR is an open specification that makes it possible to experience VR in your browser. The goal is to make it easier for everyone to get into VR experiences, no matter what device you have.

How anyone can experience WebVR?

You need two things to experience WebVR: a headset and a compatible browser.

How anyone can build Virtual Reality websites?

You will find many frameworks on the internet to build VR websites. The one we used in the workshop is A-Frame. A-Frame is an open-source web framework by Mozilla for easily creating VR experiences using WebVR which work on all platforms. It’s really easy and fun to work with A-Frame to build a VR website, all you need to get started is a basic knowledge of HTML & JS.

In workshop we learned various concepts & APIs of A-Frame and we also build Hello WebVR which look something like this :)

Photo taken by Neha

Enjoyed playing game

Photo taken by Rakhi

At the end of day we all the women gathered around a table and everyone there shared how they started, what they learned from JSFoo and how we can apply for the talk next year in JSFoo. We also shared our experience of RGSoC internship. Thanks to Rgsoc for providing us tickets and having us in conference. We really enjoyed being there and had a good experience, we will look forward to attending this conf next year.

Our IntoxiCODED cloudy summer

Posted on by Codeaholics

Time seems to fly by so fast when you are a student of Rails Girls Summer of Code and a contributor of a project you love. We can’t believe these are the last days of RGSoC!

Challenges

Some of the challenges that our team has faced during this period:

  • First of all, installing the Nextcloud server locally was not as easy for us as we first assumed.
  • Before attending RGSoC we barely had any experience with Git on an important open source project as Nextcloud with a lot of people contributing into it. During our journey we made many mistakes and had to do some researches on different Git commands. Thanks to the friendly community over at Nextcloud, we learned many new Git commands, now it’s just a matter of remembering them :)
  • We fought a lot with JavaScript and in particular AngularJS. We wanted to work on something new for us and that’s why we chose the Contacts App. We were complete beginners on AngularJS and during the first weeks we were mainly focused on reading and watching tutorials.
  • Another challenging thing was working remotely together over different time-zones (6 hours difference) as Jona was attending “Flock to Fedora Conference” in Boston.

image

Too much AngularJS, not enough coffee. (Photo: Jona & Xheni, Creative Commons Attribution-Share Alike 4.0 International.)

Things we have learned

Despite the challenges we had during our summer, we have learned a lot of new things. Here are some of the things we can recall:

  • Pair programming, a very good way to keep each other on task. Brainstorming helps a lot when you work as a team. Don’t forget that two brains are better than one.
  • AngularJS concepts: we learned about controllers, services, promises, filters and much more.
  • JavaScript is the world’s most misunderstood programming language but we understand it better now :).
  • We learned about vCard format specification.
  • New Git Commands that were really useful for our daily job.
  • Asking for help because the communication is the key to solve some of the issues! There are always people out there willing to help, especially on the Nextcloud IRC channels.

image

Pair Programming at Open Labs Hackerspace. (Photo: Jona & Xheni, Creative Commons Attribution-Share Alike 4.0 International.)

Nextcloud contributions

There is an albanian idiom “-Fillimi i mbarë, gjysma e punës” (English equivalent: Well begun, is half done), therefore we created our first PR on our first week and we began contributing on Nextcloud by fixing some starter issues, opening new issues, testing and reviewing etc.

Nowadays we are mainly focused on developing a new feature: “favorite contacts”, allowing users to quickly favourite some of their contacts. We are confident to have this feature finished by the end of the summer.

What will be next? We certainly will continue contributing on other Nextcloud apps, even after the summer ends because we really love the vibe that this community has and the friendly environment.

Girl Power at the Nextcloud conference!

One of the best things about working on the open source projects are the conferences. Codeaholics joined the Nextcloud Conference on 22-29 August in Berlin, Germany. We were the early birds who arrived in the morning on the first day, waiting for other contributors to join the conference.

image

Team Codeaholics at Nextcloud Conference. (Photo: Christoph Wurst, Creative Commons Attribution-Share Alike 4.0 International.)

Finally, we had the chance to meet our coaches Morris and Joas in person, our mentor joined us as well. We had four amazing days full of hacking and working on specific tasks on Nextcloud. It’s very helpful when you have your coaches nearby so you can directly ask them and clarify in case of any doubts. In addition to meeting our coaches we also met many other contributors during our stay in Berlin. Fun fact: We knew most of them already by their GitHub usernames, that’s why the first question we asked them was their github username. ;)

We attended some talks related to the collaboration between Red Hat and Nextcloud, Collabora Online, how the Technical University of Berlin uses Nextcloud, Scalability Recommendations, Security etc.

On the weekend, there were some lightning talks and workshops where we also shared our experience as RGSoC students with them (a lot of applauses in the end, yaaay)! It was a wonderful conference and a great opportunity to network with the community behind Nextcloud, which makes you feel more motivated to keep contributing. And just for the record, coding while drinking Club Mate is one of the best feelings ever. (Try it :P)

image

Nextcloud Conference. (Photo:Raghu Nayyar, Creative Commons Attribution-Share Alike 4.0 International.)

During our stay in Berlin we attended the “Open Source Ladies” event together with Jan, which is an event that aims to help women contribute to open source projects and guide them how to join their communities. It was very nice to meet some new enthusiastic Open Source Ladies from Berlin and share our experiences.

What will we miss most

Now that RGSoC is ending, we will miss a lot:

  • Our weekly meeting calls with our supervisor, mentor and coaches. It has been a pleasure working with all of them. By the way: Even though all of them were German and we have heard stories that Germans are very strict or that is very difficult to work with them we are very happy to admit that it is NOT true! Each wednesday that we have our weekly call, we were very happy to talk with them and hear their feedback because it was really helpful for us, that’s why this is one of the things we will miss most! (Thank you guys :D)
  • Status updates, because they helped us keep track of what we achieved and to set goals for our team.
  • Being able to focus full-time on open-source development and community building.

All in All…

It was a never-to-be-forgotten summer - one of those summers that leave a rich heritage of beautiful memories in their going. Is it the end? Definitely NO, our journey does not end here. We are both open source enthusiasts and the gained experience we had this summer has inspired us even more to continue contributing to coding part of open source projects.

Thanks RGSoC for this amazing experience we had during this summer, we are happy to be one of the RGSoC alumni now and share our journey with other people!