Skip to content

Latest commit

 

History

History
125 lines (99 loc) · 4.77 KB

lesson_plan.md

File metadata and controls

125 lines (99 loc) · 4.77 KB

Introduction

  • introduce the course
  • go over the lesson plan

Introductions

  • 1 minute mixer
  • everyone gets a number (1-4)
  • go to a corner of the room, can only have one person of each number in each group
  • question comes up on the board and lower/higher numbered person asks question for 30 seconds goes around the room and answers the question about that person for everyone.

What Makes JS Important?

Intro

  • subcontext of this question is, why learn JavaScript?
  • there are a lot of languages out there, why learn this one?
  • in part a question you have to answer - as in, why are you in this class? why do you want to learn JavaScript?
  • lucky for us, there are a lot of reasons to learn JavaScript
    • Complex software-as-a-service applications? JavaScript.
    • Virtual Reality? JavaScript.
    • Computer Vision? JavaScript.
    • Animations? JavaScript.
  • JS is - you could say - ubiquitous
  • Is that reason enough to learn it?

Atwood's Law

  • Why is JS ubiquitous?
  • Any application that can be written in JavaScript, will eventually be written in JavaScript
  • Why is it that more and more of this field is being consolidated into a single language?

Principle of Least Power

  • Rather than choose the most powerful solution to a problem, pick the least powerful solution.
  • Who is Sir Tim Berners-Lee and what the heck is he talking about?

Bring it all back

  • This is getting really academic, and this is not an academic course
  • we're talking about programming, not philosophy
  • Lets talk about something else entirely for a moment and that's driving.
    • how many of you can drive, have a driver's license, maybe even own your own car?
    • how many of you drive stick shift?
    • Why would anyone drive stick shift? More control of the car, more control of the engine.

What makes JavaScript important?

  • JavaScript is a simple language
    • it's easy to learn
    • it's really easy to become productive in it quickly
    • it's easy to build just about anything with

Why do you want to learn JavaScript

InstallFest

  • Install all the Things

What is JavaScript?

  • Established why JavaScript is important and in doing so established why we want to learn JavaScript. So lets get started!

Exercise - Mind Map (10 minutes)

  • Count off 1 through 4 (1 minute)
  • Find a corner or some whiteboard space
  • Mind map everything you can think of that you know about JavaScript (2-3 minutes)
  • 1 - 2 minutes to share each

History of JavaScript (10 minutes)

  • Timeline from 1995 to today
  • History of JavaScript
  • Features of the language
  • Ecosystem around the language

1995

  • Brendan Eich, Netscape (1995)
  • general idea was to bring interactivity to web pages
  • Eich puts together a proof of concept that becomes part of Netscape
  • Pulled a bunch of features from languages that he liked
    • syntax comes from JavaScript
    • object-first and loose typing came from Scheme
    • Prototypal Inheritance came from Self
  • mix between functional programming and object-oriented programming

1996

  • Netscape was able to capture a majority of the browser market share in just 2 years; they were super aggressive about growth
  • Microsoft launches JScript, an extremely high fidelity clone of JavaScript
  • One of the first tipping points in the development and success of javascript
  • Even copied in some of the languages bugs and quirks

1998

  • Netscape retains control of the language but now they're fighting with Microsoft about it
  • shop the language around to standards organizations, to create a standard for the language
  • Microsoft takes over the committee and refuses to allow any changes to become part of the standard
  • ECMAScript

1999

  • 3rd edition of the language is agreed upon
  • Then something amazing happens for the language: nothing.
  • For I kid you not 10 years, there is no new spec, new additions or changes to the language, nothing is fixed, nothing.

2009

  • nothing happens for 10 years
  • gives JS the chance t o build an incredible market share
  • leads to incredibly wide cross-browser support

2000

  • version 4 is scraped

2005

  • AJAX - Asynchronous JavaScript and XML becomes mainstream
  • lets us pull data from somewhere else using JavaScript and update the contents of the page based on that data
  • browsers become stable/powerful enough to support applications

2007

  • JavaScript becomes the most popular language in the world
  • jQuery is created

2008

  • Google comes out with something called V8 - an extremely efficient and fast JavaScript engine which makes JS almost as fast as regular C++

2009

  • 5th edition of the language is agreed upon
  • Node.js is released - lets us use JS on servers
  • PhoneGap is released - lets us use JS to create mobile applications
  • Ecosystem really kicks in

Exercise: Thinking Like a Programmer

Class Information, Final Questions & Exit Ticket