den-materials / wdi-orientation

[tools]
Other
0 stars 1 forks source link

Orientation

Why is this important?

Make sure everyone has a similar development environment and similar expectations around how the course will run.

What are the objectives

Industry

WiFi

Please use the INDUSTRY-CORP network. Username: "ga-guest". PW: "yellowpencil"

Parking

Parking is not easy around General Assembly and Industry, but is definitely possible. The following options are available:

Using Industry Space

Class Expectations

Graduation Requirements

* Homework must be submitted by 9:00am the class day after assignment

* We expect homeworks to be completed by 9:00am the class day after that

Checks for Understanding (CFUs)

Fist-to-Five

One of the things you'll notice about the classes is that we'll chop them up and ask you individual questions, and make sure everyone is keeping up. We'll be using several techniques and tools to look at how the whole class is doing and one of those techniques is called the Fist-to-Five. Everyone holds up between 0 and 5 fingers depending on how they feel. We'll typically use Fist-to-Five in two cases: to check on how you understand some piece of content or to check on agreement.

Value Learning Agreement
0 Did I walk into the wrong class? I am offended by this
1 I need help I have strong reservations
2 I think I need some help I have a few reservations
3 I understand I'm OK with this
4 I think I can teach this Not the best idea, but close
5 I can teach this That was my idea!

One Cool Thing

Throughout the first week, we will be asking each Developer to find out one cool thing about one of their fellow Developers every day. There are only two rules to this:

Shout Outs

Another thing we want to stress is the Shout Out. Any time one of your squadmates gives you an "A-ha" moment, or knocks a lab out of the park, please share it with the rest of the class on the #wdi6 channel. It can be anything in the course, even if it's not related to the current topic, and can also be something we covered a few weeks ago.

"It's not at all important to get it right the first time. It's vitally important to get it right the last time." - Dave Thomas (Not the Wendy's Guy)

Squads

Every unit, we will establish 'squads' - these small teams will contain 3-4 developers who will sit together and be each other's first lifeline if Google does not resolve an issue. Your squad will be responsible for approving your project ideas, and will act as your team for group projects.

Each unit, squads will be reshuffled to allow developers to experience different perspectives and personalities in much the same way they will experience these in a development job.

Schedule

The typical schedule for the week is below:

Daily Schedule Overview

Time Activity
9:00 Morning Warm-Up
9:30 Module 1
11:00 Module 2
12:30 Lunch
1:30 Module 3
3:00 Module 4
4:00 Independent Work*

* From 4:00pm to 5:00pm, the Instructors will be unavailable for questions or issues.

A TA will be available every Monday, Tuesday, Wednesday, and Thursday from 530pm to 830pm unless there is a holiday or special event. On Tuesday, Wednesday, and Thursday, another helper will be available from 5pm to 6pm. Before asking the TA for help, please clarify your issue, using a GitHub issue (more on this later).

Each module is usually a training section or a lab section. They'll run about 75 minutes each and then we'll have a quick break. If you need to step out of the room for a bathroom break or a phone call, feel free to during the class.

The schedule above is a general guideline, but we will give a more accurate schedule at the beginning of every day.

We'll have a detailed schedule up for the next week by the weekend before it. The schedule is available on GitHub. We'll fill in the links for the specific lesson plans by the beginning of the day.

Communication

Slack

Feel free to use #wdi6 for any conversations outside of lectures for general course content questions. For any other discussion not related to the curriculum, you can use #random or an appropriately named channel (e.g. #upcoming-events to pitch an upcoming event).

Instructors Communication

One of the most important things that you'll learn in this course is how Developers learn things. Ultimately this will be a Read-Search-Ask (RSA) policy.

  1. Read the instructions and/or documentation...
  2. Search using Google, and finally...
  3. Ask someone.

As we progress, the Developers will be expected to get more and more independent. This will be painful, but there is a reason for it.

GitHub Issues

GitHub is a powerful tool, and we will be using it throughout the class. One of the most important uses of it will be building this Developer independence. If a Developer is having an issue with their work on an assignment, and needs help of any kind, we are expecting them to submit a GitHub issue:

Feedback on lessons and assignments

Firstly, feedback on lessons and assignments is always appreciated. If you see something that is confusing, or unclear, please submit a GitHub issue on the relevant repository with a detailed explanation. Then send a Slack message to #wdi6 with a link to the GitHub issue you created.

Request for help from Instructors

Secondly, any request for help from instructors should follow the Read, Search, Ask policy mentioned above. Specifically, to request help we are expecting a GitHub issue on the relevant repository with a detailed description of the problem. Before submitting this issue, make sure you have tried to "Google your way out", and ask a neighbor if there is one nearby.

Putting content questions in the Slack channel has several benefits:

Note that Instructors will not be available 24-7, but will do their best to answer questions as soon as possible. If a Developer doesn't feel their questions were fully answered by the next class, please bring it to the attention of the Instructors at the beginning of class.

The Help "Queue"

If you would like 1:1 help from either of the Instructors, mention @zeb or @Joe Oldenburg in the #wdi6 channel, and we will set up appointments on a first-come, first-served basis. We will take 1:1 appointments outside of instructional time. Note that we might combine 1:1s into a small group if several people approach with the same issue.

Other Issues

Instructors can take direct messages for non-content related issues. Direct messages are a great way to talk about any issue that you're not comfortable talking about in a public channel.

"No one is born knowing how to code." - Various

Staying Healthy

This course will be a lot of work. We will ask a lot of you, and we want to make sure that that is balanced with your personal health needs.

Sleep Getting a reasonable amount of sleep is important. 6-9 hours per night, depending on your needs, can be a useful general guide for a schedule and how much material to work through.

Exercise Getting out for some exercise everyday will help you learn and think creatively, so don't be afraid to take some time for exercise.

Family/Free time The course moves fast, and it will take a lot of time, but don't feel bad if you need to take time for family or just take a break. You'll usually find you can make more progress when you come back from that break.

Assessments

General thoughts on assessments:

The best way to learn how to program is to program. Try things out. Make mistakes and fix them. One of the great advantages of programming is that you can gain your "10,000 hours" of practice with constant feedback from the computer itself. The important thing to remember is that this is a safe place to make these mistakes, fix them, and learn from them.

Also, if the computer does what you want it to do, you've succeeded. This can be really confusing, but generally, "No news is good news," with a computer. If you are ever unsure of what's happening "under the hood", use the Read-Search-Ask policy. Your peers and the Instructors are here to help.

"If you want to run fast run alone, if you want to run long run together." - Kenyan proverb.

Work and Feedback

Exit Tickets are weekly surveys that we will deliver toward the end of every week. Please be as honest and open as possible, because your feedback helps us shape the course, and the earlier we can do that shaping the better.

Homework will be reviewed every night. If you have specific questions around homework, follow the procedure for GitHub Issue submission above. Keep in mind, we've chosen to write the homeworks in a way that will make them a good future reference, and will challenge all students. Sometimes this may be more than you can accomplish in one night. If you're spending several hours on a homework and not making much progress, submit what you have done and move on to something else. As mentioned earlier, sleep and well-being is important.

Submit homework by 9am the following class day. We will be using Google Sheets for our submissions. You should have received a link to your personal tracker on Slack from an instructor today. We will walk through submitting your first test assignment by the end of today.

To re-iterate, submit all of the homeworks. Even if you don't make much progress on a homework, submit it, as that's important feedback on how we're doing as Instuctors and as a class.

Homework Feedback will be given by one of the Instructors. You will receive a direct message with an indication of your pass/fail grade on the assignment, one specific "glow" (thing you did well), and one specific "grow" (something you could improve).

Labs during the day will not be formally reviewed, but questions that come up after the lab can come through Slack and 1:1s. Labs are similar to homework in the sense that we're writing them to be good references on the topic, and sometimes there may be more work than you can do.

Projects will include a rubric, or a predefined set of standards that will be evaluated. For projects 1-3, the Instuctors will go through your code and highlight any specific issues that we see to help you understand how to write better code. The Instuctors will also have a 1:1 with each developer where we go through the rubric and celebrate your progress and help work through any issues.

"You are not your code." - Multiple Quora Users

Goals

Final Thoughts

InstallFest Help

If any Developers need help with the installFest materials they received last week, we are here to help.

** Setup your Mac Development Tools

** Setup your Node Environment

** Setup your PHP/Postgres Environment

Licensing

All content is licensed under a CC­BY­NC­SA 4.0 license. All software code is licensed under GNU GPLv3. For commercial use or alternative licensing, please contact legal@ga.co.