Skip to content

Latest commit

 

History

History
181 lines (113 loc) · 15.7 KB

vi-faq.md

File metadata and controls

181 lines (113 loc) · 15.7 KB

FAQ

General Internship Questions

  • Q1: What will I be working on during this internship?
  • Q2: What kind of software will we be using for this internship?
  • Q3: Where can I find more information about this internship?
  • Q4: What are the hours of the internship?
  • Q5: Is this a paid internship?
  • Q6: What happens after the initial steps?
  • Q7: If I'm an international student, how soon can I get my paperwork required by my visa?
  • Q8: How many pull requests and issues in total do I need to make to finish the steps?
  • Q9: How long do I have to complete these steps?

Technical Questions

  • Q10: What is the purpose of nations and communities, and how do they work together?
  • Q11: How can I enable the Virtualization in order to turn vagrant on?
  • Q12: Why is the "Submit" button not showing up when I try to submit my survey?
  • Q13: Why does Firefox say “Unable to connect” when I try to load my community?
  • Q14: When I first run BeLL with the "vagrant up" command the download fails, why?
  • Q15: I named my repo incorrectly by not naming it <username>.github.io, can I rename it or I need to delete it?
  • Q16: [What do I do if I already have a github.io with my username?](Q16: What do I do if I already have a github.io with my user name?)
  • Q17: What do I do if I am on Unix/Mac/Linux and accidentally give root permissions, corrupting the installation of the vagrant vm?

General Internship Questions

Q1: What will I be working on during this internship?

OLE virtual interns will be helping develop OLE’s BeLL (Basic e-Learning Library) software. The BeLL is a virtual library that is deployed internationally to children in countries that typically do not have access to educational resources.

Q2: What kind of software will we be using for this internship?

As a 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.

Q3: Where can I find more information about this internship?

More information about the internship can be found here.

Q4: What are the hours of the internship?

This is an intensive internship that requires 16 hours of work each week. Work with your fellow interns and keep us updated in the Gitter chat.

Q5: Is this a paid internship?

Unfortunately no. This position is unpaid, but it will provide a diverse range of experiences in the workplace. It can provide a certificate of completion, upon request. Also, academic credit can be provided through your institution (if applicable).

Q6: What happens after the initial steps?

The initial steps are meant to introduce potential interns to the OLE BeLL software and the process that we use to develop features and improve upon the BeLL. To be more clear: the initial 10 steps are a vetting process to determine whether or not people are fit for the internship, so consider it an interview for the internship. Once you have completed the 10 steps and are approved, you have officially joined the OLE interns team! We’ll add you to the interns Gitter chatroom and assign you to a team. You and your team will be working on an assignment, and we’ll switch up the assignments each week.

Q7: If I'm an international student, how soon can I get my paperwork required by my visa?

After you finish the first 10 steps, let us know if you need us to sign some paperwork or provide you with an offer letter for your visa. Since the first 10 steps are a vetting process, your internship technically doesn't start until you finish them. Think of the first 10 steps as a continued application process as you are not working or adding to our organizational software, but rather showing that you have enough technical background to work with us. We are more than happy to speak to you about providing you with an offer letter or assisting with organizational information once you complete the 10 steps, but as you are not working with us until you are officially an intern, we cannot provide proof of working with us until you complete the first steps.

Q8: How many pull requests and issues in total do I need to make to finish the steps?

To finish the initial steps, you need to make a minimum of four issues and five pull requests so you can get familiar with GitHub and to show us that you can write proper issues/PRs.

Q9: How long do I have to complete these steps?

There is no official deadline, work on your own time. However, please note that most people who continued into the internship program completed the steps within 7-8 days.

Technical Questions

Q10: What is the purpose of nations and communities, and how do they work together?

We use the nation/community infrastructure because we often deploy our software in places without internet. Nations are the services sitting in the cloud (which are connected to the internet). Communities, which run locally on Raspberry Pis and/or laptops, are run on an intranet but are most of the time not connected to the internet. Because nations are connected to the internet, they allow a connection process between us (with internet) and users on communities (without internet). To sync with a nation, however, a community needs to be connected to the internet so that information can be sent in both directions.

Q11: How can I enable the Virtualization in order to turn vagrant on?

First of all, you have to access the BIOS. To do that, you need to reboot your computer and press the appropriate key while it’s booting. It is usually the "F2", "Esc" or "Delete" key. Once you have entered the BIOS setup menu, you have to search for an option called "Intel VT-x", "Intel Virtualization Technology" or something similar. Enable this option, save and reset. Now the "vagrant up" command should be working fine.

Q12: Why is the "Submit" button not showing up when I try to submit my survey?

Please make sure you’re using Firefox, as our BeLL software is only guaranteed to work in Firefox. To get the “Submit” button to show up, try logging out of the BeLL and logging back in, then go back to the survey. If that doesn’t work, log out of the BeLL, shut down the vagrant machine (vagrant halt in the directory where the Vagrantfile is located), vagrant up again, log in, and check the survey again. If you’ve tried these steps and it still doesn’t work, let us know in the Gitter chat.

Q13: Why does Firefox say “Unable to connect” when I try to load my community?

Because a community is run locally on your machine, you need to vagrant up in the directory where the Vagrantfile is located. You can then see if your community is running by going to 127.0.0.1:5985 in Firefox. Go to 127.0.0.1:5985/_utils to see the CouchDB behind the BeLL, and 127.0.0.1:5985/apps/_design/bell/MyApp/index.html to navigate the actual BeLL user interface.

Q14: When I first run BeLL with the "vagrant up" command the download fails, why?

You should first check if Hashicorp's atlas is up and running by looking at the left sidebar :

Left Sidebar

If Atlas is operational, then maybe your download is being interrupted, you can try to download and set up the big vagrant box file manually:

  1. Go to this atlas box page

  2. Click on the last version's (the uppermost) version number

Box Version

  1. Add /providers/virtualbox.box to the page's link you have been redirected to, and click enter to start the download via your browser, or copy the link and paste it in your preferred Downloader, preferably one that has pause/resume functionality.

  2. After you download the box run the following commands while in your ole--vagrant-vi directory, also put the correct path to the box you downloaded:

vagrant box add ole/jessie64 /path/to/vagrant-box.box
vagrant init ole/jessie64
vagrant up

You now have a working communityBeLL on your OS.

Q15: I named my repo incorrectly by not naming it <username>.github.io, can I rename it or I need to delete it?

You need to delete it and start over. Navigate to the misnamed repo and click the settings tab or enter https://github.com/YOUR-USERNAME/YOUR-MISNAMED-REPOSITORY/settings in your browsers URL bar. Next, scroll down to the Danger Zone section of the settings and click 'Delete this repository'. Read the warnings and then type in the name of the repo to confirm.

Q16: What do I do if I already have a github.io with my user name?

You have a couple of options.

  1. If you are not using the repo anymore you can delete it and then follow the First Steps.

  2. If you are still using it and you don't want to remember another login, you can create an organization and name the forked repro <orgname>.github.io

  3. Or you can just create another github account, and use that for OLE work

Q17: What do I do if I am on Unix/Mac/Linux and accidentally give root permissions, corrupting the installation of the vagrant vm?

In git bash type:

cd ole--vagrant-vi
vagrant destroy -f
cd ..
rm -rf ole--vagrant-vi
git clone https://github.com/dogi/ole--vagrant-vi.git
cd ole--vagrant-vi
vagrant up

'First Steps' Software Summary

The aim of the ‘First Steps’ is to introduce prospective interns to the software that they will be using, and make sure they are familiar with each. While each step goes into detail on the specific program(s) at hand, it can be easy at times to lose sight of the bigger picture. To that end, below is a brief synopsis of the primary tools you will be using/learning about in the first steps, and how they work together to empower our collaborative development environment.

We start off by learning about BeLL, or the 'Basic e-Learning Library.' BeLL is the learning tool that OLE uses to provide the educational materials and resources to its students. It is a lightweight digital Library that can be accessed through Local networks (’Communities’) and synced through the Internet (‘Nations’). To do so, we need to install a few software packages, Vagrant and VirtualBox primary among them. We use Vagrant (a development environment builder), in conjunction with VirtualBox (virtual machine software) to initialize a BeLL environment on the local system. Using this virtual environment we access the BeLL interface locally and create our own communities/nations.

The other two tools we focus on are GitHub and Markdown. Similar to how we use Vagrant and VirtualBox to standardize the development environment for each developer, we use Git/GitHub in order to centralize the development process, and enable greater collaboration and teamwork. Git is a revision control system that allows many users to simultaneously edit and develop the same projects, and GitHub is a website/hosting service that utilizes the git system, and hosts the git repositories we work on. Markdown, on the other hand, is a style of formatting text native to GitHub and thus used in the Virtual Intern program. Markdown simplifies formatting and emphasizes readability, helping coders focus on content, and not get bogged down in syntax.

To sum up, the primary software/tools we cover in the 'First Steps' are BeLL, Vagrant, VirtualBox, Git/GitHub and Markdown. Though not immediately apparent, the tools we use are all unified by a common purpose. Each bit of software we use is chosen in an effort to promote collaboration. The use of Vagrant and VirtualBox mandates that each instance of BeLL is the same, making sure that all developers utilize the same system. Markdown simplifies the development process, as each piece of code must comply to its syntax, increasing clarity for all users. Finally, GitHub serves as the last piece in the puzzle, as it takes advantage of the standardized development environment that Vagrant/VirtualBox provide, as well as the streamlined syntax of Markdown to allow for easy collaboration.

It can often be challenging to see the 'Big Picture', and it’s easy to lose sight of it when focused on individual tasks. With that said, hopefully this synopsis will have shed light on the importance of the process, and shown that each step is not an isolated assignment, but rather part of a greater task.

Helpful Links

GitHub and Markdown

VirtualBox

Vagrant

Helpful Videos