SlideShare a Scribd company logo
Intro to Javascript
October 2017
WIFI: Deskhub-main
Password: Create2017!
http://bit.ly/introjs-sd
1
Welcome to "Intro to Javascript". The Wi-Fi network is X and the password is Y The website for this class is Z.
Speaker notes
Instructor
Rachel Munoz
Software Developer
Bootcamp Graduate
TAs
bit.ly/introjs-sd
Wi-Fi: Deskhub-main
Pass: Create2017! 2
Let me start with a little about me. My name is X and my background is Y. We have some TA's that will be helping us today. I'm going to go around
and have them introduce themselves.
Speaker notes
About you
What's your name?
What brought you here today?
What is your programming experience?
bit.ly/introjs-sd
Wi-Fi: Deskhub-main
Pass: Create2017! 3
I'd love to learn a little more about you guys. So can we go around the room and can everyone give us your name, why you’re attending this event
tonight?
Speaker notes
About Thinkful
Thinkful helps people become developers or data scientists
through 1-on-1 mentorship and project-based learning
These workshops are built using this approach.These workshops are built using this approach.
bit.ly/introjs-sd
Wi-Fi: Deskhub-main
Pass: Create2017! 4
Thinkful is hosting the event tonight. Thinkful is a coding bootcamp built on a belief in one-on-one mentorship and project based learning. This
workshop today is designed using this approach. The bulk of the workshop will be you guys working one-on-one with our TA’s to build a real project.
Speaker notes
Suggestions for learning
Don't get discouraged, struggle leads to masterystruggle leads to mastery
Don't be shy, take full advantage of our supporttake full advantage of our support
bit.ly/introjs-sd
Wi-Fi: Deskhub-main
Pass: Create2017! 5
A couple things before we get started. First, if you’re struggling on a concept or part of your application, don’t get discouraged. The struggle of
learning to work through problems, especially in coding, is what’s going to make you a better developer. Second, if you feel stuck and you’re not sure
what to do next, place ask for help. We’re here to make sure you get the most support possible to learn as much as you can about the material.
Speaker notes
Agenda
Learn key Javascript concepts (30 min)
Go over assignments (10 min)
Complete assignments with our support! (30 min)
Go over answer key (10 min)
Steps to continue learning (10 min)
bit.ly/introjs-sd
Wi-Fi: Deskhub-main
Pass: Create2017! 6
I’ll start by going over some important Javascript concepts that you’ll use to complete the code for tonight. Then I’ll briefly go over the starter code
with you and work through the first step with you. Then I’ll let you all work through the next steps to making the app, during which time myself and
the TA’s will be walking around to help you all out. At the end we’ll cover next steps for continuing your learning.
Speaker notes
How the web works
Type a URL from a client (e.g. google.com)​
Browser sends an HTTP request asking for specific files
Browser receives those files and renders them as a website
bit.ly/introjs-sd
Wi-Fi: Deskhub-main
Pass: Create2017! 7
On a basic level, the web works through communication between a browser like google chrome and a server. The user enters a web address like
google.com into a browser and hits enter. Then the browser sends a request to the server that has the files for google.com on it. And the server
sends back those files to the browser to load.
Speaker notes
Client/Servers
Client (sends requests)
Frontend Developer
Manages what user sees
Server (sends response)
Backend Developer
Manages what app does
bit.ly/introjs-sd
Wi-Fi: Deskhub-main
Pass: Create2017! 8
A browser, also called the client, can be anything that connects to the internet. Your laptop, your phone, all those things are clients. They’re
responsible for sending requests and loading the pages from files sent back from the server. It manages what the app looks like. This is the
responsibility of a frontend developer. The server holds all those files. Its job is to shoot specific files to the client based on its requests. It manages
what the app actually does and is the responsibility of the backend developer
Speaker notes
Example: facebook.com
Client Server
Open browser
and navigate to
facebook.com
HTML, CSS, &
Javascrip render
newsfeed
Request
Response
Algorithm
determines
content of feed.
Sends back
HTML, CSS,
Javascript files
Application LogicApplication Logic
Initial requestInitial request
Following responseFollowing response
bit.ly/introjs-sd
9
Wi-Fi: Deskhub-main
Pass: Create2017!
Let's break it down with an example. Let's say I log into facebook. When I try to go to that page, my computer is going to send a request to
facebook’s server. Facebook’s server is going to look at that request and think, ā€œokay, what should I send back to ${your name}’s computer?ā€ Its
going to look through my friend’s posts and determine using an algorithm what’s most important to put in my feed. Then it’ll send all that info,
including the files to display the info, to my computer. My computer will then read and interpret those files and display the information on my screen.
Speaker notes
Example: facebook.com
Client Server
Open browser
and navigate to
facebook.com
HTML, CSS, &
Javascrip render
newsfeed
Request
Response
Algorithm
determines
content of feed.
Sends back
HTML, CSS,
Javascript files
Application LogicApplication Logic
Initial requestInitial request
Following responseFollowing response
We'll be writing Javascript, the code
that the browser uses to run the app
10
bit.ly/introjs-sd
Wi-Fi: Deskhub-main
Pass: Create2017!
History of Javascript
Written by Brendan Eich in 1995 for Netscape
Initial version written in 10 days
Completely unrelated to Java, but maybe named after it to
draft off its popularity
Over 10 years, became default programming language for
browsers
Continues to evolve under guidance of ECMA International,
with input from top tech companies
bit.ly/introjs-sd
Wi-Fi: Deskhub-main
Pass: Create2017! 11
Javascript was initially written by Brendan Eich in 1995 for Netscape. It was written in 10 days but has since been improved. A common
misconception is that it has something to do with Java, but they are very different languages. Most likely, Javascript was given its name to ride the
wave of popularity that Java had at the time. In the ten years after it was created, it grew in popularity and today it has a monopoly on front end web
development as the default language for web programming. It continues to evolve under the guidance of the ECMA International, with input from top
tech companies.
Speaker notes
Javascript today
Has large community of developers, libraries and
frameworks
Lots of job opportunities
Also the syntax is easier to understand for first-time
developers
bit.ly/introjs-sd
Wi-Fi: Deskhub-main
Pass: Create2017! 12
Because of its immense popularity, javascript today has an enormous community of developers, libraries, and frameworks. Because of its
widespread use, it also has tons of job opportunities. The syntax is also easier to understand compared to other programming languages making it a
good place to start for first-timers.
Speaker notes
Defining a variable with Javascript
var numberOfSheep = 20
Initialize variable
Name of variable
Value of variable
bit.ly/introjs-sd
Wi-Fi: Deskhub-main
Pass: Create2017! 13
The first important concept in Javascript is the use of variables. A variable is a container used to store data values. In javascript, we define a variable
by first typing out ā€˜var’. This tells the computer that we’re about to make a variable. Then we type the variable’s name. This can be anything you
want, but it is helpful if the name of the variable corresponds to its value. Then we put an equal sign and type in the value of that variable. The
computer now recognizes that the variable numberOfSheep is equal to 20.
Speaker notes
Variable examples
bit.ly/introjs-sd
Wi-Fi: Deskhub-main
Pass: Create2017! 14
I’m going to show you a few examples of variables you can create.
var numberOfSheep = 20;
console.log(numberOfSheep);
var nameOfSheep = ā€œFredā€;
console.log(nameOfSheep);
var cars = 5;
var trucks = 6;
var vehicles = x + y;
console.log(vehicles);
var foo = ā€˜foo’;
var bar = ā€˜bar’;
var something = x + y;
console.log(something);
Speaker notes
Declaring a function with Javascript
function greet() {
return "Hello world!";
}
Initialize function Name of function
What the function does
bit.ly/introjs-sd
Wi-Fi: Deskhub-main
Pass: Create2017! 15
A function is a piece of code that’s meant to perform a specific task. You create a function by first typing out the word ā€˜function’. This tells the
computer that you’re about to write a function. Then we write out the name of the function followed by parentheses. You don’t need to know quite yet
what the parentheses do, just that they are required to be placed immediately after the function name. Then, inside curly brackets, we state what the
function is going to do. In this case the function will simply return the string or statement ā€œHello world!ā€. Return is a word used inside a function that
means ā€˜give back this value’.
Speaker notes
Function examples
bit.ly/tf-intro-js
Wi-Fi: Deskhub-main
Pass: Create2017! 16
I’m going to show you a few examples of functions you can create
function adder() {
console.log(2 + 3);
}
adder();
---erase console.log and put return---
function adder() {
return 2 + 3;
}
adder();
console.log(adder());
var subtractor = function() {
return 5 - 2;
}
console.log(subtractor());
var subtractorVariable = subtractor();
console.log(subtractorVariable);
Speaker notes
If/Else Statements
go to gas stationkeep driving
if false if true
need gas?
family roadtrip
bit.ly/introjs-sd
Wi-Fi: Deskhub-main
Pass: Create2017! 17
Functions can also contain some logic to them that allow them to make decisions based on different circumstances. This logic is contained inside
if/else statements. For example, let's say you’re on a roadtrip. You ask yourself, do I need gas. If it's true that you need gas, you should go to the gas
station. If it's false that you need gas, then you continue driving. This is a very simplified version of an if/else statement.
Speaker notes
If/Else Statements
function familyRoadtrip() {
if (needGas == true) {
getGas();
}
else {
keepDriving();
}
}
bit.ly/introjs-sd
Wi-Fi: Deskhub-main
Pass: Create2017! 18
If we were going to make that into a function, we could write it this way. The name of our function is familyRoadtrip. The first line is our if statement.
We needGas is true, then we getGas. Else, we keep driving. This set of equal signs here is called a comparison operator. It's used to compare two
values to see if they’re equal.
Speaker notes
Comparing Values
== (equal to)
5 == 5 --> true
5 == 6 --> false
!= (not equal to)
5 != 5 --> false
5 != 6 --> true
bit.ly/introjs-sd
Wi-Fi: Deskhub-main
Pass: Create2017! 19
There are a few comparison operators you can use in Javascript. Another one is the ā€˜not equal to’ sign. Here you can see how, when we compare 5
and 6, the results true and false change depending on the operator.
Speaker notes
If/Else Statements and Comparing Values
bit.ly/introjs-sd
Wi-Fi: Deskhub-main
Pass: Create2017! 20
Here’s an example of an if/else statement.
function comparison() {
if (5 == 6) {
console.log("Math is broken");
}
else {
console.log("Math is working today");
}
}
comparison();
To show additional if statements, add this:
if (5 == 5) {
console.log("Math is definitely working today");
}
To show additional comparison operators, add this:
if (5 < 6) {
console.log("And five is still less than 6");
}
if (5 >= 5) {
console.log("And five is still 5");
}
Speaker notes
Parameters within functions
function adder(a, b) {
return a + b;
}
adder(1,2);
Parameters in declaration
Parameters used
within the function
bit.ly/introjs-sd
Wi-Fi: Deskhub-main
Pass: Create2017! 21
Finally, functions allow us to use values outside of them by passing them in as parameters. Here, you see that we’ve put parameters ā€˜a’ and ā€˜b’
inside the parentheses. They correspond to the ā€˜a’ and ā€˜b’ inside the function. If we were to call the function like so, the number one would
correspond to ā€˜a’, and the number 2 would correspond to ā€˜b’.
Speaker notes
Examples of parameters within functions
bit.ly/introjs-sd
Wi-Fi: Deskhub-main
Pass: Create2017! 22
Let's do some examples with parameters
function adder(a, b) {
console.log(a + b);
}
adder(1,2);
function concatenator(first, second) {
console.log(first + second);
}
concatenator(ā€˜foo’, ā€˜bar’);
function checker(param1, param2) {
if (param1 == param2) {
console.log(param1 + " is equal to " + param2);
}
else {
console.log("They are not equal");
}
}
checker(4,4);
Speaker notes
Real developers use Google... a lot
bit.ly/introjs-sd
Wi-Fi: Deskhub-main
Pass: Create2017! 23
Google is an everyday part of being a developer. A key part of becoming a developer is getting comfortable using Google to learn and look up things.
The more you code, the more you will use Google, not the other way around. When you get stuck tonight, or whenever, make sure to Google it first!
Speaker notes
Repl.it setup & first steps!
http://bit.ly/tf-intro-js-challenges
bit.ly/introjs-sd
Wi-Fi: Deskhub-main
Pass: Create2017! 24
Go ahead and go to this link. This will take you to a site called repl.it. Repl is a site that allows us to write code and instantly see a result. Sign up for
repl and enter the classroom called Intro to Javascript.
Just to get you all familiar with the assignments, I’ll work through the first one with you. Click on Defining Variables and you should see a screen like
this.
First thing we should do is read the directions on the right side of the screen. They say:
ā€œThe function sayingHi needs two parameters to function. The variables at the top aren't yet defined so when we try to call sayingHi on line 8, the
function fails.
Define the variables so that when the function runs, it prints 'Hello World'. Define a as 'Hello' and b as 'World'. Don't forget your quotes!
Don't change the test code at the bottom of the file. That's there to help make sure you're code is responding correctly. The console will respond with
'SUCCESS: `sayingHi` is working' if you wrote the function correct, and will print 'FAILURE: `sayingHi` is not working' if your function is not correct.
ā€œ
Right now, when we press run at the top, it gives us some errors. So, the assignment needs us to define some variables. As good developers, if
there’s something we don’t know how to do, we google it. So, lets Google, how to define variables in javascript. Lets click on the first one. This is
w3schools, a really nice site for information on programming and javascript. Okay, so we can define this variable x by saying = and then the number
5. Well, that’s all well and good, but I need to put a word in there, not a number. Let's see if they have an example for defining a variable with a word.
I’ll just scroll down and see. Okay, so here’s a variable that has a word as a definition. The word is in quotes because its a string. Lets go back to our
code and try putting in ā€œhelloā€ and ā€œworldā€ in there with quotes. It works!
Go ahead and start working on the remaining challenges. Again, don’t hesitate to Google. Its’ your best friend. The first couple challenges are easier
than the last few so if you can’t get them all tonight, that’s okay.
Speaker notes
Ways to keep learning
25
For aspiring developers, bootcamps fill the gap
26
If you’re interested in becoming a developer, however, you’ll want to consider a bootcamp.
Bootcamps are short programs that provide the structure and support to help people become developers.
The reason bootcamps emerged, massive gap between growing demand for software developers and supply
Bootcamps were created to fill that gap: 73% get jobs as developers with an average salary lift of $26K.
Speaker notes
89%89%
job-placement rate + job guarantee
Link for the third party audit jobs report:
https://www.thinkful.com/bootcamp-jobs-statshttps://www.thinkful.com/bootcamp-jobs-stats
Thinkful's track record of getting students jobs
27
Thinkful has one of the best track records of getting students jobs
91% placement rate, 35% are placed before graduating.
Stats are audited by third party.
One of few local bootcamps with a job guarantee.
Speaker notes
Our students receive unprecedented support
Learning Mentor
Career MentorProgram Manager
San Diego Community
You
28
We’ve been able to achieve these results because of the unprecedented support our students receive: Thinkful students work through the program
with their own personal mentor.
As you might have seen today, learning in a classroom was much harder than just individually with your TA. We saw the same problem and that's
why all our programs are built around 1:1 support
Mentors have 10+ years of experience, work at companies like Home Depot, Delta, etc
You also have Slack + QA sessions if you’re stuck at 2AM
Not only do you have a technical mentor you also have a career mentor, who taps into our network of mentors and employers to get you interviews
and help you prepare for them.
And then we have a local community: dinners and networking to meet other students, mentors, and resources for Thinkful here in San Diego
Speaker notes
Mentorship enables flexible learning
Learn anywhere,
anytime, & at your own
pace
You don't have to quitYou don't have to quit
your job to startyour job to start
career transitioncareer transition
29
This unique structure also makes Thinkful more accessible.
Unlike with other programs, mentorship enables total flexibility
Learn on your own time and at your own pace
You don’t have to quit your job to start a transition.
Speaker notes
Take a Thinkful tour!
Talk to one of us to set something up !
Take a look through Thinkful's
student platform to see if
project-based, online learning
is a good fit for you šŸ‘€
While we're at it, give us
feedback on tonight's
workshop.
30

More Related Content

PDF
WordCamp Nashville: Clean Code for WordPress
mtoppa
Ā 
PDF
WordCamp Nashville 2015: Agile Contracts for WordPress Consultants
mtoppa
Ā 
PDF
Maintainable Javascript carsonified
Christian Heilmann
Ā 
PPTX
The best programming languages for blockchain
šŸ’¾ Radek Fabisiak
Ā 
PDF
Dotnet and php training and tutorials
times institute of management and technical studies
Ā 
PDF
Introduction to Docker and Containers- Learning Simple
Sandeep Hijam
Ā 
PDF
Beginners guide-to-coding-updated
SaidLezzar
Ā 
PDF
Wordpress Questions & Answers
Nicole Dion
Ā 
WordCamp Nashville: Clean Code for WordPress
mtoppa
Ā 
WordCamp Nashville 2015: Agile Contracts for WordPress Consultants
mtoppa
Ā 
Maintainable Javascript carsonified
Christian Heilmann
Ā 
The best programming languages for blockchain
šŸ’¾ Radek Fabisiak
Ā 
Dotnet and php training and tutorials
times institute of management and technical studies
Ā 
Introduction to Docker and Containers- Learning Simple
Sandeep Hijam
Ā 
Beginners guide-to-coding-updated
SaidLezzar
Ā 
Wordpress Questions & Answers
Nicole Dion
Ā 

What's hot (19)

PDF
The Guide to becoming a full stack developer in 2018
Amit Ashwini
Ā 
PPT
GTU MCA PHP Interview Questions And Answers for freshers
TOPS Technologies
Ā 
PPT
Lecture 6 Data Driven Design
Sur College of Applied Sciences
Ā 
PDF
How to add watermark to image using php
YourBlogCoach1
Ā 
PDF
Hay php architect eav modeling
Giang Nguyį»…n
Ā 
PDF
Apress.html5.and.java script.projects.oct.2011
Samuel K. Itotia
Ā 
PPT
Lecture 9 Professional Practices
Sur College of Applied Sciences
Ā 
PDF
Advanced php for web professionals
Sudha Hari Tech Solution Pvt ltd
Ā 
PDF
wexarts.org iPhone Project: Developer Documentation
tutorialsruby
Ā 
PDF
Top 100 PHP Interview Questions and Answers
Vineet Kumar Saini
Ā 
DOCX
100 PHP question and answer
Sandip Murari
Ā 
PPT
Groovy And Grails
William Grosso
Ā 
PPTX
25 php interview questions – codementor
Arc & Codementor
Ā 
PPT
Accessibility Usability Professional Summry
Sur College of Applied Sciences
Ā 
PPTX
Untangling7
Derek Jacoby
Ā 
PPTX
Say Hello 2 Bdd
mh_azad
Ā 
PPTX
Writing code samples for API/SDK documentation
Tom Johnson
Ā 
PDF
Abstract Class and Interface in PHP
Vineet Kumar Saini
Ā 
PPTX
Computer Science Career Awesomeness - GPH (May 2015)
David Wesst
Ā 
The Guide to becoming a full stack developer in 2018
Amit Ashwini
Ā 
GTU MCA PHP Interview Questions And Answers for freshers
TOPS Technologies
Ā 
Lecture 6 Data Driven Design
Sur College of Applied Sciences
Ā 
How to add watermark to image using php
YourBlogCoach1
Ā 
Hay php architect eav modeling
Giang Nguyį»…n
Ā 
Apress.html5.and.java script.projects.oct.2011
Samuel K. Itotia
Ā 
Lecture 9 Professional Practices
Sur College of Applied Sciences
Ā 
Advanced php for web professionals
Sudha Hari Tech Solution Pvt ltd
Ā 
wexarts.org iPhone Project: Developer Documentation
tutorialsruby
Ā 
Top 100 PHP Interview Questions and Answers
Vineet Kumar Saini
Ā 
100 PHP question and answer
Sandip Murari
Ā 
Groovy And Grails
William Grosso
Ā 
25 php interview questions – codementor
Arc & Codementor
Ā 
Accessibility Usability Professional Summry
Sur College of Applied Sciences
Ā 
Untangling7
Derek Jacoby
Ā 
Say Hello 2 Bdd
mh_azad
Ā 
Writing code samples for API/SDK documentation
Tom Johnson
Ā 
Abstract Class and Interface in PHP
Vineet Kumar Saini
Ā 
Computer Science Career Awesomeness - GPH (May 2015)
David Wesst
Ā 
Ad

Similar to Introjs10.5.17SD (20)

PDF
Intro to JavaScript
Aaron Lamphere
Ā 
PPT
Aspnet2.0 Introduction
ChanHan Hy
Ā 
PDF
How To be a Backend developer
Ramy Hakam
Ā 
PPTX
Front End Lecture 1.pptx
malise2997
Ā 
PDF
Deck 893ff61f-1fb8-4e15-a379-775dfdbcee77-12-53
Ivy Rueb
Ā 
PDF
Learn Programming Languages & Get Programming Assignment Sample Solutions PDF...
Assignment Task
Ā 
PDF
WordCamp Asheville 2017 - So You Wanna Dev? Join the Team!
Evan Mullins
Ā 
PDF
A Complete Web Development Guide For Non-Technical Startup Founder
img lift
Ā 
PDF
Introjs1.9.18tf
Thinkful
Ā 
PDF
Professional web development with libraries
Christian Heilmann
Ā 
PDF
Intro to js august 31
Thinkful
Ā 
PDF
Programming Microsoft SQL Server 2000 with Microsoft Visual Basic NET 1st edi...
tvrsamj5492
Ā 
PDF
Node js projects
šŸ’¾ Radek Fabisiak
Ā 
PPT
(In)Security Implication in the JS Universe
Stefano Di Paola
Ā 
PDF
C# classes
Tiago
Ā 
DOCX
Over view of Technologies
Chris Mitchell
Ā 
PDF
Programming Microsoft SQL Server 2000 with Microsoft Visual Basic NET 1st edi...
qocqttfwy174
Ā 
PDF
Ijsphx927
Thinkful
Ā 
PDF
Fewd week4 slides
William Myers
Ā 
PDF
2020 Top Web Development Trends
Pencil Agency
Ā 
Intro to JavaScript
Aaron Lamphere
Ā 
Aspnet2.0 Introduction
ChanHan Hy
Ā 
How To be a Backend developer
Ramy Hakam
Ā 
Front End Lecture 1.pptx
malise2997
Ā 
Deck 893ff61f-1fb8-4e15-a379-775dfdbcee77-12-53
Ivy Rueb
Ā 
Learn Programming Languages & Get Programming Assignment Sample Solutions PDF...
Assignment Task
Ā 
WordCamp Asheville 2017 - So You Wanna Dev? Join the Team!
Evan Mullins
Ā 
A Complete Web Development Guide For Non-Technical Startup Founder
img lift
Ā 
Introjs1.9.18tf
Thinkful
Ā 
Professional web development with libraries
Christian Heilmann
Ā 
Intro to js august 31
Thinkful
Ā 
Programming Microsoft SQL Server 2000 with Microsoft Visual Basic NET 1st edi...
tvrsamj5492
Ā 
Node js projects
šŸ’¾ Radek Fabisiak
Ā 
(In)Security Implication in the JS Universe
Stefano Di Paola
Ā 
C# classes
Tiago
Ā 
Over view of Technologies
Chris Mitchell
Ā 
Programming Microsoft SQL Server 2000 with Microsoft Visual Basic NET 1st edi...
qocqttfwy174
Ā 
Ijsphx927
Thinkful
Ā 
Fewd week4 slides
William Myers
Ā 
2020 Top Web Development Trends
Pencil Agency
Ā 
Ad

More from Thinkful (20)

PDF
893ff61f-1fb8-4e15-a379-775dfdbcee77-7-14-25-46-115-141-308-324-370
Thinkful
Ā 
PDF
LA 1/31/18 Intro to JavaScript: Fundamentals
Thinkful
Ā 
PDF
LA 1/31/18 Intro to JavaScript: Fundamentals
Thinkful
Ā 
PDF
Itjsf129
Thinkful
Ā 
PDF
Twit botsd1.30.18
Thinkful
Ā 
PDF
Build your-own-instagram-filters-with-javascript-202-335 (1)
Thinkful
Ā 
PDF
Baggwjs124
Thinkful
Ā 
PDF
Become a Data Scientist: A Thinkful Info Session
Thinkful
Ā 
PDF
Vpet sd-1.25.18
Thinkful
Ā 
PDF
LA 1/18/18 Become A Web Developer: A Thinkful Info Session
Thinkful
Ā 
PDF
How to Choose a Programming Language
Thinkful
Ā 
PDF
Batbwjs117
Thinkful
Ā 
PDF
1/16/18 Intro to JS Workshop
Thinkful
Ā 
PDF
LA 1/16/18 Intro to Javascript: Fundamentals
Thinkful
Ā 
PDF
(LA 1/16/18) Intro to JavaScript: Fundamentals
Thinkful
Ā 
PDF
Websitesd1.15.17.
Thinkful
Ā 
PDF
Bavpwjs110
Thinkful
Ā 
PDF
Byowwhc110
Thinkful
Ā 
PDF
Getting started-jan-9-2018
Thinkful
Ā 
PDF
Proglangauage1.10.18
Thinkful
Ā 
893ff61f-1fb8-4e15-a379-775dfdbcee77-7-14-25-46-115-141-308-324-370
Thinkful
Ā 
LA 1/31/18 Intro to JavaScript: Fundamentals
Thinkful
Ā 
LA 1/31/18 Intro to JavaScript: Fundamentals
Thinkful
Ā 
Itjsf129
Thinkful
Ā 
Twit botsd1.30.18
Thinkful
Ā 
Build your-own-instagram-filters-with-javascript-202-335 (1)
Thinkful
Ā 
Baggwjs124
Thinkful
Ā 
Become a Data Scientist: A Thinkful Info Session
Thinkful
Ā 
Vpet sd-1.25.18
Thinkful
Ā 
LA 1/18/18 Become A Web Developer: A Thinkful Info Session
Thinkful
Ā 
How to Choose a Programming Language
Thinkful
Ā 
Batbwjs117
Thinkful
Ā 
1/16/18 Intro to JS Workshop
Thinkful
Ā 
LA 1/16/18 Intro to Javascript: Fundamentals
Thinkful
Ā 
(LA 1/16/18) Intro to JavaScript: Fundamentals
Thinkful
Ā 
Websitesd1.15.17.
Thinkful
Ā 
Bavpwjs110
Thinkful
Ā 
Byowwhc110
Thinkful
Ā 
Getting started-jan-9-2018
Thinkful
Ā 
Proglangauage1.10.18
Thinkful
Ā 

Recently uploaded (20)

PPTX
Stamford - Community User Group Leaders_ Agentblazer Status, AI Sustainabilit...
Amol Dixit
Ā 
PDF
SparkLabs Primer on Artificial Intelligence 2025
SparkLabs Group
Ā 
PDF
AI Unleashed - Shaping the Future -Starting Today - AIOUG Yatra 2025 - For Co...
Sandesh Rao
Ā 
PDF
Cloud-Migration-Best-Practices-A-Practical-Guide-to-AWS-Azure-and-Google-Clou...
Artjoker Software Development Company
Ā 
PDF
Building High-Performance Oracle Teams: Strategic Staffing for Database Manag...
SMACT Works
Ā 
PDF
Revolutionize Operations with Intelligent IoT Monitoring and Control
Rejig Digital
Ā 
PPTX
What-is-the-World-Wide-Web -- Introduction
tonifi9488
Ā 
PDF
Data_Analytics_vs_Data_Science_vs_BI_by_CA_Suvidha_Chaplot.pdf
CA Suvidha Chaplot
Ā 
PDF
Accelerating Oracle Database 23ai Troubleshooting with Oracle AHF Fleet Insig...
Sandesh Rao
Ā 
PDF
CIFDAQ'S Market Insight: BTC to ETH money in motion
CIFDAQ
Ā 
PDF
BLW VOCATIONAL TRAINING SUMMER INTERNSHIP REPORT
codernjn73
Ā 
PDF
Why Your AI & Cybersecurity Hiring Still Misses the Mark in 2025
Virtual Employee Pvt. Ltd.
Ā 
PPTX
ChatGPT's Deck on The Enduring Legacy of Fax Machines
Greg Swan
Ā 
PDF
DevOps & Developer Experience Summer BBQ
AUGNYC
Ā 
PPTX
How to Build a Scalable Micro-Investing Platform in 2025 - A Founder’s Guide ...
Third Rock Techkno
Ā 
PDF
REPORT: Heating appliances market in Poland 2024
SPIUG
Ā 
PDF
Chapter 2 Digital Image Fundamentals.pdf
Getnet Tigabie Askale -(GM)
Ā 
PPTX
cloud computing vai.pptx for the project
vaibhavdobariyal79
Ā 
PDF
Oracle AI Vector Search- Getting Started and what's new in 2025- AIOUG Yatra ...
Sandesh Rao
Ā 
PDF
The Evolution of KM Roles (Presented at Knowledge Summit Dublin 2025)
Enterprise Knowledge
Ā 
Stamford - Community User Group Leaders_ Agentblazer Status, AI Sustainabilit...
Amol Dixit
Ā 
SparkLabs Primer on Artificial Intelligence 2025
SparkLabs Group
Ā 
AI Unleashed - Shaping the Future -Starting Today - AIOUG Yatra 2025 - For Co...
Sandesh Rao
Ā 
Cloud-Migration-Best-Practices-A-Practical-Guide-to-AWS-Azure-and-Google-Clou...
Artjoker Software Development Company
Ā 
Building High-Performance Oracle Teams: Strategic Staffing for Database Manag...
SMACT Works
Ā 
Revolutionize Operations with Intelligent IoT Monitoring and Control
Rejig Digital
Ā 
What-is-the-World-Wide-Web -- Introduction
tonifi9488
Ā 
Data_Analytics_vs_Data_Science_vs_BI_by_CA_Suvidha_Chaplot.pdf
CA Suvidha Chaplot
Ā 
Accelerating Oracle Database 23ai Troubleshooting with Oracle AHF Fleet Insig...
Sandesh Rao
Ā 
CIFDAQ'S Market Insight: BTC to ETH money in motion
CIFDAQ
Ā 
BLW VOCATIONAL TRAINING SUMMER INTERNSHIP REPORT
codernjn73
Ā 
Why Your AI & Cybersecurity Hiring Still Misses the Mark in 2025
Virtual Employee Pvt. Ltd.
Ā 
ChatGPT's Deck on The Enduring Legacy of Fax Machines
Greg Swan
Ā 
DevOps & Developer Experience Summer BBQ
AUGNYC
Ā 
How to Build a Scalable Micro-Investing Platform in 2025 - A Founder’s Guide ...
Third Rock Techkno
Ā 
REPORT: Heating appliances market in Poland 2024
SPIUG
Ā 
Chapter 2 Digital Image Fundamentals.pdf
Getnet Tigabie Askale -(GM)
Ā 
cloud computing vai.pptx for the project
vaibhavdobariyal79
Ā 
Oracle AI Vector Search- Getting Started and what's new in 2025- AIOUG Yatra ...
Sandesh Rao
Ā 
The Evolution of KM Roles (Presented at Knowledge Summit Dublin 2025)
Enterprise Knowledge
Ā 

Introjs10.5.17SD

  • 1. Intro to Javascript October 2017 WIFI: Deskhub-main Password: Create2017! http://bit.ly/introjs-sd 1
  • 2. Welcome to "Intro to Javascript". The Wi-Fi network is X and the password is Y The website for this class is Z. Speaker notes
  • 3. Instructor Rachel Munoz Software Developer Bootcamp Graduate TAs bit.ly/introjs-sd Wi-Fi: Deskhub-main Pass: Create2017! 2
  • 4. Let me start with a little about me. My name is X and my background is Y. We have some TA's that will be helping us today. I'm going to go around and have them introduce themselves. Speaker notes
  • 5. About you What's your name? What brought you here today? What is your programming experience? bit.ly/introjs-sd Wi-Fi: Deskhub-main Pass: Create2017! 3
  • 6. I'd love to learn a little more about you guys. So can we go around the room and can everyone give us your name, why you’re attending this event tonight? Speaker notes
  • 7. About Thinkful Thinkful helps people become developers or data scientists through 1-on-1 mentorship and project-based learning These workshops are built using this approach.These workshops are built using this approach. bit.ly/introjs-sd Wi-Fi: Deskhub-main Pass: Create2017! 4
  • 8. Thinkful is hosting the event tonight. Thinkful is a coding bootcamp built on a belief in one-on-one mentorship and project based learning. This workshop today is designed using this approach. The bulk of the workshop will be you guys working one-on-one with our TA’s to build a real project. Speaker notes
  • 9. Suggestions for learning Don't get discouraged, struggle leads to masterystruggle leads to mastery Don't be shy, take full advantage of our supporttake full advantage of our support bit.ly/introjs-sd Wi-Fi: Deskhub-main Pass: Create2017! 5
  • 10. A couple things before we get started. First, if you’re struggling on a concept or part of your application, don’t get discouraged. The struggle of learning to work through problems, especially in coding, is what’s going to make you a better developer. Second, if you feel stuck and you’re not sure what to do next, place ask for help. We’re here to make sure you get the most support possible to learn as much as you can about the material. Speaker notes
  • 11. Agenda Learn key Javascript concepts (30 min) Go over assignments (10 min) Complete assignments with our support! (30 min) Go over answer key (10 min) Steps to continue learning (10 min) bit.ly/introjs-sd Wi-Fi: Deskhub-main Pass: Create2017! 6
  • 12. I’ll start by going over some important Javascript concepts that you’ll use to complete the code for tonight. Then I’ll briefly go over the starter code with you and work through the first step with you. Then I’ll let you all work through the next steps to making the app, during which time myself and the TA’s will be walking around to help you all out. At the end we’ll cover next steps for continuing your learning. Speaker notes
  • 13. How the web works Type a URL from a client (e.g. google.com)​ Browser sends an HTTP request asking for specific files Browser receives those files and renders them as a website bit.ly/introjs-sd Wi-Fi: Deskhub-main Pass: Create2017! 7
  • 14. On a basic level, the web works through communication between a browser like google chrome and a server. The user enters a web address like google.com into a browser and hits enter. Then the browser sends a request to the server that has the files for google.com on it. And the server sends back those files to the browser to load. Speaker notes
  • 15. Client/Servers Client (sends requests) Frontend Developer Manages what user sees Server (sends response) Backend Developer Manages what app does bit.ly/introjs-sd Wi-Fi: Deskhub-main Pass: Create2017! 8
  • 16. A browser, also called the client, can be anything that connects to the internet. Your laptop, your phone, all those things are clients. They’re responsible for sending requests and loading the pages from files sent back from the server. It manages what the app looks like. This is the responsibility of a frontend developer. The server holds all those files. Its job is to shoot specific files to the client based on its requests. It manages what the app actually does and is the responsibility of the backend developer Speaker notes
  • 17. Example: facebook.com Client Server Open browser and navigate to facebook.com HTML, CSS, & Javascrip render newsfeed Request Response Algorithm determines content of feed. Sends back HTML, CSS, Javascript files Application LogicApplication Logic Initial requestInitial request Following responseFollowing response bit.ly/introjs-sd 9 Wi-Fi: Deskhub-main Pass: Create2017!
  • 18. Let's break it down with an example. Let's say I log into facebook. When I try to go to that page, my computer is going to send a request to facebook’s server. Facebook’s server is going to look at that request and think, ā€œokay, what should I send back to ${your name}’s computer?ā€ Its going to look through my friend’s posts and determine using an algorithm what’s most important to put in my feed. Then it’ll send all that info, including the files to display the info, to my computer. My computer will then read and interpret those files and display the information on my screen. Speaker notes
  • 19. Example: facebook.com Client Server Open browser and navigate to facebook.com HTML, CSS, & Javascrip render newsfeed Request Response Algorithm determines content of feed. Sends back HTML, CSS, Javascript files Application LogicApplication Logic Initial requestInitial request Following responseFollowing response We'll be writing Javascript, the code that the browser uses to run the app 10 bit.ly/introjs-sd Wi-Fi: Deskhub-main Pass: Create2017!
  • 20. History of Javascript Written by Brendan Eich in 1995 for Netscape Initial version written in 10 days Completely unrelated to Java, but maybe named after it to draft off its popularity Over 10 years, became default programming language for browsers Continues to evolve under guidance of ECMA International, with input from top tech companies bit.ly/introjs-sd Wi-Fi: Deskhub-main Pass: Create2017! 11
  • 21. Javascript was initially written by Brendan Eich in 1995 for Netscape. It was written in 10 days but has since been improved. A common misconception is that it has something to do with Java, but they are very different languages. Most likely, Javascript was given its name to ride the wave of popularity that Java had at the time. In the ten years after it was created, it grew in popularity and today it has a monopoly on front end web development as the default language for web programming. It continues to evolve under the guidance of the ECMA International, with input from top tech companies. Speaker notes
  • 22. Javascript today Has large community of developers, libraries and frameworks Lots of job opportunities Also the syntax is easier to understand for first-time developers bit.ly/introjs-sd Wi-Fi: Deskhub-main Pass: Create2017! 12
  • 23. Because of its immense popularity, javascript today has an enormous community of developers, libraries, and frameworks. Because of its widespread use, it also has tons of job opportunities. The syntax is also easier to understand compared to other programming languages making it a good place to start for first-timers. Speaker notes
  • 24. Defining a variable with Javascript var numberOfSheep = 20 Initialize variable Name of variable Value of variable bit.ly/introjs-sd Wi-Fi: Deskhub-main Pass: Create2017! 13
  • 25. The first important concept in Javascript is the use of variables. A variable is a container used to store data values. In javascript, we define a variable by first typing out ā€˜var’. This tells the computer that we’re about to make a variable. Then we type the variable’s name. This can be anything you want, but it is helpful if the name of the variable corresponds to its value. Then we put an equal sign and type in the value of that variable. The computer now recognizes that the variable numberOfSheep is equal to 20. Speaker notes
  • 27. I’m going to show you a few examples of variables you can create. var numberOfSheep = 20; console.log(numberOfSheep); var nameOfSheep = ā€œFredā€; console.log(nameOfSheep); var cars = 5; var trucks = 6; var vehicles = x + y; console.log(vehicles); var foo = ā€˜foo’; var bar = ā€˜bar’; var something = x + y; console.log(something); Speaker notes
  • 28. Declaring a function with Javascript function greet() { return "Hello world!"; } Initialize function Name of function What the function does bit.ly/introjs-sd Wi-Fi: Deskhub-main Pass: Create2017! 15
  • 29. A function is a piece of code that’s meant to perform a specific task. You create a function by first typing out the word ā€˜function’. This tells the computer that you’re about to write a function. Then we write out the name of the function followed by parentheses. You don’t need to know quite yet what the parentheses do, just that they are required to be placed immediately after the function name. Then, inside curly brackets, we state what the function is going to do. In this case the function will simply return the string or statement ā€œHello world!ā€. Return is a word used inside a function that means ā€˜give back this value’. Speaker notes
  • 31. I’m going to show you a few examples of functions you can create function adder() { console.log(2 + 3); } adder(); ---erase console.log and put return--- function adder() { return 2 + 3; } adder(); console.log(adder()); var subtractor = function() { return 5 - 2; } console.log(subtractor()); var subtractorVariable = subtractor(); console.log(subtractorVariable); Speaker notes
  • 32. If/Else Statements go to gas stationkeep driving if false if true need gas? family roadtrip bit.ly/introjs-sd Wi-Fi: Deskhub-main Pass: Create2017! 17
  • 33. Functions can also contain some logic to them that allow them to make decisions based on different circumstances. This logic is contained inside if/else statements. For example, let's say you’re on a roadtrip. You ask yourself, do I need gas. If it's true that you need gas, you should go to the gas station. If it's false that you need gas, then you continue driving. This is a very simplified version of an if/else statement. Speaker notes
  • 34. If/Else Statements function familyRoadtrip() { if (needGas == true) { getGas(); } else { keepDriving(); } } bit.ly/introjs-sd Wi-Fi: Deskhub-main Pass: Create2017! 18
  • 35. If we were going to make that into a function, we could write it this way. The name of our function is familyRoadtrip. The first line is our if statement. We needGas is true, then we getGas. Else, we keep driving. This set of equal signs here is called a comparison operator. It's used to compare two values to see if they’re equal. Speaker notes
  • 36. Comparing Values == (equal to) 5 == 5 --> true 5 == 6 --> false != (not equal to) 5 != 5 --> false 5 != 6 --> true bit.ly/introjs-sd Wi-Fi: Deskhub-main Pass: Create2017! 19
  • 37. There are a few comparison operators you can use in Javascript. Another one is the ā€˜not equal to’ sign. Here you can see how, when we compare 5 and 6, the results true and false change depending on the operator. Speaker notes
  • 38. If/Else Statements and Comparing Values bit.ly/introjs-sd Wi-Fi: Deskhub-main Pass: Create2017! 20
  • 39. Here’s an example of an if/else statement. function comparison() { if (5 == 6) { console.log("Math is broken"); } else { console.log("Math is working today"); } } comparison(); To show additional if statements, add this: if (5 == 5) { console.log("Math is definitely working today"); } To show additional comparison operators, add this: if (5 < 6) { console.log("And five is still less than 6"); } if (5 >= 5) { console.log("And five is still 5"); } Speaker notes
  • 40. Parameters within functions function adder(a, b) { return a + b; } adder(1,2); Parameters in declaration Parameters used within the function bit.ly/introjs-sd Wi-Fi: Deskhub-main Pass: Create2017! 21
  • 41. Finally, functions allow us to use values outside of them by passing them in as parameters. Here, you see that we’ve put parameters ā€˜a’ and ā€˜b’ inside the parentheses. They correspond to the ā€˜a’ and ā€˜b’ inside the function. If we were to call the function like so, the number one would correspond to ā€˜a’, and the number 2 would correspond to ā€˜b’. Speaker notes
  • 42. Examples of parameters within functions bit.ly/introjs-sd Wi-Fi: Deskhub-main Pass: Create2017! 22
  • 43. Let's do some examples with parameters function adder(a, b) { console.log(a + b); } adder(1,2); function concatenator(first, second) { console.log(first + second); } concatenator(ā€˜foo’, ā€˜bar’); function checker(param1, param2) { if (param1 == param2) { console.log(param1 + " is equal to " + param2); } else { console.log("They are not equal"); } } checker(4,4); Speaker notes
  • 44. Real developers use Google... a lot bit.ly/introjs-sd Wi-Fi: Deskhub-main Pass: Create2017! 23
  • 45. Google is an everyday part of being a developer. A key part of becoming a developer is getting comfortable using Google to learn and look up things. The more you code, the more you will use Google, not the other way around. When you get stuck tonight, or whenever, make sure to Google it first! Speaker notes
  • 46. Repl.it setup & first steps! http://bit.ly/tf-intro-js-challenges bit.ly/introjs-sd Wi-Fi: Deskhub-main Pass: Create2017! 24
  • 47. Go ahead and go to this link. This will take you to a site called repl.it. Repl is a site that allows us to write code and instantly see a result. Sign up for repl and enter the classroom called Intro to Javascript. Just to get you all familiar with the assignments, I’ll work through the first one with you. Click on Defining Variables and you should see a screen like this. First thing we should do is read the directions on the right side of the screen. They say: ā€œThe function sayingHi needs two parameters to function. The variables at the top aren't yet defined so when we try to call sayingHi on line 8, the function fails. Define the variables so that when the function runs, it prints 'Hello World'. Define a as 'Hello' and b as 'World'. Don't forget your quotes! Don't change the test code at the bottom of the file. That's there to help make sure you're code is responding correctly. The console will respond with 'SUCCESS: `sayingHi` is working' if you wrote the function correct, and will print 'FAILURE: `sayingHi` is not working' if your function is not correct. ā€œ Right now, when we press run at the top, it gives us some errors. So, the assignment needs us to define some variables. As good developers, if there’s something we don’t know how to do, we google it. So, lets Google, how to define variables in javascript. Lets click on the first one. This is w3schools, a really nice site for information on programming and javascript. Okay, so we can define this variable x by saying = and then the number 5. Well, that’s all well and good, but I need to put a word in there, not a number. Let's see if they have an example for defining a variable with a word. I’ll just scroll down and see. Okay, so here’s a variable that has a word as a definition. The word is in quotes because its a string. Lets go back to our code and try putting in ā€œhelloā€ and ā€œworldā€ in there with quotes. It works! Go ahead and start working on the remaining challenges. Again, don’t hesitate to Google. Its’ your best friend. The first couple challenges are easier than the last few so if you can’t get them all tonight, that’s okay. Speaker notes
  • 48. Ways to keep learning 25
  • 49. For aspiring developers, bootcamps fill the gap 26
  • 50. If you’re interested in becoming a developer, however, you’ll want to consider a bootcamp. Bootcamps are short programs that provide the structure and support to help people become developers. The reason bootcamps emerged, massive gap between growing demand for software developers and supply Bootcamps were created to fill that gap: 73% get jobs as developers with an average salary lift of $26K. Speaker notes
  • 51. 89%89% job-placement rate + job guarantee Link for the third party audit jobs report: https://www.thinkful.com/bootcamp-jobs-statshttps://www.thinkful.com/bootcamp-jobs-stats Thinkful's track record of getting students jobs 27
  • 52. Thinkful has one of the best track records of getting students jobs 91% placement rate, 35% are placed before graduating. Stats are audited by third party. One of few local bootcamps with a job guarantee. Speaker notes
  • 53. Our students receive unprecedented support Learning Mentor Career MentorProgram Manager San Diego Community You 28
  • 54. We’ve been able to achieve these results because of the unprecedented support our students receive: Thinkful students work through the program with their own personal mentor. As you might have seen today, learning in a classroom was much harder than just individually with your TA. We saw the same problem and that's why all our programs are built around 1:1 support Mentors have 10+ years of experience, work at companies like Home Depot, Delta, etc You also have Slack + QA sessions if you’re stuck at 2AM Not only do you have a technical mentor you also have a career mentor, who taps into our network of mentors and employers to get you interviews and help you prepare for them. And then we have a local community: dinners and networking to meet other students, mentors, and resources for Thinkful here in San Diego Speaker notes
  • 55. Mentorship enables flexible learning Learn anywhere, anytime, & at your own pace You don't have to quitYou don't have to quit your job to startyour job to start career transitioncareer transition 29
  • 56. This unique structure also makes Thinkful more accessible. Unlike with other programs, mentorship enables total flexibility Learn on your own time and at your own pace You don’t have to quit your job to start a transition. Speaker notes
  • 57. Take a Thinkful tour! Talk to one of us to set something up ! Take a look through Thinkful's student platform to see if project-based, online learning is a good fit for you šŸ‘€ While we're at it, give us feedback on tonight's workshop. 30