Take a moment to shake hands and introduce yourselves. You and your pair may have different experience levels, which is normal. You'll have opportunities to both teach and learn from your partner. Keep an open mind, and always be kind :)
The workflow may take a little getting used to, so give yourself time to work through any git issues (aka: "gituations") that arise.
Take turns as 'driver' and 'navigator', alternating roles half-way (typically a couple TODOs or one hour, whichever arrives first).
Here is the recommended workflow:
- Driver: fork this repository if you haven't done so already.
- Your forked repo on GitHub will be your "origin" repo. Clone your fork to your local development environment:
- If you haven't done so yet, create a directory named "301" -
mkdir 301/
(This will be your parent 301 directory and set you up for organizational success!) - Next,
cd 301/
mkdir lab-assignments
to house the pair assignment repos.cd lab-assignments
mkdir my-forked-labs
cd my-forked-labs
git clone
this repo.cd
into this repo.- Immediately
git checkout -b
driver-name-navigator-name (ex:git checkout -b rick-brian
).
Find those TODO
items in the code, and tackle one of them.
-
Driver: In your terminal, ensure that:
- you are on a branch with you and your partner's namesake.
- you are currently within the starter-code directory.
-
Type
atom .
to open this starter-code folder as a project in Atom. -
Use the Atom "Find in Project" (command shift "f" if on a Mac) to locate all the
TODO:
items. -
Work through one or two TODO items before switching roles (or one hour, whichever arrives first), testing your code as you go.
-
In your terminal type
git status
to view the files that you have changed. You should only see the files that you have worked on. -
Type
git diff
to see line-item changes with your down arrow key. (Typeq
to exit this mode!) -
Type
git add file1 file2
where file1, file2, etc. are the files that you have changed. -
Type
git status
to view the files that have been added to your commit. You should only see the files that you worked on. -
Type
git commit -m "some meaningful message"
where Some meaningful message is a message that thoroughly explains your commit. -
Type
git status
to ensure there is nothing left to commit. -
Type
git push origin your-name-partner-name
to push this branch to your forked repo on GitHub. -
On GitHub, Add your navigator as a collaborator (go to settings -> collaborators).
-
Once they have been added,
Slack
to your partner your forked repo link for them to clone down.
- Navigator (AKA new Driver): You can now clone the driver's fork, to your own local dev environment. If you haven't already:
mkdir 301/
that will be the parent directory for all things 301.cd 301/
mkdir lab-assignments
cd lab-assignments
mkdir partners-forked-labs
cd partners-forked-labs
- The new driver (original navigator):
git clone
the repo your patner Slacked you into your navigator folder.git fetch origin
branch-name- Now open the starter-code in Atom. It's your turn to have the hands on the keyboard!
When you are finished with lab (or if the 2 hour time limit runs out), please submit your work. To do this, you'll create one Pull Request (aka: "PR") to the original repo with your changes, and you'll each submit that same PR link in Canvas.
- Ensure that all your local changes are committed, and pushed to your
origin
repo. - Visit the origin repo on github.com. (or just type
git open
in the terminal if you have that package installed 😉 - Create a new PR and ensure the branches look correct.
- Fill in the template based on the text box prompts:
- Write a good descriptive summary of your changes: - Be sure to include how much time you spent on it, and who you worked with. - Briefly reflect on and summarize your process.
- When you create the PR, it will have a unique URL. Copy this link, share with your partner, and paste it into the assignment submission form in Canvas. Both the driver and the navigator will submit the same PR link.
- Set up the viewport and fluid media rules so content fits on mobile devices.
- Add a "Hamburger" menu button, that reveals the nav links when tapped on a mobile device.
- Ensure the images are responsive 😉
- [Video: Mobile Testing Tip for Your Phone] (https://www.youtube.com/watch?v=2t4E_tc8TKM)
- Use media queries to re-style the header and navigation on desktop-width screens. Nav should be tab-like links on one row.