- 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?
- Q10: What do I do if '<YourUserName>.github.io' is already in use?
- Q11: What if you encounter Host key verification fail?
- Q12: Why can't I ssh into my Raspberry Pi after installing a new treehouses image?
- Virtual systems engineering interns will be helping develop OLE’s treehouses system. Treehouses allows us to share our different learning platforms via the Rasperry Pi series of single-board computer devices.
- As a part of this internship, you will be working with software, languages, and hardware including Git, GitHub, Markdown, Vagrant, VirtualBox, Command Line/Terminal, Command Line/Terminal Scripts, Vim, CouchDB, Docker, and Raspberry Pis.
- More information about the internship can be found at the Virtual Software Engineer Intern listing here.
- 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.
- The reason we have a 16 hour minimal commitment per week is that things are moving forward quickly and it might be hard for virtual interns to catch up with changes. Basically, we would have a few hours of Google Hangout sessions per week where everyone shares their screen, discusses problems, and works on issues together. Then the rest of the time is for catching up with the changes and working on issues assigned.
- This position is unpaid, but it will provide a diverse range of experiences in the workplace. We can provide a certificate of completion, upon request. Also, academic credit can be provided through your institution (if applicable).
- The initial steps are meant to introduce potential interns to the Treehouses system and begin assigning you assignments! 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.
- 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; you are not working on or adding to our organizational software, but rather showing that you have enough technical background to work with us. After you finish the first 10 steps, let us know if you need us to sign some paperwork, give you organizational information, or provide you with an offer letter for your visa compliance and we'd be more than happy to help. Find out information related to your paperwork here.
- To finish the initial steps, you need to make a minimum of 4 issues and 5 pull requests so you can get familiar with GitHub and to show us that you can write proper issues/PRs. Check your progress here.
- There is no official deadline, so work on your own time. However, please note that most people who continued into the internship program completed the steps within 7-8 days.
- Create an organization and use it to fork the repository:
- Click on the '+' icon next to your account icon (top right corner in github) and select 'New organization'.
- Name the organization '<YourUserName>-OLE', select 'My personal account', choose the 'Team For Open Source' option, and enter your email address to create the account.
- Now it will prompt you for which profile to use when you fork the treehouses repository.
- You encountered this error because the host key has been changed due to new installation of the raspberry pi or your host key has been changed.
- To fix the issue, You can try the following methods:
- remove
known_hosts
file withrm ~/.ssh/known_hosts
- avoid checking for host keys with
ssh -o StrictHostKeyChecking=no <user>@<host>
- remove the exact key line of the offending host by looking in the output for
Offending key in /home/peter/.ssh/known_hosts:<linenumber>
and then withsed -i <linenumber>d ~/.ssh/known_hosts
remove this exact line
- remove
- If you run into this error you will see a message like " WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED!" when you try to ssh into your Raspberry Pi after installing a new treehouses image onto it. Thankfully this is an easy fix
- To fix this type the command
cd
on your local machine. Thencd .ssh
. Open theknown_hosts
file by typingvim known_hosts
. Inside of this file you need to find your Raspberry Pi's ip address and delete that line since that is old known host for the previous treehouses image. Save the file. Now you should be able to ssh into your Raspberry Pi wihtout an issue.
-
General
-
First Steps
-
Intermediate
-
Reference/Advanced
-
Git Workflow
-
Markdown
-
CLI
-
Vi/Vim
- GitHub & Git Foundations (Playlist)
- Shorter Git/GitHub Tutorial (Playlist)
- Mastering Markdown (Playlist)
- How to Manually Fix Git Merge Conflicts - Please note that this video will explain how to fix a merge conflict from the point of view of the repo owner who is trying to merge a pull request. However, it is helpful also when you have to fix a merge conflict on your own local and forked repos.
- How to Use VirtualBox
- Vagrant Tutorial
- Docker Tutorial
- SSH_Key Tutorial