Skip to content

Instantly share code, notes, and snippets.

@colganmeanor
Forked from ericweissman/session1_hw_mod0.md
Last active July 22, 2021 03:53
Show Gist options
  • Select an option

  • Save colganmeanor/52995d7701b2429eb6b6017fc0a661b2 to your computer and use it in GitHub Desktop.

Select an option

Save colganmeanor/52995d7701b2429eb6b6017fc0a661b2 to your computer and use it in GitHub Desktop.

Session 1 HW

CAREFULLY READ ALL THE INSTRUCTIONS BEFORE STARTING THESE EXERCISES!

To start this assignment:

  1. Click the button in the upper right-hand corner that says Fork. This is now your copy of the document.
  2. Click the Edit button when you're ready to start adding your answers.
  3. To save your work, click the green button in the bottom right-hand corner. You can always come back and re-edit your gist.

Readings + Responses

  • Your key take-aways OR how you're going to implement specific points (minimum 2):
  • Googling is not a sign of ineptitude or weakness, knowing how to google efficiently can be an incredible use of time and resources.
  • There is an incredible skill to knowing how to google something - too often people just do not Google correctly, and don’t know how to phrase their question or issue in a way that returns results. Knowing proper syntax, and formatting for your question can be a really useful way to game the system and get what you need from Google.
  • The comments are all nice and help reinforce the idea that googling is a common tool for devs / programmers. It’s reassuring to see that everyone relies on this tool
  • Briefly describe (in your own words) each of the tips below AND provide an example of a search that captures the sentiment of the tip
  • Tip 2: use quotation marks to specify an EXACT search query - example: "frozen irish coffee in New Orleans"
  • Tip 3: using a hyphen or dash mark to remove potentially related words from search results - example: "horses new orleans -races" for searching for horses in new orleans, but not wanting to see horce race search results
  • Tip 4: using a colon while searching to only see search results on a given site. example: "Guy Fieri site:foodnetwork.com"
  • Tip 9: using 'OR' to search two queries at once - example: "xbox OR playstation"
  • Tip 13: use professional terminology when searching - example: "local florist in New Orleans"
  • Tip 14: distill your search query down to its core message, don't use superfluous language - "barber uptown new orleans" or "salon near me"
  • Tip 17: if your first search is unsuccessful, try to use the exact words that are central to your issue: "open atom from terminal" rather than "why isn't atom opening from terminal"

Turing Prep

1. Creating a Mod 0 Calendar (20 mins)

Before you create your Mod 0 calendar, we recommend going back to the Session 1 Lesson to review some tips from our most successful students re: calendaring and time management.

Create a calendar using a tool of your choice (Google Calendar, iCal, etc.) for the remainder of Mod 0 until your due date for the Mod 1 Prework. Your calendar should include the following:

  • Each class session
  • Relevant due dates: HW, Assessment submission, Mod 1 Prework, Cohort Orientation
  • When do you plan to work on HW?
  • When do you plan to work on the Mod 1 Prework (about 40 hours total)?
  • When do you plan to review material covered in class?
  • When do you plan to study for the assessment?
  • When do you plan to make time for self-care?
  • What other commitments do you have throughout the course of Mod 0?

As outlined in class, using different colors in your calendar for parts of your life (Turing, wellness, commitments, etc.) can make it easier to parse through your competing priorities. Here is a suggestion you could use for your Mod 0 Calendar...

  • Mod 0 classes
  • Outside prep (HW, Prework, studying, practice, assessment)
  • Work/prior commitments
  • Wellness

Take some time to build out your calendar for Mod 0 and add a few photos/screenshots below. You can take a screenshot on your Mac using CMD + SHIFT + 4 and drag around the area of your screen you want to capture!

The first answer in this StackOverflow post gives a great shortcut for easily adding images to your gists!

Add screenshots of your calendar below

Screen Shot 2021-07-21 at 7 16 52 PM

Screen Shot 2021-07-21 at 7 25 27 PM

Screen Shot 2021-07-21 at 7 25 40 PM

Screen Shot 2021-07-21 at 7 25 58 PM

If you are struggling to find time in your calendar to complete all of the M1 Prework please reach out to Eric Weissman (@ericweissman) on Slack to setup some time to discuss an alternate gameplan for completion!

Exercises

1. Creating Files and Directories (10 min)

Need help? You can go back to the files/directories portion of the lesson here.

Use commands in your terminal to create the directories and files structured exactly how they appear in the image below.

directories

When you're done, type history to see your commands. Copy and paste the commands that were used to create the directory and files:

colgan@colgans-mbp utils % history
mkdir cool_project
cd cool_project
   68  touch styles.css
   69  ls
   70  mkdir dank_codes
   71  ls
   72  cd dank_codes
   73  touch data.rb
   74  touch app.js
   75  mkdir resources
   76  ls
   77  cd resources
   78  touch deployment.md
   79  mkdir utils
   80  ls
   81  cd utils
   82  touch utilities.md
   83  ls

2. Modify your Zsh Prompt (10 min)

  • Make sure that your shell is set to zsh by running the following command: $ chsh -s /bin/zsh. Remember to omit the $! Note that macOS Catalina and later operating systems already use zsh as the default shell.
  • [] Watch this video and follow each step to modify your own zshrc configuration file. As mentioned in the video, you will need this snippet below:
# Load version control information
autoload -Uz vcs_info
precmd() { vcs_info }

# Format the vcs_info_msg_0_ variable
zstyle ':vcs_info:git:*' formats '%b'

# Determine if current working directory is a git repository
git_branch_color() {
  if current_git_status=$(git status 2> /dev/null); then
    parse_git_dirty
  else
    echo ""
  fi
}

# Change branch color if working tree is clean
parse_git_dirty() {
  if current_git_status=$(git status | grep 'Changes to be committed:\|Untracked files:\|modified:|deleted:' 2> /dev/null); then
    echo "%F{red}"
  else
    echo "%F{green}"
  fi
}

# Set up the prompt (with git branch name)
setopt PROMPT_SUBST
PROMPT='%F{white}%d $(git_branch_color)${vcs_info_msg_0_} %f$'

After you have saved this file, be sure to quit and restart your terminal.

We will be working more with git in the next session and will be able to see some of these changes take effect!

4. Practice Keyboard Shortcuts (10 mins)

Mac Environment

Use these shortcuts to quickly move around within your environment.

  • command + spacebar - Open a program or search for a file
  • command + tab + tab ... - Cycle through open programs
  • command + ~ - Switch between separate open windows of the same program
  • command + q - Quit an open program

Rectangle

Start by making sure Rectangle is running with command + spacebar then type rectangle and then return. You should see a window icon at the top right of your menu bar. Click the icon to see a dropdown of your shortcuts. Click preferences to customize them.

  • command + option + enter - Full Screen Current Window
  • command + option + left arrow - Left Half Current Window
  • command + option + right arrow - Right Half Current Window
  • command + option + up arrow - Top Half Current Window
  • command + option + bottom arrow - Bottom Half Current Window

Chrome Browser

Start by opening Chrome with the shortcut (command + space) you already learned.

  • command + d - Bookmark current page
  • command + t - Open new tab
  • command + n - Open new window
  • command + shift + n - Open new window in Incognito mode
  • command + l - Highlight current URL
  • control + tab - Cycle through tabs to the right
  • control + shift + tab - Cycle through tabs to the left
  • command + shift + r - Reload page
  • command + w - Close tab

This video from Technical Programs Instructor Amy Holt gives some great screen management tips.

Self Assess

Using the rubric below, assess how you did with these exercises. These are the same metrics your instructors will use to determine if you are prepared for Mod 1!

  • I read carefully read ALL directions
  • I completed all parts of the exercises (not including Extensions) to the best of my ability
  • I used correct syntax, spacing and naming conventions
  • I followed ALL formatting instructions
  • I pushed myself out of my comfort zone and experimented/broke things to try to learn
  • I spent no longer than 20-30 mins Googling a specific problem before asking for help
  • I went back to the lesson to search for clarification before asking for help

Stuck? Having Issues?

Are you stuck on something? Here is the BEST way to ask for help:

  • Start or reply in the thread with the problem you are facing. Be sure to follow the guidelines for asking questions below:
    • I can explain what I am trying to do or accomplish
    • I can what I have tried so far and/or what resources I've tried online
    • I can describe specifically what I am stuck on
    • I provided screenshots and/or code examples to give context
      • If I provided short code examples, I used inline code formatting for single lines of code/error messages
      • If I provided larger blocks of code, I used a code snippet in the correct format (such as .js or .rb)
  • Usually, your classmates will be able to answer your question or point you in the right direction very quickly! If not, an instructor will reply within 24-48 hours
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment