Skip to content

Instantly share code, notes, and snippets.

ES6 Reading Homework

  • What is ES6?
    • ES6 is the most recent version of ECMAScript, which is a scripting language specification that JavaScript uses for implementation. ES5 was released in 2009, and ES7 is planned for the middle of 2016.
  • What is Transpilation and how does it relate to ES6?
    • Transpilation is taking source code from one language and translating it into another language. It relates to ES6 because some browsers (or versions of browsers) do not support ES6, but they do support ES5. There are tools, such as Babel, that transpile your ES6 code into ES5 so you can use ES6 immediately without fears of unsupported broswers.
  • Looking at the ES6 Features link below, discuss one update from ES5 and if it seems useful/superfluous
  • It's hard to say what is useful and waht is superfluous since I haven't used many of these tools yet... Template Strings is probably superfluous to people who have written JS for a ling time, but coming from Ruby it is obviously more natural (not so many +'s.

Setting Group Expectations

Group Member Names: Kerry Sheldon, Karina Gonzalez, Robbie Jaeger

  1. When are group members available to work together? What hours can each group member work individually? Are there any personal time commitments that need to be discussed?
  • Everyone can be at Turing until 6:00-6:30pm and then work from home individually. There are no big personal time commitments foreseen at this point.
  • If we want to leave at 6:30pm, make sure we stop development/code work at 6:00pm and then wrapup the day together and plan next steps (so we can actually end at 6:30pm).
  • Re-DTR every other day to make sure everyone is on the same page and things are going well.
  1. How will group members communicate? How often will communication happen, and how will open lines of communication be maintained?
  1. Define CRUD.
  • Create, Read, Update, and Delete. This methodology gives full functionality for an object in any web application.
  1. There are seven verb + path combinations that are necessary in a basic Sinatra app in order to provide full CRUD functionality. List each of the seven combinations, and explain what each is for.
  • /tasks GET - lets the user see all of the tasks that have been created (Read)
  • /tasks/:id GET - lets the user see a single task and its contents (Read)
  • /tasks/new GET - gives the user a form to create a new task (Create)
  • /tasks POST - submits a new task to the database (Create)
  • /tasks/:id/edit GET - gives the user a form to edit an existing task (Create)
  • /tasks/:id PUT (PATCH) - submits edits/updates for an existing task (Update)
  • What do you know about modules already? If little, what would you guess modules are all about?
    • Only that they create a "container" for a group of classes. It is a way to have classes with the same name not interfere (different namespaces?...)
  • Golf and basketball both use a ball. But if you're on a basketball court and ask for "the ball," no one is going to throw you a golf ball. Why? If you were as dumb as a computer, why would a golfd ball be an acceptable response?
    • In the game, you have context of the game being played. The computer doesn't have the context.
  • You've learned about the object model and method lookups. What would the imapct be of injecting an additional ancestor into a class' lookup chain?
  • Another scope level?
@robbiejaeger
robbiejaeger / rj-prework.md
Last active March 18, 2016 21:34 — forked from mbburch/prework.md
Robbie Jaeger's Turing pre-work Gist

Turing School Prework - Robbie Jaeger

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:

  • Completed