Skip to content

Instantly share code, notes, and snippets.

@njgheorghita
Forked from mbburch/prework.md
Last active October 1, 2016 16:41
Show Gist options
  • Save njgheorghita/ab161f36d3e548939f9f6397a24b7315 to your computer and use it in GitHub Desktop.
Save njgheorghita/ab161f36d3e548939f9f6397a24b7315 to your computer and use it in GitHub Desktop.
An example template for your Turing pre-work Gist

Turing School Prework - Nick Gheorghita

Task A- Practice Typing:

  • screenshots of scores will be posted in comments

Task B- Algorithmic Thinking & Logic:

  • screenshots of completed sections will be posted in comments

Task C- Create your Gist:

Task D- Set up your Environment:

  • Did you run into any issues?
    • I've used sublime text before for coding, are there advantages to visual studio / atom?
  • How do you open Atom from your Terminal?
    • subl
  • What is the file extension for a Ruby file?
    • .rb
  • What is the Atom shortcut for hiding/ showing your file tree view?
    • sublime - command k, command b
  • What is the Atom shortcut for quickly finding a file (fuzzy finder)?
    • command p

Task E- The Command Line:

  • screenshots of your terminal after each exercise will be posted in comments

Day One Questions:

  • What does pwd stand for, and how is this command helpful?
    • print working directory, to affirm where in the computer's filesystem you currently are
  • What does hostname tell you, and what shows up in YOUR terminal when you type hostname?
    • the name of your computer, Nicks-MacBook-Pro.local

Task F- Learn Ruby:

Option 1 Questions:

IRB

  • How do you start and stop irb?
    • start - type "irb" into your terminal
    • stop - type "exit" into your terminal
  • What might you use irb for?
    • to test or experiment short ruby code, not great for writing long programs

Variables

  • How do you create a variable?
    • var = value
  • What did you learn about the rules for naming variables?
    • cannot begin with a number, cannot be all numbers, use underscore not dashes,
  • How do you change the value of a variable?
    • similar to how you create a variable, var = newValue

Datatypes

  • How can you find out the class of a variable?
    • var.class
  • What are two string methods?
    • .to_i // .hash
  • How can you change an integer to a string?
    • 5.to_s

Strings

  • Why might you use double quotes instead of single quotes in Ruby?
    • in case you choose to make use of string interpolation and want it to work
  • What is this used for in Ruby: #{}?
    • string interpolation
  • How would you remove all the vowels from a string?
    • "string".delete('aeiou')

Input & Output

  • What do 'print' and 'puts' do in Ruby?
    • pass information to program user by displaying
  • What does 'gets' do in Ruby?
    • obtains information from user and makes it available for the program
  • Add a screenshot in the comments of the program you created that uses 'puts' and 'gets', and give it the title, "I/O".

Numbers & Arithmetic

  • What is the difference between integers and floats?
    • whole numbers vs. decimal values
  • Complete the challenge, and post a screenshot of your program in the comments with the title, "Numbers".

Booleans

  • What do each of the following symbols mean?
    • ==
      • compares for equality
    • =

      • greater than or equal to
    • <=
      • less than or equal to
    • !=
      • not equal to
    • &&
      • and
    • ||
      • or
  • What are two Ruby methods that return booleans?
    • .empty?
    • .include?('h')

Conditionals

  • What is flow control?
    • using logic to process information and return desired results
  • What will the following code return?
    • "Not many apples..."
apple_count = 4

if apple_count > 5
  puts "Lots of apples!"
else
  puts 'Not many apples...'
end
  • What is an infinite loop, and how can you get out of one?
    • when you set up the conditionals in such a way that the program is unable to break out of it's loop, ctrl + c
  • Take a screenshot of your program and terminal showing two different outputs, and post it in the comments with the title, "Conditionals".

nil

  • What is nil?
    • nil is a ruby object that has a boolean value of false, the only other ruby object with the same value is false
  • Take a screenshot of your terminal after working through Step 4, and post it in the comments with the title, "nil".

Symbols

  • How can symbols be beneficial in Ruby?
    • they can help to conserve memory for large programs
  • Does naming symbols use the same rules for naming variables?
    • yes, can't start with a number, can contain _
  • Take a screenshot of your terminal after working through Step 4, and post it in the comments with the title, "Symbols".

Arrays

  • What method can you call to find out how many elements are in an array?
    • array_name.length
  • What is the index of pizza in this array: ["pizza", "ice cream", "cauliflower"]?
    • 0
  • What do 'push' and 'pop' do?
    • push appends variable to end of array
    • pop removes first variable in array

Hashes

  • Describe some differences between arrays and hashes.
    • arrays store information well, but hashes make it simple to obtain specific datapoints
  • What is a case when you might prefer an array? What is a case when you might prefer a hash?
    • prefer an array when you're simply storing a list of identical variable types
    • prefer a hash when you want to store a variety of variable types
    • Take a screenshot of your terminal after working through Step 2, and post it in the comments with the title, "Hashes".

Task G- Prework Reflection:

  • Were you able to get through the work? Did you rush to finish, or take your time?
    • I'm somewhat familiar with the concepts, so it wasn't particularly challenging
  • What are you most looking forward to learning more about?
    • storing data // hashes
  • What topics would you most like to see reinforced by instructors?
    • proper coding convention // etiquette
  • What is most confusing to you about what you've learned?
    • command line // paths // organizational structure of computer & programs
  • What questions do you have for your student mentor or for your instructors?

Pre-work Tasks- One Month Schedule

(Note: You will most likely only get to the following sections if you have more than a week for your pre-work. If you are doing the one week pre-work schedule, you may delete this section of the Gist.)

Railsbridge Curriculum, cont.

  • Loops: Take a screenshot of your "Challenge" program, and post it as a comment in your Gist.
  • What challenges did you try for "Summary: Basics"? Post a screenshot of one of your programs.
  • Functions: How do you call a function and store the result in a variable?
  • Describe the purpose of the following in Ruby classes: initialize method, new method, instance variables.
  • How to Write a Program: Screenhero with your student mentor and share your program. Write a bit about what you found most challenging, and most enjoyable, in creating your program.

Launch School Ruby Book

  • screenshots will be posted in comments
  • What are your three biggest takeaways from working through this book?

CodeSchool

  • screenshots will be posted in comments
  • What are your two biggest takeaways from working through this tutorial?
  • What is one question you have about Git & GitHub?

Workflow Video

  • Describe your thinking on effective workflow. What shortcuts do you think you'll find most useful? What would you like to learn or practice that will most help you improve your speed and workflow?

Michael Hartl's Command Line Book

As you complete each section, respond to the related questions below (mostly taken directly from the tutorial exercises):

  • 1.3: By reading the "man" page for echo, determine the command needed to print out “hello” without the trailing newline. How did you do it?
  • 1.4: What do Ctrl-A, Ctrl-E, and Ctrl-U do?
  • 1.5: What are the shortcuts for clearing your screen, and exiting your terminal?
  • 2.1: What is the "cat" command used for? What is the "diff" command used for?
  • 2.2: What command would you use to list all txt files? What command would you use to show all hidden files?
  • 3.1: How can you download a file from the internet, using the command line?
  • 3.3: Describe two commands you can use in conjunction with "less".
  • 3.4: What are two things you can do with "grep"?
@njgheorghita
Copy link
Author

screen shot 2016-08-31 at 6 14 57 am

codeacademy terminal tutorial part 1

@njgheorghita
Copy link
Author

screen shot 2016-08-31 at 6 15 03 am

codeacademy terminal tutorial part 2

@njgheorghita
Copy link
Author

ruby // rvm // git confirmation
screen shot 2016-08-31 at 6 18 32 am

@njgheorghita
Copy link
Author

brilliant.org // 8.31
screen shot 2016-08-31 at 6 27 37 am

@njgheorghita
Copy link
Author

screen shot 2016-09-01 at 6 30 05 am

typing.io // 9.1

@njgheorghita
Copy link
Author

screen shot 2016-09-01 at 6 39 54 am

brilliant.org // 9.1

@njgheorghita
Copy link
Author

njgheorghita commented Sep 3, 2016

I/O
i o

@njgheorghita
Copy link
Author

Numbers
numbers

@njgheorghita
Copy link
Author

Conditionals
screen shot 2016-09-05 at 6 18 35 am

@njgheorghita
Copy link
Author

Nil
screen shot 2016-09-05 at 6 25 54 am

@njgheorghita
Copy link
Author

Symbols
screen shot 2016-09-05 at 6 44 58 am

@njgheorghita
Copy link
Author

Hashes
screen shot 2016-09-05 at 7 01 35 am

@njgheorghita
Copy link
Author

CodeAcademy : Command Line
screen shot 2016-09-05 at 7 45 34 am

@njgheorghita
Copy link
Author

Railsbridge Loops Challenge
screen shot 2016-09-26 at 8 30 12 am

@njgheorghita
Copy link
Author

Write a program that verifies whether someone can vote based on their supplied age.
screen shot 2016-09-30 at 2 20 06 pm

@njgheorghita
Copy link
Author

screen shot 2016-09-30 at 2 27 34 pm

@njgheorghita
Copy link
Author

screen shot 2016-09-30 at 2 33 30 pm

@njgheorghita
Copy link
Author

screen shot 2016-10-01 at 10 41 32 am

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment