One of the most important parts of Epicodus is pair programming, which we do every class session. We require that students pair with each other. If we have an odd number of students, we’ll ask you to work in a group of three. The only exceptions to pair programming are independent projects, which you'll complete on your own without assistance.
Pairing with remote collaboration tools is very similar to pairing in person. All students will try out pair programming with remote collaboration tools in the first course section of Introduction to Programming. Online students will use the online pairing workflow throughout the program.
These instructions apply to all students at Epicodus in every class session!
Every class session, you'll need to find a pair or group of three from within your dev team. Dev teams help our students get organized and encourage students to build community and help each other solve problems. You can find a pair from your dev team in the following ways:
- During your Dev Team Scrum, you can plan who will pair up for the day. This is usually how students get organized during the very first week at Epicodus.
- Dev teams often have a group direct message set up. Instructions on how to set up a group direct message are located in this lesson about direct messages in Discord. Once a group direct message is set up for your dev team, you can send text messages saying that you are looking for a pair for the day. If anyone in your dev group has already sent a text message stating that they are looking for a pair, we recommend checking in with them first about pairing for the day before sending out a text message of your own.
- Alternatively, you can join a dev team voice channel and wait for a pair, or find a dev team voice channel where one person is waiting for a pair. In this case, either text the person in the channel or check in via the voice channel to confirm that you can pair for the day.
To reiterate, in-person students will use remote collaboration tools in the first course section of Introduction to Programming. Online students will use these tools every class session. All students will use Discord to ask questions and share resources, and your instructor will have specific information on what that will look like.
Next, one person in your group will start a project and share it through VS Code. Everyone in the group will be able to type on the same file at the same time, similar to Google Docs. We will be using VS Code throughout the program and you'll also have a chance to practice using VS Code with your pair before we start using it for writing code. To share your screen in VS Code ("Start a Collaboration Session"), follow the instructions below:
- First, make sure that you have a project open! Starting a Live Share session and then creating project folders and files often result in issues.
- Click "Live Share" on the bottom menu bar and select the "Sign in through GitHub" option at the top of the window. You will be redirected to GitHub.
- Click the big green button, allowing VS Code to use your GitHub login. Say yes to any pop ups.
- This will begin a Collaboration Session. A window will pop up in the bottom-right corner indicating your session has begun and that its link has been copied to your clipboard.
- Send that link to your pair (you can send a direct message in Discord).
- To join a Collaboration Session from your pair, simply click the link they send and sign in through GitHub. Say yes to any pop ups.
- Take note that you can't share an unsaved file, so make sure to save the file that you're working on before you start the a sharing session.
- Make sure to communicate with each other regularly about who is "driving." (The driver is the one typing code.) If you are not driving, make sure you check in with your pair before you start typing. Each student should drive for about the same amount of time each day — regardless of skill level. We recommend changing drivers every 15 or 20 minutes.
Use voice chat in Discord to talk with your pair. If you have an accessibility issue or need accommodations other than voice chat, please let your teacher know.
We recommend that you keep check in often and you share your video throughout your pair programming session. It's nice to see each other's faces, and it's important to keep on-going and open communication.
Teachers will join your Discord pairing channel and check in periodically. You can post questions in the
#questions channel for your cohort. Teachers will monitor this channel and you're welcome to answer other students' questions there as well!
In the next lesson, we'll discuss online pairing etiquette and steps you can take to make sure you and your pairs have positive pairing experiences.