Skip to content

Latest commit

 

History

History
134 lines (85 loc) · 9.58 KB

rbts-intern-orientation.md

File metadata and controls

134 lines (85 loc) · 9.58 KB

Virtual Intern Orientation

Welcome to the OLE Intern Team!

Congratulations! You have completed the first steps and have been selected to join the Open Learning Exchange virtual intern team. Please remember that we expect interns to have at least 16 hours a week for the minimal of 3 months to work on Open Learning Exchange issues. If you do not currently have enough time, we will be happy to have you later when you do have time.

Get to Know the Team

The first thing is to meet the team, starting with CTO dogi, then the current intern team leads and members. After having the initial meeting with dogi, you can join http://talk.ole.org during Google Hangouts session to meet with current interns, get to know each other, and ask them what they have been working on.

Familiarize Yourself with Current Projects and Issues

Typically, interns choose what project they want to work on based on their experience. If you get tired of a certain project, there is an opportunity to switch. Take a look at our current projects below, if any particular ones interest you, there is a very good chance that you can work on them.

Active Projects

  • Planet
    • A Progressive Web App using Angular & CouchDB with the BeLL Apps functionality.
  • myPlanet
    • An Android app that syncs with Planet to save data for offline use and send usage data.
  • Remote
    • An Android app that communicates with headless Raspberry Pi mobile server running treehouses image via Bluetooth.
  • Raspberry Pi
    • The modified Raspbian image can be placed on a microsd card for deployment in the field with a Raspberry Pi.
  • Docker
    • Containerize CouchDB, Planet, BeLL, and other educational applications

Past Projects

A Few Things to Know...

Once you officially become a virtual intern, you will receive email invites to become GitHub organization members of open-learning-exchange, ole-vi, and treehouses.

Now you should work on OLE's repositories instead of your own forked repositories, the workflow will be Feature Branch Workflow. Note that this will give you the ability to make bigger mistakes - so make sure you always double check what branch you are working on. Remember to commit often and create pull request early, so other virtual interns could look at your code and make sure you are on the right track at an early stage.

You will now have the ability to review, close, and merge pull requests and issues.

Once you have accepted your invitation, mark yourself as a public member in the list of OLE contributors.

Reviewing Pull Requests and Issues

One of your responsibilities as an intern is to review and help prospective interns with their issues / pull requests on open learning exchange. You can start a review by going to the files changed tab on a pull request. You can read more about Review on GitHub.

Since we are a very diverse community with people coming from different backgrounds and cultures, it might be hard to find the right language to use in reviewing other's code. Please make sure to read a guide for reviewing code and having your code reviewed for some useful tips.

You should check if the following conditions are met:

  • issue number is included in pull request title and description
  • there are no unnecessary files/lines change in pull request
  • there's a branch for the patch
  • the pull request actually fixes the issue
  • changes are rendered correctly on rawgit preview
  • no merge conflicts
  • commits are associated with GitHub account

Every time you comment on an issue or review a pull request, message those involved on the Discord Server with a link to the issue / pull request. Also, if you find any issue that must be addressed with a pull request, do not forget to use the Request changes option when creating your review.

Merging a Pull Request

The pull request can be merged if at least two other people have approved the pull request and there are no more changes requested by another intern. One exception is when virtual interns are adding themselves to the team, we want the new intern to merge their pull request during their interview.

When you are ready to merge the pull request:

  • Select "Squash Merge"
  • Remove all of the commit messages in the extended description, and make sure the commit title is clear and short.
  • Include “(fixes #IssueNumber)” in the title so it will automatically close the issue.
    • If you forget to add a keyword, go to the issue and manually close it and link to the original pull request.
    • An example of good commit title is: "update vi-configuration.md (fix #1530) (#1557)", where "1530" is the issue number and "1557" is pull request number.
    • Read more about closing Issues using keywords.

Every time you merge a pull request, message the author on Discord server, make sure you include a link to the pull request and commit id.

Standup Message

Every time you work on OLE projects and issues, you should post the "stand-up" message in our discord standup room before you start working. Use the following format:

What did I achieve yesterday?
- Mention what you were able to achieve

What is my aim for today?
- List what you are working on - consider linking to the issues

What obstacles are in the way of our progress?
- List any problems

This is especially helpful if you are not able to attend our Google Hangouts sessions.

Form a Working Routine and Schedule

Recommended Daily Routine

While you are free to work in your own style, we recommend you follow this basic daily routine:

  • Check Discord virtual interns channel and your discord private messages.
  • Join the OLE Google Hangouts session if you are able to, so you can follow what everyone is working on and get help fast.
  • Write a message in Discord standup room with the format mentioned above.
  • Review any issues or pull requests that have been added or changed on open-learning-exchange.github.io since last time you reviewed.
  • Work on your issues and write in intern chat any time you run into problems.
  • Make pull requests as early as possible so you can get feedback as you work.
  • Try to close issues using some of the following keywords and variations of them in the headings: close, fix and resolve. Closing Issues using keywords

Weekly Schedule

All of our Google Hangouts sessions can be joined at http://talk.ole.org. Currently, we have a few scheduled sessions each week:

  • Happy hacking hangout
  • angular asia (h)acking (h)angout
  • BeLL Reboot Angular Hacking Hangout
  • Raspberry Pi Hangout
  • Take Home Hangout

Every Monday at the "Happy hacking hangout" session, we work on problems together and catch up on what people have been doing all week. It is also advisable to schedule a day out of the week to meet with a team leader, especially if you can’t make it to the meeting. Use the calendar to set up meetings and other events with interns.

Please subscribe to our calendar:

  • In Google Calendar, click on the + sign next to the Other calendars section on the left side as seen in the screenshot below. Select Subscribe to calendar from the dropdown

Google Calendar subscribe to OLE calendar

  • Paste [email protected] under "Add calendar" and hit Enter as seen in the screenshot below

Google Calendar subscribe to OLE calendar

Google Calendar add a friend's calendar

Communicate, Communicate, Communicate!

It’s not good to go silent on Discord or any other forms of communication. If you are ever unsure of what to work on, or cannot work for any other reason, please talk to us in the Discord server. It's better that we know why you aren’t able to do anything than to imagine reasons ourselves. Also make sure you are away in the OLE google hangout. Remember, the more you put into this internship the more you will get out of it. It may take a while to get used to the fact that you will need a good amount of self-discipline and initiative to get anything done in a remote internship, but we are here to help, so take advantage of it!

Also, if you find any issue that must be addressed with a pull request, do not forget to use the Request changes option when creating your review.