Session 1 Expectations, Keyboard Shortcuts, Googling, and Data Types


By the end of this session, you will be able to:
  • speak to Turing's mission and expectations
  • implement study habits that will help you be successful at Turing
  • use keyboard shortcuts to navigate your computer and Chrome
  • brainstorm classes for specific objects
  • refine searching and filtering skills to Google programming questions
  • define and identify use cases for basic data types



  • Quiet Space
  • Notebook
  • Writing instrument
  • Laptop
  • Headphones & mic


  • Instructor intros: David and Robert
  • Goals for session (see above)
  • Follow along by clicking the lesson plan in slack

Housekeeping and Follow-ups

  • Did you get through your session 1 pre-work? Post in the chat!
  • Change display name to first name, last initial, pronouns, program; ie - Rachel W. (she/her, BE)
  • Session will be recorded and posted in Slack
  • NOTE: text typed into this page will not save, so don’t refresh or close this window until you’ve reviewed your notes.
  • No computer yet? No worries! Message me if your computer isn’t expected to get here this week!

Breakout Rooms

This is a feature in zoom that we’ll use throughout the mod 0 sessions. They allow for small group discussion, where y’all can solidify concepts or work through challenges. You’ll be kicked out into smaller group with 2 or 3 of your classmates. When they’re finished you’ll get a 60 second warning where you can rejoin the main session, or you’ll automatically rejoin at the end of the 60 seconds. During these, we may broadcast messages or pop in to see how we are doing time-wise. They can be a bit awkward at first, but try to embrace them and have fun!

Try It: Break out rooms

1. Introduce yourself (name, pronouns, program)

2. Where do you call home

3. What is your favorite snack of all time?

Other things to note as we go through Mod 0:

  • Zoom: turn video on, turn mic off unless speaking
  • You can raise your hand using zoom: go ahead and try it now!
  • Problems or individual questions during the Zoom session? Send a message in the chat!

Turing Mission and Expectations

“Our mission is to unlock human potential by training a diverse, inclusive student body to succeed in high-fulfillment technical careers.”

  • We all have different backgrounds and experiences
  • Listen and learn from one another’s perspectives

A different type of learning environment

Turing is a very challenging experience for most people. To be successful here, I’d highly recommend that you embrace a growth mindset. This means that you believe that knowledge and intelligence can be improved through hard work and dedication and that you may fail at something before you’re successful at it. It’s the difference between being good at something right off the bat, and working hard to get good at something that sets people apart here.

This is not traditional education

  • You will not be given all of the answers
  • We expect you to do your own research
  • Technology is constantly changing
  • Learning how to learn

There is no transcript - Sure, you’ll get a diploma upon graduation, but we don’t have GPAs at Turing and grades are not the measurement of success. We measure success in understanding. Throughout your time at Turing, you’ll have projects and assessments that will allow us as instructors to gauge your success. This is because the ultimate goal here is for you to get a job in software development. And to do so, you need to show understanding during the interview process.


Make sure that you’ve added the Mod 0 Calendar to your own calendar. This is where you will find all mod 0 related events, including sessions, capstone study sessions, and other community wide events.

We will also remind you when these events are via slack, which is the primary mode of communication we use at Turing. Make sure that you’re checking it once a day so that you can stay up to date. It’s also a great place to ask questions if you are running into issues, as people are likely experiencing the same issue that you are.

  • Let’s practice a couple of slack features right now! Watch as we show you how to make and write in threads.
    • Thread: What is your favorite food?

Mod 0 Expecations

Mod 0 is less about code or solving difficult problems and more about developing and learning tools, procedures, systems, and learning behaviors/processes. For some of you, the technical content will be brand new. For others, it will be review.

At the end of Session 4, you’ll take a technical assessment that will showcase a subset skills you learned during Mod 0. The assessment will be performance-based rather than multiple choice. The assessment instructions will include a checklist of what we’re looking for to know that you’ve practiced and mastered the material.

Being Turing Ready

At the end of mod 0, you’ll be considered one of the following:

Not Ready based on any of these factors:

  • You’ve missed more than one session or did not meet engagement expectations
  • You’ve missed assignments or delivered poor quality work
  • You were unable to pass the Technical Assessment
  • You were unable to pass the Mod 0 Capstone
    • Next step: You have one chance to re-enroll in and successfully complete Mod 0
  • If you don’t pass on your second try you will be asked to reapply to Turing in 6 months.

Technical Ready

  • Your work and assessment have met the expectations of mod 0
  • Next step: Submit your Program-Specific Mod 0 Capstone

If your Mod 0 Capstone meets expectations, you’ll be Turing Ready

Break out rooms

1. What is one reason you chose to come to Turing?

2. What is your biggest concern about coming to Turing?

3. What is a skill or focus area that you want to be held accountable on during mod 0?

ie. Asking questions during sessions, sticking to a calendar, using a planner

Study Habits

Throughout your time at Turing, including mod 0 we’d suggest that you get in the habit of doing the following:


  • Preview: Up to 24 hours prior
    • Check out the lesson plan
    • Peek at coding examples
    • Record new vocab in Turing Notebook

Take great notes (during the lesson)

  • Notebook: Start now with handwritten notes
  • Visual organization: Colors/markers/pens/stickies
  • Diagrams: Draw out everything your instructors draw on board
  • KEY ideas: Focus on main concepts, write in your own words


  • Review: At lesson’s close
    • What do I understand from today?
    • When will I need what I just learned?
    • What questions do I still have?
  • Do your own research!
  • Experiment!

Study Habits (focus)

  • Limit distractions. Turn off:
    • Notifications (slack, imessage, etc)
    • Phone (or airplane mode, and out of sight)
  • Location, location, location:
    • Make sure that your space is quiet and free from distractions
    • Leave house if need be

Study Habits (goals)

  • Study/Worktime goal:
    • Write priorities in your notebook for each study/work session (get granular)
    • Use checklists and kanban tracking
  • Pomodoros:


  • Try to develop a schedule similar to your pre-turing life (ie. if you exercise before work, keep doing so before class)
  • Procrastination does not work at Turing
  • Get a planner to help prioritize work


  • You’re joining a community of really wonderful people - take advantage!
  • I’d encourage y’all to poke around slack and join any channels that interest you
    • Yoga (#yoga-posse)
    • Jennifer Pahlka - civic tech (#pahlka-posse)
    • 3D Printing (#3d_printing)
    • Climbing (#climbing)
    • Veterans (#turing-veterans)
    • Parents (#parenturing)
    • Moms (#turingmoms)
    • Running (#runtime)
    • Mindfulness (#mindfulness)
    • QueerQoders (#queerqoders)
    • Shades of Turing (#shades-of-turing)
    • Anime (#anime)
    • Teachers (#teachers-union)
    • Motorcycle Enthusiasts (#turing-moto-club)


Turn off your mics and videos and walk away from the computer. Stand up, stretch, drink water. Do a few sit-ups, squats, push-ups, jumping jacks, arm circles, stress ball squeezes, or whatever else moves your body.

Keyboard Shortcuts

Most computer users rely heavily on the mouse to open applications, interact with programs, etc. You might think that you’re quick with a mouse, but just wait until you get good at keyboard shortcuts.

Initially, your flow will be slower as you learn and memorize each of the shortcuts. However, if you force yourself to use these shortcuts, you’ll become MUCH faster in the long run.

Try it: Shortcuts

Mac Environment

Use these shortcuts to quickly move around within your environment.

  • Open a program or search for a file:
    command + spacebar

    Then start typing the name of the program or file to search for such as "Terminal" Or "Chrome", then press return to open that program or file

  • Cycle through open programs:
    command + tab + tab ...
  • Switch between separate open windows of the same program:
    command + `
  • Quit an Open Program:
    command + Q


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

  • Full Screen Current Window:
    command + option + F
  • Left Half Current Window:
    command + option + left-arrow
  • Right Half Current Window:
    command + option + right-arrow
  • Top Half Current Window:
    command + option + up-arrow
  • Bottom Half Current Window:
    command + option + down-arrow

Chrome Browser

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

  • Bookmark Page:
    command + D
  • Open New Tab:
    command + T
  • Open New Window:
    command + N
  • Open New Incognito Window:
    command + shift + N
  • Highlight Current URL:
    command + L
  • Cycle Through Tabs:
    Right: control + tab
    Left: control + shift + tab
  • Reload Page:
    command + shift + R
  • Close Tab:
    command + W


Defining and Identifying Classes

Note: This is a topic that we will revisit in bite-size chunks leading up to Session 4. We will not talk about the technical aspects of how classes play a part in programming today; instead, we will apply the terminology and concepts to real life.

Think of a class as a category of thing. For example, deep dish, new york, and pan (instances) are all different versions of a pizza (class).

An Old Navy sweatshirt and an Eddie Bauer sweatshirt (instances) are different versions of a sweatshirt (class).

Great Expectations by Charles Dickens and Becoming by Michelle Obama (instances) are different versions of a book (class).

Class names are always singular: pizza (instead of pizzas), sweatshirt (instead of sweatshirts), and book instead of books.

Try It: Classes

Post two sentences in the chat using this structure:

______, ________, and _______ (instances) are different versions of a ________ (class).

Attributes of Classes

An attribute of a class is a characteristic that every instance of that class has.

For example:

  • Each pizza (class) has a crust, sauce, and toppings (attributes).
  • Each sweatshirt (class) has a color, size, brand, and price (attributes).
  • Each book (class) has a title, author, publisher, published_date, and total_pages (attributes).

Try It: Attributes

Post two sentences in the chat about your two classes using this structure:

Each _______ (class) has a _______, ________, and ________ (attributes).


Believe it or not, a good chunk of your time as a programmer will be spent Googling to find answers to your questions. In fact, a somewhat experienced programmer will Google at a much higher rate than a beginning programmer. Therefore, it’s really important to get good at Googling.

For a frame of reference so that you know just how often we rely on Google (even the “easy” stuff), this is my most recent Chrome history as I’ve been building this curriculum 😂

Rachel's search history

When I Google programming questions, I usually include three things (in varying orders):

  1. What I want to do (verb)
  2. to what thing (noun)
  3. using what language or tool

For example, if I wanted to add a thick green border to a heading on my webpage and I’m using plain CSS for styling, I might google this:

how to add border to heading css


make border on heading element css

SUPER IMPORTANT: You might not get the results you’re looking for on the first go-around.

Try It: Writing Google-able Phrases

Write out Google-able search phrases for each of the following scenarios. Do not get hung up on being unfamiliar with the terminology for each scenario. We just want phrases to put into Google.

1. I am using Git for version control and made a typo in a commit message. I need to change it before I push my changes to GitHub.

2. I got this error message when I ran my Ruby program and I don't know what it means or how to fix it: "unterminated string meets end of file"

3. A Mod 0 homework assignment asks you to print out your git log in oneline (yes, oneline, not a spelling error) format and David definitely did not teach how to do this during class.

Sifting Through Results

Once you formulate a good Google search and receive your results, there are a few things you’ll want to consider when determining which results to open.

Demo: Google Results

We'll look through some Google results for "change width of textarea in html". Be ready to jot down tips for sifting through results.

Basic Data Types

In most programming languages, you’ll find the same basic data types. A data type represents the kind of data that you can use in the programming language. In this section, we’ll discuss five different basic data types that are applicable to both the front end and back end.

Data Type Use Cases and Syntax

Luckily for us, the syntax (the way we write) for these basic data types is almost identical in Ruby and JavaScript.

Imagine that we’re making an application for grocery stores to use (intentionally vague description 😁). For each of the data types we researched, we’ll brainstorm examples of how we might use that data type in a grocery store app.

Try It: Data Types in a Grocery Shopping App

What sorts of data would you use strings for?

String Definition (click here)

What sorts of data in your shopping app would be integer data? What about float data?

Integers and Floats Definition (click here)

Why might you use a boolean in a shopping application?

Boolean Definition (click here)

What might you want to store in an array in your shopping app? Start all of your answers with "list of..."

Array Definition (click here)

What might you want to store as a hash/object (data in key-value format) in your shopping app?

EXTENSION Hash/Object Definition (click here)

Program specific breakouts

We’ll go into breakout rooms to briefly discuss the how to check correct syntax for datatypes in Ruby and JavaScript.

In addition to practicing writing out our data types, we’ll also touch briefly on what it looks like to assign a variable. This allows us to reference a word in our computer’s memory that returns the data we’ve stored.

After watching a brief demo from an instructor, try out the following:

  • Assign a variable called pizza a value of ‘the best food of all time’
  • Assign a variable called is_hungry a value of true
  • Assign a variable called number a value of 5
  • Reassign that number variable so that is has a value of 4
  • Assign a variable called teachers a value of an array with the names ‘Ellen’, ‘Robert’, and ‘David’
  • Try the following (these may take some googling):
    • Create another string variable and add combine it with your pizza variable
    • Create another integer variable and multiply it by your number variable
    • Remove the last item from your teachers array

Answer Keys:

  • back-end:
  • front-end:

The End!

After this Zoom call is over, take 15 minutes on your own to digest the content from this lesson, including the notes you wrote in the text boxes.

In addition, consider the following questions:

  • What do I understand from today?
  • When will I need what I just learned?
  • What questions do I still have?
  • What learning processes/behaviors did I exercise today?


Find the homework in your Mod 0 Project Board. Contact David, Robert, or Mason if you’re stuck (or better yet, post in the public slack channel as you’re likely not the only one running in to that issue)

Lastly, another reminder, if you haven’t started your capstone yet, you should. You can find the due date on the mod 0 calendar.

Capstones are due Wednesday, April 15th at 6pm. I’d get started right away!