Skip to content

Latest commit

 

History

History
107 lines (57 loc) · 11 KB

vi-first-steps.md

File metadata and controls

107 lines (57 loc) · 11 KB

First Steps

The Big Picture

Welcome to the first steps for becoming an OLE Virtual Intern! We treat these first steps as a vetting process to prove that you can follow simple instructions before you can progress to working on harder projects in bigger teams. Consider them to be the interview for the internship.

If you are selected for the internship after completing the steps, you will be officially invited to join the OLE interns team! We’ll add you to the Virtual Interns Gitter chatroom and assign you to a specific team to work on developing and improving OLE’s BeLL (Basic e-Learning Library) software. The BeLL is a virtual library that is deployed internationally to individuals in countries that typically do not have access to educational resources.

Once accepted, you and your team will work on an assignment, and we’ll switch up the assignments each week. As part of this internship, you will be working with software and languages including Git, GitHub, Gitter, Markdown, Vagrant, VirtualBox, Command Line/Terminal, Command Line/Terminal Scripts, Vim, CouchDB, Docker, HTML5, Javascript, and Node.js.

NOTE: This is an unpaid but intensive internship that requires 16 hours of work each week. More information about the internship can be found here. If you have further questions, don’t hesitate to ask other members in the Gitter chat!

The Steps

Social coding is a huge part of any open source and collaborative project, and the Open Learning Exchange is no different. In the following series of steps, you will learn about the GitHub team work-flow, including git, forking, pull requests, and repository issues. You will also be introduced to Markdown’s rich text formatting and OLE’s Basic e-Learning Library (BeLL), the digital library that hosts the learning materials.

Because these steps are simple, we expect high quality work, which may take a longer time. We want to see that you are capable of using or learning how to use these tools (writing good GitHub issues, creating pull requests, navigating the BeLL, etc.). These steps may seem easy, but we want you to impress us with good GitHub etiquette and quality Markdown. The bare minimum would be to just passively follow the steps; you should do further reading about the tools/languages we use so you can further your understanding and relieve confusion if you're unclear about how something works. Treat these steps as learning opportunities! The GitHub and Markdown skills you practice here are very important in both this internship and a future software development career.

The MD wiki has plenty of resources to help you complete the steps. There is a list of useful links at the end of each step and we created a FAQ page where you can find the answers to some commonly asked questions. This page has even more useful links and video tutorials that will help you become familiar with the tools/languages we use. For anything that is not in the FAQ page, Google and Stack Exchange are your friends :)

We also want you to keep us updated a relatively good amount in the Gitter chat as you complete these steps. Check our Gitter chat page for more information about how to best communicate in Gitter.

A very large part of these steps is finding problems with these steps and this MD wiki, so take note of any issues that you run into or suggestions for improvement while doing these steps. Think of it as improving these steps and this MD wiki for future interns.

There is no official deadline to complete these steps, but most candidates who are approved for the internship program finished the steps within 7-8 days. Good luck!

Step 0 - Introductory Steps

  1. Send us your resume again (along with a short description of yourself and what you would like to be called) to vi@ole.org.

  2. Create a GitHub account then watch Open Learning Exchange and Follow Leonard and Dogi on GitHub. In GitHub we "Watch" organization repositories and "Follow" individuals. Look for the 'Watch' button at the top right of the page when you are in a repository. Also follow each other to see what others in the group are doing.

Watch Screen Shot

Follow Screen Shot

  1. We use Crowdin to translate our user interface in many different languages. If you know another language, go to this Crowdin link to join Crowdin by creating an account. You may start contributing on Crowdin after finishing Step 4 - BeLL-Apps Tutorial so that you have a better understanding of what BeLL Apps do. You may also reference the Planet User Manual for an overview of functionality and an explanation of various terms. It would be very helpful for you to translate some of the words and familiarize yourself with the software. It would be great to get at least 10% on a language that you speak. If you want to spend additional time, feel free to provide translations to 100%.

Step 1 - BeLL Installation

Go to the installation page to read through the basic instructions on how to install your own digital library (what we call the BeLL, or Basic e-Learning Library). Make sure you only follow the steps for your specific operating system.

Once you have finished installing, go to the Configuration Guide to set up your Community BeLL.

Step 2 - Vagrant Tutorial

Review these Vagrant instructions to ensure that you have fully completed the previous step. You should be familiar with this since you will need to use it during your internship.

Step 3 - Markdown and Fork Tutorial

Follow the instructions on the GitHub and Markdown page. Make sure that you've linked to your github.io and your personal .md page on the Gitter chat (<username>.github.io and <username>.github.io/#!pages/vi/profiles/<username>.md).

  • Once you complete the Step 3 you will have:
    • 1 Pull request made

Step 4 - BeLL-Apps Tutorial

Follow the instructions under the BeLL-Apps tab.

Step 5 - Keeping Fork Updated

Follow the directions at Git Repositories to keep your username.github.io and your local repository up to date.

Step 6 - GitHub Issues Tutorial

Follow the tutorial under the GitHub Issues tab to create at least one issue. You will be working to improve this MarkDown Wiki so that it is clearer and better for future use. Post a link in Gitter whenever you create an issue or when you comment on someone else's issue. You are encouraged to post as many issues as you can for improving the page as well as for personal practice. No issue is too big or too small to be filed and it is OK if you are not sure how to fix it yourself. It is ok to file an issue on minor typos and very small changes, but do not make this the case for all of the issues that you file.

Contribute as much value as you can in each issue you file. If you know how to solve an issue, be sure to provide a detailed account of your research and show how to fix it. Next, fix the issue on your repo and create pull requests, as per the tutorial. Don't forget you can also comment and work on issues that you didn't create. The more you work and commit and push, the more impressive your GitHub profile will become. This is very important to potential employers, thus we encourage you to spend time to increase your numbers to strengthen your profile. Make sure you have created at least one issue, resolved it and have a pull request with the fix merged before proceeding to the next step.

  • Once you complete Step 6 you will have:
    • 2 pull requests made (one at step 3 and one at step 6)
    • 1 comment added
    • 1 issue created

Step 7 - Nation BeLL

Follow the directions under the Nation BeLL tab.

Step 8 - Create Issues and Pull Requests

Create three more issues, add comments to three other issues, and resolve three issues by making the necessary changes in your repo with three separate pull requests. You should resolve three issues created by yourself, and make sure you mention in the issue you are working on, that you are in fact working on it. Besides, you should make sure someone from the OLE team confirms to make the change that your issue has brought up before you start working on the issue. You will follow the same steps as in GitHub Issues, continuing to improve this Markdown Wiki so that it is educational, yet easy to understand for future interns.

Just as your learning with this Wiki was made possible by the efforts of previous interns, now we turn to you to continue that tradition, and help future interns take their First Steps. Through this step, you should try to further improve our Markdown Wiki, with better explanations, formatting fixes, and more! You must have made your pull requests, have them approved by at least three others and merged to the upstream repository. Just as before, announce your Pull Request on the Gitter chat and wait for at least three others to approve it. You may need to make some additional corrections. Learn by teaching - or editing our teaching tool, in this case!

NOTE: When you are fixing an issue, mention the number of the issue you are fixing in the title of your pull request.

  • Once you complete Step 8 you will have:
    • 5 merged pull requests made (one at step 3, one at step 6 and three at step 8)
    • 4 comments made (one at step 6 and three at step 8)
    • 4 issues created (one at step 6 and three at step 8)

NOTE: You can track your progress with the number of pull requests and issues here.

Step 9 - Submit Survey

Head over to Open Learning Exchange Repository and make sure you have the previous list from Step 8 done.

If you meet these requirements let us know in the Gitter chat, so we can send the survey to your community. Then, fill out the survey and submit it. Next, Sync your community with the nation (as you did in step 7).

NOTE: The survey sent by @dogi will appear at the bottom of the page where the Publications and Updates appear in your community BeLL. Click on Survey, fill it out and submit it.

Lastly, once you have completed all other steps, add yourself to the virtual intern list found in team.md and create a pull request.

After the pull request, message in the gitter chat or message dogi to let him know you are done so that he can set up a meeting and add you to the team as soon as possible.

Once you have been added to the team, read through the intern orientation document.