SlideShare a Scribd company logo
Build a Game with Javascript
July 2017
WIFI: Cross Camp.us Events
http://bit.ly/introjs-la
1
Instructor
Fernando Arocho
Self-taught developer
Lead Software Engineer at
Revuelo, Inc.
TAs
Wi-Fi: Cross Camp.us Events bit.ly/introjs-la
2
About you
What's your name?
What brought you here today?
What is your programming experience?
bit.ly/introjs-laWi-Fi: Cross Camp.us Events
3
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-laWi-Fi: Cross Camp.us Events
4
Suggestions for learning
Don't treat this as a drill, we're making something realwe're making something real
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-laWi-Fi: Cross Camp.us Events
5
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-laWi-Fi: Cross Camp.us Events
6
How the web works
Type a URL from a client (e.g. google.com)​
http://www.bit.ly/introjs-la
Browser sends an HTTP request asking for specific files
Browser receives those files and renders them as a website
Wi-Fi: Cross Camp.us Events
7
Client/Servers
Client (sends requests)
Frontend Developer
Manages what user sees
Server (sends response)
Backend Developer
Manages what app does
Wi-Fi: Cross Camp.us Events http://www.bit.ly/introjs-la
8
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
9
Application LogicApplication Logic
Initial requestInitial request
Following responseFollowing response
Wi-Fi: Cross Camp.us Events http://www.bit.ly/introjs-la
How this relates to today
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
10
Initial requestInitial request
Following responseFollowing response
We'll be writing Javascript, the code
that the browser uses to run the app
http://www.bit.ly/introjs-laWi-Fi: Cross Camp.us Events
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
Wi-Fi: Cross Camp.us Events http://www.bit.ly/introjs-la
11
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
http://www.bit.ly/introjs-laWi-Fi: Cross Camp.us Events
12
Defining a variable with Javascript
var numberOfSheep = 20
Initialize variable
Name of variable
Value of variable
Wi-Fi: Cross Camp.us Events http://www.bit.ly/introjs-la
13
Variable examples
Wi-Fi: Cross Camp.us Events http://www.bit.ly/introjs-la
14
Declaring a function with Javascript
function greet() {
return "Hello world!";
}
Initialize function Name of function
What the function does
http://www.bit.ly/introjs-laWi-Fi: Cross Camp.us Events
15
Function examples
http://www.bit.ly/introjs-laWi-Fi: Cross Camp.us Events
16
If/Else Statements
go to gas stationkeep driving
if false if true
need gas?
family roadtrip
Wi-Fi: Cross Camp.us Events http://www.bit.ly/introjs-la
17
If/Else Statements
function familyRoadtrip() {
if (needGas == true) {
getGas();
}
else {
keepDriving();
}
}
http://www.bit.ly/introjs-laWi-Fi: Cross Camp.us Events
18
Comparing Values
== (equal to)
5 == 5 --> true
5 == 6 --> false
!= (not equal to)
5 != 5 --> false
5 != 6 --> true
Wi-Fi: Cross Camp.us Events http://www.bit.ly/introjs-la
19
If/Else Statements and Comparing Values
http://www.bit.ly/introjs-laWi-Fi: Cross Camp.us Events
20
Parameters within functions
function adder(a, b) {
return a + b;
}
adder(1,2);
Parameters in declaration
Parameters used
within the function
Wi-Fi: Cross Camp.us Events http://www.bit.ly/introjs-la
21
Examples of parameters within functions
http://www.bit.ly/introjs-laWi-Fi: Cross Camp.us Events
22
Real developers use Google... a lot
Wi-Fi: Cross Camp.us Events http://www.bit.ly/introjs-la
23
Repl.it setup & first steps!
http://bit.ly/tf-intro-js-challenges
http://www.bit.ly/introjs-laWi-Fi: Cross Camp.us Events
24
Ways to keep learning
More Structure
Less Structure
More SupportLess Support
25
325+ mentors325+ mentors with an average of
10 years of experience10 years of experience in the
field
26
Career prep and job-placement
Liz Stephanie
Our career services team has helped 93% of our grads
begin jobs at companies like:
27
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.
28

More Related Content

What's hot (20)

website la 11/28
website la 11/28website la 11/28
website la 11/28
Thinkful
 
Build a Game with JavaScript
Build a Game with JavaScriptBuild a Game with JavaScript
Build a Game with JavaScript
Thinkful
 
Build a Game with JavaScript
Build a Game with JavaScriptBuild a Game with JavaScript
Build a Game with JavaScript
Thinkful
 
Build a game la september 7
Build a game la september 7Build a game la september 7
Build a game la september 7
Thinkful
 
Intro To JavaScript
Intro To JavaScriptIntro To JavaScript
Intro To JavaScript
Ivy Rueb
 
Build a Game with JavaScript
Build a Game with JavaScriptBuild a Game with JavaScript
Build a Game with JavaScript
Thinkful
 
Build an App with JavaScript and jQuery (DTLA, 06/21)
Build an App with JavaScript and jQuery (DTLA, 06/21)Build an App with JavaScript and jQuery (DTLA, 06/21)
Build an App with JavaScript and jQuery (DTLA, 06/21)
Thinkful
 
Deck 893ff61f-1fb8-4e15-a379-775dfdbcee77-7-15
Deck 893ff61f-1fb8-4e15-a379-775dfdbcee77-7-15Deck 893ff61f-1fb8-4e15-a379-775dfdbcee77-7-15
Deck 893ff61f-1fb8-4e15-a379-775dfdbcee77-7-15
Thinkful
 
Build an App with JavaScript & jQuery
Build an App with JavaScript & jQuery Build an App with JavaScript & jQuery
Build an App with JavaScript & jQuery
Aaron Lamphere
 
Build A Game with JavaScript - LA - July 11
Build A Game with JavaScript - LA - July 11Build A Game with JavaScript - LA - July 11
Build A Game with JavaScript - LA - July 11
Thinkful
 
Build an App with JavaScript and jQuery - LA - July 18 Pasadena
Build an App with JavaScript and jQuery - LA - July 18 PasadenaBuild an App with JavaScript and jQuery - LA - July 18 Pasadena
Build an App with JavaScript and jQuery - LA - July 18 Pasadena
Thinkful
 
Build a Web App with JavaScript & jQuery
Build a Web App with JavaScript & jQueryBuild a Web App with JavaScript & jQuery
Build a Web App with JavaScript & jQuery
Thinkful
 
webapp 8/29
webapp 8/29webapp 8/29
webapp 8/29
Thinkful
 
website phx
website phxwebsite phx
website phx
Thinkful
 
Build Your Own Website with HTML/CSS - July 17 - LA
Build Your Own Website with HTML/CSS - July 17 - LABuild Your Own Website with HTML/CSS - July 17 - LA
Build Your Own Website with HTML/CSS - July 17 - LA
Thinkful
 
Build your own website - LA 2-13-18
Build your own website - LA 2-13-18Build your own website - LA 2-13-18
Build your own website - LA 2-13-18
Justin Ezor
 
WordPress Async 101 - An Introduction to wp-ajax and rest api - WordCamp Bari...
WordPress Async 101 - An Introduction to wp-ajax and rest api - WordCamp Bari...WordPress Async 101 - An Introduction to wp-ajax and rest api - WordCamp Bari...
WordPress Async 101 - An Introduction to wp-ajax and rest api - WordCamp Bari...
Andrea Cardinali
 
Build an App with JavaScript and jQuery - LA - July 27
Build an App with JavaScript and jQuery - LA - July 27Build an App with JavaScript and jQuery - LA - July 27
Build an App with JavaScript and jQuery - LA - July 27
Thinkful
 
Deck 893ff61f-1fb8-4e15-a379-775dfdbcee77-7(1)
Deck 893ff61f-1fb8-4e15-a379-775dfdbcee77-7(1)Deck 893ff61f-1fb8-4e15-a379-775dfdbcee77-7(1)
Deck 893ff61f-1fb8-4e15-a379-775dfdbcee77-7(1)
Thinkful
 
Build a webapp la september 6
Build a webapp la september 6Build a webapp la september 6
Build a webapp la september 6
Thinkful
 
website la 11/28
website la 11/28website la 11/28
website la 11/28
Thinkful
 
Build a Game with JavaScript
Build a Game with JavaScriptBuild a Game with JavaScript
Build a Game with JavaScript
Thinkful
 
Build a Game with JavaScript
Build a Game with JavaScriptBuild a Game with JavaScript
Build a Game with JavaScript
Thinkful
 
Build a game la september 7
Build a game la september 7Build a game la september 7
Build a game la september 7
Thinkful
 
Intro To JavaScript
Intro To JavaScriptIntro To JavaScript
Intro To JavaScript
Ivy Rueb
 
Build a Game with JavaScript
Build a Game with JavaScriptBuild a Game with JavaScript
Build a Game with JavaScript
Thinkful
 
Build an App with JavaScript and jQuery (DTLA, 06/21)
Build an App with JavaScript and jQuery (DTLA, 06/21)Build an App with JavaScript and jQuery (DTLA, 06/21)
Build an App with JavaScript and jQuery (DTLA, 06/21)
Thinkful
 
Deck 893ff61f-1fb8-4e15-a379-775dfdbcee77-7-15
Deck 893ff61f-1fb8-4e15-a379-775dfdbcee77-7-15Deck 893ff61f-1fb8-4e15-a379-775dfdbcee77-7-15
Deck 893ff61f-1fb8-4e15-a379-775dfdbcee77-7-15
Thinkful
 
Build an App with JavaScript & jQuery
Build an App with JavaScript & jQuery Build an App with JavaScript & jQuery
Build an App with JavaScript & jQuery
Aaron Lamphere
 
Build A Game with JavaScript - LA - July 11
Build A Game with JavaScript - LA - July 11Build A Game with JavaScript - LA - July 11
Build A Game with JavaScript - LA - July 11
Thinkful
 
Build an App with JavaScript and jQuery - LA - July 18 Pasadena
Build an App with JavaScript and jQuery - LA - July 18 PasadenaBuild an App with JavaScript and jQuery - LA - July 18 Pasadena
Build an App with JavaScript and jQuery - LA - July 18 Pasadena
Thinkful
 
Build a Web App with JavaScript & jQuery
Build a Web App with JavaScript & jQueryBuild a Web App with JavaScript & jQuery
Build a Web App with JavaScript & jQuery
Thinkful
 
webapp 8/29
webapp 8/29webapp 8/29
webapp 8/29
Thinkful
 
website phx
website phxwebsite phx
website phx
Thinkful
 
Build Your Own Website with HTML/CSS - July 17 - LA
Build Your Own Website with HTML/CSS - July 17 - LABuild Your Own Website with HTML/CSS - July 17 - LA
Build Your Own Website with HTML/CSS - July 17 - LA
Thinkful
 
Build your own website - LA 2-13-18
Build your own website - LA 2-13-18Build your own website - LA 2-13-18
Build your own website - LA 2-13-18
Justin Ezor
 
WordPress Async 101 - An Introduction to wp-ajax and rest api - WordCamp Bari...
WordPress Async 101 - An Introduction to wp-ajax and rest api - WordCamp Bari...WordPress Async 101 - An Introduction to wp-ajax and rest api - WordCamp Bari...
WordPress Async 101 - An Introduction to wp-ajax and rest api - WordCamp Bari...
Andrea Cardinali
 
Build an App with JavaScript and jQuery - LA - July 27
Build an App with JavaScript and jQuery - LA - July 27Build an App with JavaScript and jQuery - LA - July 27
Build an App with JavaScript and jQuery - LA - July 27
Thinkful
 
Deck 893ff61f-1fb8-4e15-a379-775dfdbcee77-7(1)
Deck 893ff61f-1fb8-4e15-a379-775dfdbcee77-7(1)Deck 893ff61f-1fb8-4e15-a379-775dfdbcee77-7(1)
Deck 893ff61f-1fb8-4e15-a379-775dfdbcee77-7(1)
Thinkful
 
Build a webapp la september 6
Build a webapp la september 6Build a webapp la september 6
Build a webapp la september 6
Thinkful
 

Similar to Build a Game with JavaScript - Pasadena July (20)

Intro to js september 19
Intro to js september 19Intro to js september 19
Intro to js september 19
Thinkful
 
Intro to Javascript
Intro to JavascriptIntro to Javascript
Intro to Javascript
TJ Stalcup
 
Intro js-nov-7
Intro js-nov-7Intro js-nov-7
Intro js-nov-7
Thinkful
 
Intro to JavaScript
Intro to JavaScriptIntro to JavaScript
Intro to JavaScript
Aaron Lamphere
 
Build Your Own Website with HTML/CSS 8.15
Build Your Own Website with HTML/CSS 8.15Build Your Own Website with HTML/CSS 8.15
Build Your Own Website with HTML/CSS 8.15
Thinkful
 
Build Your Own Website with HTML/CSS - July - LA
Build Your Own Website with HTML/CSS - July - LABuild Your Own Website with HTML/CSS - July - LA
Build Your Own Website with HTML/CSS - July - LA
Thinkful
 
Intro js-la-12-18
Intro js-la-12-18Intro js-la-12-18
Intro js-la-12-18
Thinkful
 
IJS821
IJS821IJS821
IJS821
Thinkful
 
Deck 8983a1d9-68df-4447-8481-3b4fd0de734c-9-28
Deck 8983a1d9-68df-4447-8481-3b4fd0de734c-9-28Deck 8983a1d9-68df-4447-8481-3b4fd0de734c-9-28
Deck 8983a1d9-68df-4447-8481-3b4fd0de734c-9-28
Thinkful
 
Introjs1.9.18tf
Introjs1.9.18tfIntrojs1.9.18tf
Introjs1.9.18tf
Thinkful
 
Deck 8983a1d9-68df-4447-8481-3b4fd0de734c-9-52
Deck 8983a1d9-68df-4447-8481-3b4fd0de734c-9-52Deck 8983a1d9-68df-4447-8481-3b4fd0de734c-9-52
Deck 8983a1d9-68df-4447-8481-3b4fd0de734c-9-52
Ivy Rueb
 
Deck 8983a1d9-68df-4447-8481-3b4fd0de734c-9-52-74
Deck 8983a1d9-68df-4447-8481-3b4fd0de734c-9-52-74Deck 8983a1d9-68df-4447-8481-3b4fd0de734c-9-52-74
Deck 8983a1d9-68df-4447-8481-3b4fd0de734c-9-52-74
Ivy Rueb
 
Introjs2.13.18sd
Introjs2.13.18sdIntrojs2.13.18sd
Introjs2.13.18sd
Jordan Zurowski
 
Intro to JavaScript
Intro to JavaScriptIntro to JavaScript
Intro to JavaScript
Aaron Lamphere
 
Intro to JavaScript
Intro to JavaScriptIntro to JavaScript
Intro to JavaScript
Aaron Lamphere
 
Build your Own Twitter bot 09/20
Build your Own Twitter bot 09/20Build your Own Twitter bot 09/20
Build your Own Twitter bot 09/20
Ivy Rueb
 
Deck 893ff61f-1fb8-4e15-a379-775dfdbcee77-7-14-55-78-171-219-304-310-388 (1)
Deck 893ff61f-1fb8-4e15-a379-775dfdbcee77-7-14-55-78-171-219-304-310-388 (1)Deck 893ff61f-1fb8-4e15-a379-775dfdbcee77-7-14-55-78-171-219-304-310-388 (1)
Deck 893ff61f-1fb8-4e15-a379-775dfdbcee77-7-14-55-78-171-219-304-310-388 (1)
Justin Ezor
 
Intro to JavaScript
Intro to JavaScriptIntro to JavaScript
Intro to JavaScript
Aaron Lamphere
 
Build a Game with JavaScript - Thinkful DC
Build a Game with JavaScript - Thinkful DCBuild a Game with JavaScript - Thinkful DC
Build a Game with JavaScript - Thinkful DC
TJ Stalcup
 
Deck 893ff61f-1fb8-4e15-a379-775dfdbcee77-7-14
Deck 893ff61f-1fb8-4e15-a379-775dfdbcee77-7-14Deck 893ff61f-1fb8-4e15-a379-775dfdbcee77-7-14
Deck 893ff61f-1fb8-4e15-a379-775dfdbcee77-7-14
Thinkful
 
Intro to js september 19
Intro to js september 19Intro to js september 19
Intro to js september 19
Thinkful
 
Intro to Javascript
Intro to JavascriptIntro to Javascript
Intro to Javascript
TJ Stalcup
 
Intro js-nov-7
Intro js-nov-7Intro js-nov-7
Intro js-nov-7
Thinkful
 
Build Your Own Website with HTML/CSS 8.15
Build Your Own Website with HTML/CSS 8.15Build Your Own Website with HTML/CSS 8.15
Build Your Own Website with HTML/CSS 8.15
Thinkful
 
Build Your Own Website with HTML/CSS - July - LA
Build Your Own Website with HTML/CSS - July - LABuild Your Own Website with HTML/CSS - July - LA
Build Your Own Website with HTML/CSS - July - LA
Thinkful
 
Intro js-la-12-18
Intro js-la-12-18Intro js-la-12-18
Intro js-la-12-18
Thinkful
 
Deck 8983a1d9-68df-4447-8481-3b4fd0de734c-9-28
Deck 8983a1d9-68df-4447-8481-3b4fd0de734c-9-28Deck 8983a1d9-68df-4447-8481-3b4fd0de734c-9-28
Deck 8983a1d9-68df-4447-8481-3b4fd0de734c-9-28
Thinkful
 
Introjs1.9.18tf
Introjs1.9.18tfIntrojs1.9.18tf
Introjs1.9.18tf
Thinkful
 
Deck 8983a1d9-68df-4447-8481-3b4fd0de734c-9-52
Deck 8983a1d9-68df-4447-8481-3b4fd0de734c-9-52Deck 8983a1d9-68df-4447-8481-3b4fd0de734c-9-52
Deck 8983a1d9-68df-4447-8481-3b4fd0de734c-9-52
Ivy Rueb
 
Deck 8983a1d9-68df-4447-8481-3b4fd0de734c-9-52-74
Deck 8983a1d9-68df-4447-8481-3b4fd0de734c-9-52-74Deck 8983a1d9-68df-4447-8481-3b4fd0de734c-9-52-74
Deck 8983a1d9-68df-4447-8481-3b4fd0de734c-9-52-74
Ivy Rueb
 
Build your Own Twitter bot 09/20
Build your Own Twitter bot 09/20Build your Own Twitter bot 09/20
Build your Own Twitter bot 09/20
Ivy Rueb
 
Deck 893ff61f-1fb8-4e15-a379-775dfdbcee77-7-14-55-78-171-219-304-310-388 (1)
Deck 893ff61f-1fb8-4e15-a379-775dfdbcee77-7-14-55-78-171-219-304-310-388 (1)Deck 893ff61f-1fb8-4e15-a379-775dfdbcee77-7-14-55-78-171-219-304-310-388 (1)
Deck 893ff61f-1fb8-4e15-a379-775dfdbcee77-7-14-55-78-171-219-304-310-388 (1)
Justin Ezor
 
Build a Game with JavaScript - Thinkful DC
Build a Game with JavaScript - Thinkful DCBuild a Game with JavaScript - Thinkful DC
Build a Game with JavaScript - Thinkful DC
TJ Stalcup
 
Deck 893ff61f-1fb8-4e15-a379-775dfdbcee77-7-14
Deck 893ff61f-1fb8-4e15-a379-775dfdbcee77-7-14Deck 893ff61f-1fb8-4e15-a379-775dfdbcee77-7-14
Deck 893ff61f-1fb8-4e15-a379-775dfdbcee77-7-14
Thinkful
 

More from 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
Thinkful
 
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
Thinkful
 
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
Thinkful
 
Itjsf129
Itjsf129Itjsf129
Itjsf129
Thinkful
 
Twit botsd1.30.18
Twit botsd1.30.18Twit botsd1.30.18
Twit botsd1.30.18
Thinkful
 
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)
Thinkful
 
Baggwjs124
Baggwjs124Baggwjs124
Baggwjs124
Thinkful
 
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
Thinkful
 
Vpet sd-1.25.18
Vpet sd-1.25.18Vpet sd-1.25.18
Vpet sd-1.25.18
Thinkful
 
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
Thinkful
 
How to Choose a Programming Language
How to Choose a Programming LanguageHow to Choose a Programming Language
How to Choose a Programming Language
Thinkful
 
Batbwjs117
Batbwjs117Batbwjs117
Batbwjs117
Thinkful
 
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
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
 
(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
Thinkful
 
Websitesd1.15.17.
Websitesd1.15.17.Websitesd1.15.17.
Websitesd1.15.17.
Thinkful
 
Bavpwjs110
Bavpwjs110Bavpwjs110
Bavpwjs110
Thinkful
 
Byowwhc110
Byowwhc110Byowwhc110
Byowwhc110
Thinkful
 
Getting started-jan-9-2018
Getting started-jan-9-2018Getting started-jan-9-2018
Getting started-jan-9-2018
Thinkful
 
Proglangauage1.10.18
Proglangauage1.10.18Proglangauage1.10.18
Proglangauage1.10.18
Thinkful
 
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
Thinkful
 
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
Thinkful
 
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
Thinkful
 
Twit botsd1.30.18
Twit botsd1.30.18Twit botsd1.30.18
Twit botsd1.30.18
Thinkful
 
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)
Thinkful
 
Baggwjs124
Baggwjs124Baggwjs124
Baggwjs124
Thinkful
 
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
Thinkful
 
Vpet sd-1.25.18
Vpet sd-1.25.18Vpet sd-1.25.18
Vpet sd-1.25.18
Thinkful
 
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
Thinkful
 
How to Choose a Programming Language
How to Choose a Programming LanguageHow to Choose a Programming Language
How to Choose a Programming Language
Thinkful
 
Batbwjs117
Batbwjs117Batbwjs117
Batbwjs117
Thinkful
 
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
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
 
(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
Thinkful
 
Websitesd1.15.17.
Websitesd1.15.17.Websitesd1.15.17.
Websitesd1.15.17.
Thinkful
 
Bavpwjs110
Bavpwjs110Bavpwjs110
Bavpwjs110
Thinkful
 
Byowwhc110
Byowwhc110Byowwhc110
Byowwhc110
Thinkful
 
Getting started-jan-9-2018
Getting started-jan-9-2018Getting started-jan-9-2018
Getting started-jan-9-2018
Thinkful
 
Proglangauage1.10.18
Proglangauage1.10.18Proglangauage1.10.18
Proglangauage1.10.18
Thinkful
 

Recently uploaded (20)

Build With AI - In Person Session Slides.pdf
Build With AI - In Person Session Slides.pdfBuild With AI - In Person Session Slides.pdf
Build With AI - In Person Session Slides.pdf
Google Developer Group - Harare
 
Dark Dynamism: drones, dark factories and deurbanization
Dark Dynamism: drones, dark factories and deurbanizationDark Dynamism: drones, dark factories and deurbanization
Dark Dynamism: drones, dark factories and deurbanization
Jakub Šimek
 
Could Virtual Threads cast away the usage of Kotlin Coroutines - DevoxxUK2025
Could Virtual Threads cast away the usage of Kotlin Coroutines - DevoxxUK2025Could Virtual Threads cast away the usage of Kotlin Coroutines - DevoxxUK2025
Could Virtual Threads cast away the usage of Kotlin Coroutines - DevoxxUK2025
João Esperancinha
 
ACE Aarhus - Team'25 wrap-up presentation
ACE Aarhus - Team'25 wrap-up presentationACE Aarhus - Team'25 wrap-up presentation
ACE Aarhus - Team'25 wrap-up presentation
DanielEriksen5
 
React Native for Business Solutions: Building Scalable Apps for Success
React Native for Business Solutions: Building Scalable Apps for SuccessReact Native for Business Solutions: Building Scalable Apps for Success
React Native for Business Solutions: Building Scalable Apps for Success
Amelia Swank
 
Who's choice? Making decisions with and about Artificial Intelligence, Keele ...
Who's choice? Making decisions with and about Artificial Intelligence, Keele ...Who's choice? Making decisions with and about Artificial Intelligence, Keele ...
Who's choice? Making decisions with and about Artificial Intelligence, Keele ...
Alan Dix
 
DevOpsDays SLC - Platform Engineers are Product Managers.pptx
DevOpsDays SLC - Platform Engineers are Product Managers.pptxDevOpsDays SLC - Platform Engineers are Product Managers.pptx
DevOpsDays SLC - Platform Engineers are Product Managers.pptx
Justin Reock
 
Limecraft Webinar - 2025.3 release, featuring Content Delivery, Graphic Conte...
Limecraft Webinar - 2025.3 release, featuring Content Delivery, Graphic Conte...Limecraft Webinar - 2025.3 release, featuring Content Delivery, Graphic Conte...
Limecraft Webinar - 2025.3 release, featuring Content Delivery, Graphic Conte...
Maarten Verwaest
 
DNF 2.0 Implementations Challenges in Nepal
DNF 2.0 Implementations Challenges in NepalDNF 2.0 Implementations Challenges in Nepal
DNF 2.0 Implementations Challenges in Nepal
ICT Frame Magazine Pvt. Ltd.
 
May Patch Tuesday
May Patch TuesdayMay Patch Tuesday
May Patch Tuesday
Ivanti
 
UiPath AgentHack - Build the AI agents of tomorrow_Enablement 1.pptx
UiPath AgentHack - Build the AI agents of tomorrow_Enablement 1.pptxUiPath AgentHack - Build the AI agents of tomorrow_Enablement 1.pptx
UiPath AgentHack - Build the AI agents of tomorrow_Enablement 1.pptx
anabulhac
 
machines-for-woodworking-shops-en-compressed.pdf
machines-for-woodworking-shops-en-compressed.pdfmachines-for-woodworking-shops-en-compressed.pdf
machines-for-woodworking-shops-en-compressed.pdf
AmirStern2
 
IT484 Cyber Forensics_Information Technology
IT484 Cyber Forensics_Information TechnologyIT484 Cyber Forensics_Information Technology
IT484 Cyber Forensics_Information Technology
SHEHABALYAMANI
 
How to Build an AI-Powered App: Tools, Techniques, and Trends
How to Build an AI-Powered App: Tools, Techniques, and TrendsHow to Build an AI-Powered App: Tools, Techniques, and Trends
How to Build an AI-Powered App: Tools, Techniques, and Trends
Nascenture
 
Integrating FME with Python: Tips, Demos, and Best Practices for Powerful Aut...
Integrating FME with Python: Tips, Demos, and Best Practices for Powerful Aut...Integrating FME with Python: Tips, Demos, and Best Practices for Powerful Aut...
Integrating FME with Python: Tips, Demos, and Best Practices for Powerful Aut...
Safe Software
 
論文紹介:"InfLoRA: Interference-Free Low-Rank Adaptation for Continual Learning" ...
論文紹介:"InfLoRA: Interference-Free Low-Rank Adaptation for Continual Learning" ...論文紹介:"InfLoRA: Interference-Free Low-Rank Adaptation for Continual Learning" ...
論文紹介:"InfLoRA: Interference-Free Low-Rank Adaptation for Continual Learning" ...
Toru Tamaki
 
Reimagine How You and Your Team Work with Microsoft 365 Copilot.pptx
Reimagine How You and Your Team Work with Microsoft 365 Copilot.pptxReimagine How You and Your Team Work with Microsoft 365 Copilot.pptx
Reimagine How You and Your Team Work with Microsoft 365 Copilot.pptx
John Moore
 
Kit-Works Team Study_팀스터디_김한솔_nuqs_20250509.pdf
Kit-Works Team Study_팀스터디_김한솔_nuqs_20250509.pdfKit-Works Team Study_팀스터디_김한솔_nuqs_20250509.pdf
Kit-Works Team Study_팀스터디_김한솔_nuqs_20250509.pdf
Wonjun Hwang
 
Zilliz Cloud Monthly Technical Review: May 2025
Zilliz Cloud Monthly Technical Review: May 2025Zilliz Cloud Monthly Technical Review: May 2025
Zilliz Cloud Monthly Technical Review: May 2025
Zilliz
 
Top-AI-Based-Tools-for-Game-Developers (1).pptx
Top-AI-Based-Tools-for-Game-Developers (1).pptxTop-AI-Based-Tools-for-Game-Developers (1).pptx
Top-AI-Based-Tools-for-Game-Developers (1).pptx
BR Softech
 
Dark Dynamism: drones, dark factories and deurbanization
Dark Dynamism: drones, dark factories and deurbanizationDark Dynamism: drones, dark factories and deurbanization
Dark Dynamism: drones, dark factories and deurbanization
Jakub Šimek
 
Could Virtual Threads cast away the usage of Kotlin Coroutines - DevoxxUK2025
Could Virtual Threads cast away the usage of Kotlin Coroutines - DevoxxUK2025Could Virtual Threads cast away the usage of Kotlin Coroutines - DevoxxUK2025
Could Virtual Threads cast away the usage of Kotlin Coroutines - DevoxxUK2025
João Esperancinha
 
ACE Aarhus - Team'25 wrap-up presentation
ACE Aarhus - Team'25 wrap-up presentationACE Aarhus - Team'25 wrap-up presentation
ACE Aarhus - Team'25 wrap-up presentation
DanielEriksen5
 
React Native for Business Solutions: Building Scalable Apps for Success
React Native for Business Solutions: Building Scalable Apps for SuccessReact Native for Business Solutions: Building Scalable Apps for Success
React Native for Business Solutions: Building Scalable Apps for Success
Amelia Swank
 
Who's choice? Making decisions with and about Artificial Intelligence, Keele ...
Who's choice? Making decisions with and about Artificial Intelligence, Keele ...Who's choice? Making decisions with and about Artificial Intelligence, Keele ...
Who's choice? Making decisions with and about Artificial Intelligence, Keele ...
Alan Dix
 
DevOpsDays SLC - Platform Engineers are Product Managers.pptx
DevOpsDays SLC - Platform Engineers are Product Managers.pptxDevOpsDays SLC - Platform Engineers are Product Managers.pptx
DevOpsDays SLC - Platform Engineers are Product Managers.pptx
Justin Reock
 
Limecraft Webinar - 2025.3 release, featuring Content Delivery, Graphic Conte...
Limecraft Webinar - 2025.3 release, featuring Content Delivery, Graphic Conte...Limecraft Webinar - 2025.3 release, featuring Content Delivery, Graphic Conte...
Limecraft Webinar - 2025.3 release, featuring Content Delivery, Graphic Conte...
Maarten Verwaest
 
May Patch Tuesday
May Patch TuesdayMay Patch Tuesday
May Patch Tuesday
Ivanti
 
UiPath AgentHack - Build the AI agents of tomorrow_Enablement 1.pptx
UiPath AgentHack - Build the AI agents of tomorrow_Enablement 1.pptxUiPath AgentHack - Build the AI agents of tomorrow_Enablement 1.pptx
UiPath AgentHack - Build the AI agents of tomorrow_Enablement 1.pptx
anabulhac
 
machines-for-woodworking-shops-en-compressed.pdf
machines-for-woodworking-shops-en-compressed.pdfmachines-for-woodworking-shops-en-compressed.pdf
machines-for-woodworking-shops-en-compressed.pdf
AmirStern2
 
IT484 Cyber Forensics_Information Technology
IT484 Cyber Forensics_Information TechnologyIT484 Cyber Forensics_Information Technology
IT484 Cyber Forensics_Information Technology
SHEHABALYAMANI
 
How to Build an AI-Powered App: Tools, Techniques, and Trends
How to Build an AI-Powered App: Tools, Techniques, and TrendsHow to Build an AI-Powered App: Tools, Techniques, and Trends
How to Build an AI-Powered App: Tools, Techniques, and Trends
Nascenture
 
Integrating FME with Python: Tips, Demos, and Best Practices for Powerful Aut...
Integrating FME with Python: Tips, Demos, and Best Practices for Powerful Aut...Integrating FME with Python: Tips, Demos, and Best Practices for Powerful Aut...
Integrating FME with Python: Tips, Demos, and Best Practices for Powerful Aut...
Safe Software
 
論文紹介:"InfLoRA: Interference-Free Low-Rank Adaptation for Continual Learning" ...
論文紹介:"InfLoRA: Interference-Free Low-Rank Adaptation for Continual Learning" ...論文紹介:"InfLoRA: Interference-Free Low-Rank Adaptation for Continual Learning" ...
論文紹介:"InfLoRA: Interference-Free Low-Rank Adaptation for Continual Learning" ...
Toru Tamaki
 
Reimagine How You and Your Team Work with Microsoft 365 Copilot.pptx
Reimagine How You and Your Team Work with Microsoft 365 Copilot.pptxReimagine How You and Your Team Work with Microsoft 365 Copilot.pptx
Reimagine How You and Your Team Work with Microsoft 365 Copilot.pptx
John Moore
 
Kit-Works Team Study_팀스터디_김한솔_nuqs_20250509.pdf
Kit-Works Team Study_팀스터디_김한솔_nuqs_20250509.pdfKit-Works Team Study_팀스터디_김한솔_nuqs_20250509.pdf
Kit-Works Team Study_팀스터디_김한솔_nuqs_20250509.pdf
Wonjun Hwang
 
Zilliz Cloud Monthly Technical Review: May 2025
Zilliz Cloud Monthly Technical Review: May 2025Zilliz Cloud Monthly Technical Review: May 2025
Zilliz Cloud Monthly Technical Review: May 2025
Zilliz
 
Top-AI-Based-Tools-for-Game-Developers (1).pptx
Top-AI-Based-Tools-for-Game-Developers (1).pptxTop-AI-Based-Tools-for-Game-Developers (1).pptx
Top-AI-Based-Tools-for-Game-Developers (1).pptx
BR Softech
 

Build a Game with JavaScript - Pasadena July

  • 1. Build a Game with Javascript July 2017 WIFI: Cross Camp.us Events http://bit.ly/introjs-la 1
  • 2. Instructor Fernando Arocho Self-taught developer Lead Software Engineer at Revuelo, Inc. TAs Wi-Fi: Cross Camp.us Events bit.ly/introjs-la 2
  • 3. About you What's your name? What brought you here today? What is your programming experience? bit.ly/introjs-laWi-Fi: Cross Camp.us Events 3
  • 4. 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-laWi-Fi: Cross Camp.us Events 4
  • 5. Suggestions for learning Don't treat this as a drill, we're making something realwe're making something real 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-laWi-Fi: Cross Camp.us Events 5
  • 6. 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-laWi-Fi: Cross Camp.us Events 6
  • 7. How the web works Type a URL from a client (e.g. google.com)​ http://www.bit.ly/introjs-la Browser sends an HTTP request asking for specific files Browser receives those files and renders them as a website Wi-Fi: Cross Camp.us Events 7
  • 8. Client/Servers Client (sends requests) Frontend Developer Manages what user sees Server (sends response) Backend Developer Manages what app does Wi-Fi: Cross Camp.us Events http://www.bit.ly/introjs-la 8
  • 9. 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 9 Application LogicApplication Logic Initial requestInitial request Following responseFollowing response Wi-Fi: Cross Camp.us Events http://www.bit.ly/introjs-la
  • 10. How this relates to today 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 10 Initial requestInitial request Following responseFollowing response We'll be writing Javascript, the code that the browser uses to run the app http://www.bit.ly/introjs-laWi-Fi: Cross Camp.us Events
  • 11. 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 Wi-Fi: Cross Camp.us Events http://www.bit.ly/introjs-la 11
  • 12. 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 http://www.bit.ly/introjs-laWi-Fi: Cross Camp.us Events 12
  • 13. Defining a variable with Javascript var numberOfSheep = 20 Initialize variable Name of variable Value of variable Wi-Fi: Cross Camp.us Events http://www.bit.ly/introjs-la 13
  • 14. Variable examples Wi-Fi: Cross Camp.us Events http://www.bit.ly/introjs-la 14
  • 15. Declaring a function with Javascript function greet() { return "Hello world!"; } Initialize function Name of function What the function does http://www.bit.ly/introjs-laWi-Fi: Cross Camp.us Events 15
  • 17. If/Else Statements go to gas stationkeep driving if false if true need gas? family roadtrip Wi-Fi: Cross Camp.us Events http://www.bit.ly/introjs-la 17
  • 18. If/Else Statements function familyRoadtrip() { if (needGas == true) { getGas(); } else { keepDriving(); } } http://www.bit.ly/introjs-laWi-Fi: Cross Camp.us Events 18
  • 19. Comparing Values == (equal to) 5 == 5 --> true 5 == 6 --> false != (not equal to) 5 != 5 --> false 5 != 6 --> true Wi-Fi: Cross Camp.us Events http://www.bit.ly/introjs-la 19
  • 20. If/Else Statements and Comparing Values http://www.bit.ly/introjs-laWi-Fi: Cross Camp.us Events 20
  • 21. Parameters within functions function adder(a, b) { return a + b; } adder(1,2); Parameters in declaration Parameters used within the function Wi-Fi: Cross Camp.us Events http://www.bit.ly/introjs-la 21
  • 22. Examples of parameters within functions http://www.bit.ly/introjs-laWi-Fi: Cross Camp.us Events 22
  • 23. Real developers use Google... a lot Wi-Fi: Cross Camp.us Events http://www.bit.ly/introjs-la 23
  • 24. Repl.it setup & first steps! http://bit.ly/tf-intro-js-challenges http://www.bit.ly/introjs-laWi-Fi: Cross Camp.us Events 24
  • 25. Ways to keep learning More Structure Less Structure More SupportLess Support 25
  • 26. 325+ mentors325+ mentors with an average of 10 years of experience10 years of experience in the field 26
  • 27. Career prep and job-placement Liz Stephanie Our career services team has helped 93% of our grads begin jobs at companies like: 27
  • 28. 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. 28
  翻译: