SlideShare ist ein Scribd-Unternehmen logo
1 von 57
Downloaden Sie, um offline zu lesen
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

Weitere ähnliche Inhalte

Was ist angesagt?

Hay php architect eav modeling
Hay php architect   eav modelingHay php architect   eav modeling
Hay php architect eav modeling
Giang Nguyễn
 
Apress.html5.and.java script.projects.oct.2011
Apress.html5.and.java script.projects.oct.2011Apress.html5.and.java script.projects.oct.2011
Apress.html5.and.java script.projects.oct.2011
Samuel K. Itotia
 
wexarts.org iPhone Project: Developer Documentation
wexarts.org iPhone Project: Developer Documentationwexarts.org iPhone Project: Developer Documentation
wexarts.org iPhone Project: Developer Documentation
tutorialsruby
 
Top 100 PHP Interview Questions and Answers
Top 100 PHP Interview Questions and AnswersTop 100 PHP Interview Questions and Answers
Top 100 PHP Interview Questions and Answers
Vineet Kumar Saini
 

Was ist angesagt? (19)

The Guide to becoming a full stack developer in 2018
The Guide to becoming a full stack developer in 2018The Guide to becoming a full stack developer in 2018
The Guide to becoming a full stack developer in 2018
 
GTU MCA PHP Interview Questions And Answers for freshers
GTU MCA PHP  Interview Questions And Answers for freshersGTU MCA PHP  Interview Questions And Answers for freshers
GTU MCA PHP Interview Questions And Answers for freshers
 
Lecture 6 Data Driven Design
Lecture 6  Data Driven DesignLecture 6  Data Driven Design
Lecture 6 Data Driven Design
 
How to add watermark to image using php
How to add watermark to image using phpHow to add watermark to image using php
How to add watermark to image using php
 
Hay php architect eav modeling
Hay php architect   eav modelingHay php architect   eav modeling
Hay php architect eav modeling
 
Apress.html5.and.java script.projects.oct.2011
Apress.html5.and.java script.projects.oct.2011Apress.html5.and.java script.projects.oct.2011
Apress.html5.and.java script.projects.oct.2011
 
Lecture 9 Professional Practices
Lecture 9 Professional PracticesLecture 9 Professional Practices
Lecture 9 Professional Practices
 
Advanced php for web professionals
Advanced php for web professionalsAdvanced php for web professionals
Advanced php for web professionals
 
wexarts.org iPhone Project: Developer Documentation
wexarts.org iPhone Project: Developer Documentationwexarts.org iPhone Project: Developer Documentation
wexarts.org iPhone Project: Developer Documentation
 
Top 100 PHP Interview Questions and Answers
Top 100 PHP Interview Questions and AnswersTop 100 PHP Interview Questions and Answers
Top 100 PHP Interview Questions and Answers
 
100 PHP question and answer
100 PHP  question and answer100 PHP  question and answer
100 PHP question and answer
 
Groovy And Grails
Groovy And GrailsGroovy And Grails
Groovy And Grails
 
25 php interview questions – codementor
25 php interview questions – codementor25 php interview questions – codementor
25 php interview questions – codementor
 
Accessibility Usability Professional Summry
Accessibility Usability Professional SummryAccessibility Usability Professional Summry
Accessibility Usability Professional Summry
 
Untangling7
Untangling7Untangling7
Untangling7
 
Say Hello 2 Bdd
Say Hello 2 BddSay Hello 2 Bdd
Say Hello 2 Bdd
 
Writing code samples for API/SDK documentation
Writing code samples for API/SDK documentationWriting code samples for API/SDK documentation
Writing code samples for API/SDK documentation
 
Abstract Class and Interface in PHP
Abstract Class and Interface in PHPAbstract Class and Interface in PHP
Abstract Class and Interface in PHP
 
Computer Science Career Awesomeness - GPH (May 2015)
Computer Science Career Awesomeness - GPH (May 2015)Computer Science Career Awesomeness - GPH (May 2015)
Computer Science Career Awesomeness - GPH (May 2015)
 

Ähnlich wie Introjs10.5.17SD

Aspnet2.0 Introduction
Aspnet2.0 IntroductionAspnet2.0 Introduction
Aspnet2.0 Introduction
ChanHan Hy
 
Doing Modern Web, aka JavaScript and HTML5 in the Enterprise NYC Code Camp
Doing Modern Web, aka JavaScript and HTML5 in the Enterprise NYC Code CampDoing Modern Web, aka JavaScript and HTML5 in the Enterprise NYC Code Camp
Doing Modern Web, aka JavaScript and HTML5 in the Enterprise NYC Code Camp
Chris Love
 

Ähnlich wie Introjs10.5.17SD (20)

Intro to JavaScript
Intro to JavaScriptIntro to JavaScript
Intro to JavaScript
 
Aspnet2.0 Introduction
Aspnet2.0 IntroductionAspnet2.0 Introduction
Aspnet2.0 Introduction
 
How To be a Backend developer
How To be a Backend developer    How To be a Backend developer
How To be a Backend developer
 
Front End Lecture 1.pptx
Front End Lecture 1.pptxFront End Lecture 1.pptx
Front End Lecture 1.pptx
 
Deck 893ff61f-1fb8-4e15-a379-775dfdbcee77-12-53
Deck 893ff61f-1fb8-4e15-a379-775dfdbcee77-12-53Deck 893ff61f-1fb8-4e15-a379-775dfdbcee77-12-53
Deck 893ff61f-1fb8-4e15-a379-775dfdbcee77-12-53
 
WordCamp Asheville 2017 - So You Wanna Dev? Join the Team!
WordCamp Asheville 2017 - So You Wanna Dev? Join the Team!WordCamp Asheville 2017 - So You Wanna Dev? Join the Team!
WordCamp Asheville 2017 - So You Wanna Dev? Join the Team!
 
Introjs1.9.18tf
Introjs1.9.18tfIntrojs1.9.18tf
Introjs1.9.18tf
 
Professional web development with libraries
Professional web development with librariesProfessional web development with libraries
Professional web development with libraries
 
Intro to js august 31
Intro to js august 31Intro to js august 31
Intro to js august 31
 
Node js projects
Node js projectsNode js projects
Node js projects
 
(In)Security Implication in the JS Universe
(In)Security Implication in the JS Universe(In)Security Implication in the JS Universe
(In)Security Implication in the JS Universe
 
C# classes
C#   classesC#   classes
C# classes
 
Over view of Technologies
Over view of TechnologiesOver view of Technologies
Over view of Technologies
 
Ijsphx927
Ijsphx927Ijsphx927
Ijsphx927
 
Fewd week4 slides
Fewd week4 slidesFewd week4 slides
Fewd week4 slides
 
2020 Top Web Development Trends
2020 Top Web Development Trends2020 Top Web Development Trends
2020 Top Web Development Trends
 
Doing Modern Web, aka JavaScript and HTML5 in the Enterprise NYC Code Camp
Doing Modern Web, aka JavaScript and HTML5 in the Enterprise NYC Code CampDoing Modern Web, aka JavaScript and HTML5 in the Enterprise NYC Code Camp
Doing Modern Web, aka JavaScript and HTML5 in the Enterprise NYC Code Camp
 
Viacheslav Eremin interview about DOT NET (eng lang)
Viacheslav Eremin interview about DOT NET (eng lang)Viacheslav Eremin interview about DOT NET (eng lang)
Viacheslav Eremin interview about DOT NET (eng lang)
 
MyReplayInZen
MyReplayInZenMyReplayInZen
MyReplayInZen
 
3stages Wdn08 V3
3stages Wdn08 V33stages Wdn08 V3
3stages Wdn08 V3
 

Mehr von Thinkful

LA 1/16/18 Intro to Javascript: Fundamentals
LA 1/16/18 Intro to Javascript: FundamentalsLA 1/16/18 Intro to Javascript: Fundamentals
LA 1/16/18 Intro to Javascript: Fundamentals
Thinkful
 
Getting started-jan-9-2018
Getting started-jan-9-2018Getting started-jan-9-2018
Getting started-jan-9-2018
Thinkful
 

Mehr von Thinkful (20)

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

Kürzlich hochgeladen

Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
WSO2
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Victor Rentea
 

Kürzlich hochgeladen (20)

DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 

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