House Rules
- Cameras on:
- 8-9am
 - During breakout discussions and when paired coding
 - After 2pm
 
 - Be an excellent neighbour:
- People are allowed to like (and not like) things;
 - Work the problem before asking for help;
 - Teach a skill you've learned.
 
 - Ask a question any time during a live stream. There are no dumb questions (maybe silly ones).
 - One-on-ones: DM your instructor anytime to book a time for a confidential video/audio chat. Note: this is not for tutoring, see below.
 
Sidebars
Direct Message your instructor at any time if you have a private non-coding concern or question.
Getting programming help
There is only one instructor (per course) but many students. Three key skills we will be teaching in this program are:
- Independent learning
 - How to ask for help
 - Knowing when to ask for help
 
These are skills employers look for when they hire Juniors.
Debugging
We recommend you follow these steps when you run into a problem:
- Troubleshoot! This is how you learn to code: through your fingers.
- Are there syntax errors?
 - Did you validate your code?
 - Can you reproduce the error reliably?
 - Any theories?
 
 - Using the proper terminology, search for solutions online;
- And learn to recognize the quality of a search result;
 
 - More troubleshooting!
 - Talk to a rubber duck;
- It seems silly but just talking through a problem out loud will often lead to a potential solution. The mind is funny that way.
 
 - If you're still stuck, ask for help (and be respectful of someone's time) from:
- your classmates, using the 
#fall-2021Slack channel (so others can benefit from the discussion); - outside nerds, such as forums, Discord servers, etc;
 - your instructor, keeping in mind they will ask you if you've attempted any of the above steps.
 
 - your classmates, using the 
 
Slack best practices
@mentionsomeone if it's important or a direct reply to someone's message. This will send the person a notification (by default) but don't overuse it.- Can your question be answered by a classmate? Consider posting it in 
#fall-2021instead of a Direct Message. The answer will probably be of use to the rest of the group (don't forget to work the problem yourself, first). - Don't wait for someone to be online before asking them a question. Just ask the question and give the person some time to respond.
- The goal of asynchronous messaging apps is to provide enough information so that someone can help while you're offline.
 - Think like you're sending an email (asynchronous), not live chatting (synchronous).
 - Examples of flawed Slack messages:
- "Hi @tony" (and then nothing after)
 - "@tony I'd like to ask a question" (and then nothing after)
 
 - Examples of great Slack messages:
- "I can't figure out how to move this button to the left. Any ideas? Screencap attached! Here's a link to the GitHub code! I think it's a problem with line 25."
- You've been staring at the same code for awhile. Others haven't. Point them in the right direction.
 
 - "@katy Free at 5pm for a strategy chat? If not, I'm free tomorrow during lunch."
- Providing backup options reduce the need for back-and-forth discussion.
 
 
 - "I can't figure out how to move this button to the left. Any ideas? Screencap attached! Here's a link to the GitHub code! I think it's a problem with line 25."
 
 - Want to meet any past grads? Post a message in 
#general. 
