How to Choose a Programming Language January 2018 WIFI: CrossCamp.us Events Password: None bit.ly/language-la 1
Instructor Justin Ezor Thinkful LA Community Manager Wi-Fi: CrossCamp.usEvents Pass: None bit.ly/language-la 2
About you What's your name? What brought you here today? What is your programming experience? Wi-Fi: Digital Ignition Pass: Countdown54321 bit.ly/tf-programming-languageWi-Fi: CrossCamp.usEvents Pass: None bit.ly/language-la 3
About Thinkful Thinkful helps people become developers or data scientists through 1-on-1 mentorship and project-based learning Wi-Fi: Digital Ignition Pass: Countdown54321 bit.ly/tf-programming-languageWi-Fi: CrossCamp.usEvents Pass: None bit.ly/language-la 4
What is programming? Programming is: writing instructions for a computer to execute problem-solvingproblem-solving Wi-Fi: Digital Ignition Pass: Countdown54321 bit.ly/tf-programming-languageWi-Fi: CrossCamp.usEvents Pass: None bit.ly/language-la 5
Learning how to code Learning to code is a process of learning how to solve problems in a structured way and then translate those solutions into instructions a computer can understand and implement. Variables, loops, arrays, functions exist in all languages — stick to one until you understand the core concepts Wi-Fi: Digital Ignition Pass: Countdown54321 bit.ly/tf-programming-languageWi-Fi: CrossCamp.usEvents Pass: None bit.ly/language-la 6
Pick one thing and master it. Don’t jump around. It will be surprisingly easy to pick up more languages once you understand the fundamentals. Wi-Fi: Digital Ignition Pass: Countdown54321 bit.ly/tf-programming-languageWi-Fi: CrossCamp.usEvents Pass: None bit.ly/language-la 7
Does the first language you choose matter? It matters, but not in the way most people think. You should pick the language that makes it easiest for you to learn how to code. Wi-Fi: Digital Ignition Pass: Countdown54321 bit.ly/tf-programming-languageWi-Fi: CrossCamp.usEvents Pass: None bit.ly/language-la 8
How to pick a first language? Objective Popularity Accessibility Job prospects Longevity Wi-Fi: Digital Ignition Pass: Countdown54321 bit.ly/tf-programming-languageWi-Fi: CrossCamp.usEvents Pass: None bit.ly/language-la 9
Potential objectives Frontend Backend Full-stack Data & Analytics Wi-Fi: Digital Ignition Pass: Countdown54321 bit.ly/tf-programming-languageWi-Fi: CrossCamp.usEvents Pass: None bit.ly/language-la 10
Front end, Back end, and Full stack Client (sends requests) Frontend Developer Manages what user sees Server (sends response) Backend Developer Manages what app does Wi-Fi: Digital Ignition Pass: Countdown54321 bit.ly/tf-programming-languageWi-Fi: CrossCamp.usEvents Pass: None 11 bit.ly/language-la
Data/Analytics Data & Databases Database Engineers, Data Scientists, Data Analysts Wi-Fi: Digital Ignition Pass: Countdown54321 bit.ly/tf-programming-languageWi-Fi: CrossCamp.usEvents Pass: None bit.ly/language-la 12
Benefits of Popularity & Accessibility Has large community of developers, libraries and frameworks => easier to learn & debug Syntax is less complicated and more intuitive for first-time developers Helps you focus on learning how to code rather than get distracted by the nuances of the language Wi-Fi: Digital Ignition Pass: Countdown54321 bit.ly/tf-programming-languageWi-Fi: CrossCamp.usEvents Pass: None bit.ly/language-la 13
Our recommendations Frontend: Javascript Backend: Javascript/Python Full-stack: Javascript Analytics: Python bit.ly/build-own-website Wi-Fi: Digital Ignition Pass: Countdown54321 bit.ly/tf-programming-languageWi-Fi: CrossCamp.usEvents Pass: None bit.ly/language-la 14
Javascript Wi-Fi: Digital Ignition Pass: Countdown54321 bit.ly/tf-programming-languageWi-Fi: CrossCamp.usEvents Pass: None bit.ly/language-la 15
Javascript history 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: Digital Ignition Pass: Countdown54321 bit.ly/tf-programming-languageWi-Fi: CrossCamp.usEvents Pass: None bit.ly/language-la 16
Javascript Wi-Fi: Digital Ignition Pass: Countdown54321 bit.ly/tf-programming-languageWi-Fi: CrossCamp.usEvents Pass: None bit.ly/language-la 17
Why JavaScript? 94% of all websites in the world use Javascript. Javascript has a monopoly on front end web development. All browsers already have Javascript interpreters included. Node.js allows Javascript to be written on the back end as well. Knowing Javascript means you can create full stack web applications in minutes. 18
Python Wi-Fi: Digital Ignition Pass: Countdown54321 bit.ly/tf-programming-languageWi-Fi: CrossCamp.usEvents Pass: None bit.ly/language-la 19
Python history First release in 1991 Designed to be simpler and more readable Named after “Monty Python’s Flying Circus” Wi-Fi: Digital Ignition Pass: Countdown54321 bit.ly/tf-programming-languageWi-Fi: CrossCamp.usEvents Pass: None bit.ly/language-la 20
Python today Since 2003, consistently ranked in top 10 most popular languages. As of 2017, was fifth most popular language, currently #3 on Github Has become standard language in computer science curriculums (displacing Java) Wi-Fi: Digital Ignition Pass: Countdown54321 bit.ly/tf-programming-languageWi-Fi: CrossCamp.usEvents Pass: None bit.ly/language-la 21
Python today Wi-Fi: Digital Ignition Pass: Countdown54321 bit.ly/tf-programming-languageWi-Fi: CrossCamp.usEvents Pass: None bit.ly/language-la 22
Python analytics Data scientists are increasingly using Python over R Python has excellent modules for “big data” analysis and machine learning (NumPy, Pandas, sklearn) Wi-Fi: Digital Ignition Pass: Countdown54321 bit.ly/tf-programming-languageWi-Fi: CrossCamp.usEvents Pass: None bit.ly/language-la 23
Javascript basics: variables var cars = 20 Initialize variable Name of variable Value of variable Wi-Fi: Digital Ignition Pass: Countdown54321 bit.ly/tf-programming-languageWi-Fi: CrossCamp.usEvents Pass: None 24 bit.ly/language-la
Python basics: variables cars = 20 Name of variable Value of variable Wi-Fi: Digital Ignition Pass: Countdown54321 bit.ly/tf-programming-languageWi-Fi: CrossCamp.usEvents Pass: None 25 bit.ly/language-la
Javascript basics: functions function greet() { return "Hello world!"; } Initialize function Name of function What the function does Wi-Fi: Digital Ignition Pass: Countdown54321 bit.ly/tf-programming-languageWi-Fi: CrossCamp.usEvents Pass: None 26 bit.ly/language-la
Python basics: functions def printme(): print "Hello world!" return Initialize function Name of function What the function does Wi-Fi: Digital Ignition Pass: Countdown54321 bit.ly/tf-programming-languageWi-Fi: CrossCamp.usEvents Pass: None 27 bit.ly/language-la
That's it! Understanding variables and functions means you already understand the fundamentals of a programming language! Wi-Fi: Digital Ignition Pass: Countdown54321 bit.ly/tf-programming-languageWi-Fi: CrossCamp.usEvents Pass: None bit.ly/language-la 28
How can I learn? Build stuff + Google Free online resources (e.g. CodeAcademy) Flexible coding bootcamps (e.g Thinkful) Full-time coding bootcamps (e.g. GA, Thinkful) Full degree programs (Georgia Tech) Wi-Fi: Digital Ignition Pass: Countdown54321 bit.ly/tf-programming-languageWi-Fi: CrossCamp.usEvents Pass: None bit.ly/language-la 29
Thinkful - structure and support More Structure Less Structure More SupportLess Support 30
325+ mentors325+ mentors with an average of 10 years of experience10 years of experience in the field 31
Support 'round the clock Your Mentor Q&A Sessions Career Coach In-person Workshops Slack Program Manager YouYou 32
Our results 93%93%job-placement rate + job guarantee Kaeside IwuagwuKaeside Iwuagwu Link for the third party audit jobs report: https://www.thinkful.com/bootcamp-jobs-https://www.thinkful.com/bootcamp-jobs- statsstats Frontend Developer Sierra GreggSierra Gregg Software Engineer JP EarnestJP Earnest Web Developer 33
Take a tour! Talk to me (or email aaron@thinkful.com ) if you're interested Get a tour of the program to see if project-based, online learning is a good fit for you. Discuss the curriculum, mentorship, and how to create your own learning schedule. 34
Thinkful's free resource Talk to one of us and email aaron.lamphere@thinkful.comaaron.lamphere@thinkful.com to learn more Web Development Fundamentals Covers HTML, CSS and JavaScript Unlimited mentor-led Q&A sessions Personal Program Manager to help you set goals and navigate resources Student Slack Channel bit.ly/web-dev-labit.ly/web-dev-la 35

How to Choose a Programming Language

  • 1.
    How to Choosea Programming Language January 2018 WIFI: CrossCamp.us Events Password: None bit.ly/language-la 1
  • 2.
    Instructor Justin Ezor Thinkful LACommunity Manager Wi-Fi: CrossCamp.usEvents Pass: None bit.ly/language-la 2
  • 3.
    About you What's yourname? What brought you here today? What is your programming experience? Wi-Fi: Digital Ignition Pass: Countdown54321 bit.ly/tf-programming-languageWi-Fi: CrossCamp.usEvents Pass: None bit.ly/language-la 3
  • 4.
    About Thinkful Thinkful helpspeople become developers or data scientists through 1-on-1 mentorship and project-based learning Wi-Fi: Digital Ignition Pass: Countdown54321 bit.ly/tf-programming-languageWi-Fi: CrossCamp.usEvents Pass: None bit.ly/language-la 4
  • 5.
    What is programming? Programmingis: writing instructions for a computer to execute problem-solvingproblem-solving Wi-Fi: Digital Ignition Pass: Countdown54321 bit.ly/tf-programming-languageWi-Fi: CrossCamp.usEvents Pass: None bit.ly/language-la 5
  • 6.
    Learning how tocode Learning to code is a process of learning how to solve problems in a structured way and then translate those solutions into instructions a computer can understand and implement. Variables, loops, arrays, functions exist in all languages — stick to one until you understand the core concepts Wi-Fi: Digital Ignition Pass: Countdown54321 bit.ly/tf-programming-languageWi-Fi: CrossCamp.usEvents Pass: None bit.ly/language-la 6
  • 7.
    Pick one thingand master it. Don’t jump around. It will be surprisingly easy to pick up more languages once you understand the fundamentals. Wi-Fi: Digital Ignition Pass: Countdown54321 bit.ly/tf-programming-languageWi-Fi: CrossCamp.usEvents Pass: None bit.ly/language-la 7
  • 8.
    Does the firstlanguage you choose matter? It matters, but not in the way most people think. You should pick the language that makes it easiest for you to learn how to code. Wi-Fi: Digital Ignition Pass: Countdown54321 bit.ly/tf-programming-languageWi-Fi: CrossCamp.usEvents Pass: None bit.ly/language-la 8
  • 9.
    How to picka first language? Objective Popularity Accessibility Job prospects Longevity Wi-Fi: Digital Ignition Pass: Countdown54321 bit.ly/tf-programming-languageWi-Fi: CrossCamp.usEvents Pass: None bit.ly/language-la 9
  • 10.
    Potential objectives Frontend Backend Full-stack Data &Analytics Wi-Fi: Digital Ignition Pass: Countdown54321 bit.ly/tf-programming-languageWi-Fi: CrossCamp.usEvents Pass: None bit.ly/language-la 10
  • 11.
    Front end, Backend, and Full stack Client (sends requests) Frontend Developer Manages what user sees Server (sends response) Backend Developer Manages what app does Wi-Fi: Digital Ignition Pass: Countdown54321 bit.ly/tf-programming-languageWi-Fi: CrossCamp.usEvents Pass: None 11 bit.ly/language-la
  • 12.
    Data/Analytics Data & Databases DatabaseEngineers, Data Scientists, Data Analysts Wi-Fi: Digital Ignition Pass: Countdown54321 bit.ly/tf-programming-languageWi-Fi: CrossCamp.usEvents Pass: None bit.ly/language-la 12
  • 13.
    Benefits of Popularity& Accessibility Has large community of developers, libraries and frameworks => easier to learn & debug Syntax is less complicated and more intuitive for first-time developers Helps you focus on learning how to code rather than get distracted by the nuances of the language Wi-Fi: Digital Ignition Pass: Countdown54321 bit.ly/tf-programming-languageWi-Fi: CrossCamp.usEvents Pass: None bit.ly/language-la 13
  • 14.
    Our recommendations Frontend: Javascript Backend:Javascript/Python Full-stack: Javascript Analytics: Python bit.ly/build-own-website Wi-Fi: Digital Ignition Pass: Countdown54321 bit.ly/tf-programming-languageWi-Fi: CrossCamp.usEvents Pass: None bit.ly/language-la 14
  • 15.
    Javascript Wi-Fi: Digital Ignition Pass:Countdown54321 bit.ly/tf-programming-languageWi-Fi: CrossCamp.usEvents Pass: None bit.ly/language-la 15
  • 16.
    Javascript history Written byBrendan 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: Digital Ignition Pass: Countdown54321 bit.ly/tf-programming-languageWi-Fi: CrossCamp.usEvents Pass: None bit.ly/language-la 16
  • 17.
    Javascript Wi-Fi: Digital Ignition Pass:Countdown54321 bit.ly/tf-programming-languageWi-Fi: CrossCamp.usEvents Pass: None bit.ly/language-la 17
  • 18.
    Why JavaScript? 94% ofall websites in the world use Javascript. Javascript has a monopoly on front end web development. All browsers already have Javascript interpreters included. Node.js allows Javascript to be written on the back end as well. Knowing Javascript means you can create full stack web applications in minutes. 18
  • 19.
    Python Wi-Fi: Digital Ignition Pass:Countdown54321 bit.ly/tf-programming-languageWi-Fi: CrossCamp.usEvents Pass: None bit.ly/language-la 19
  • 20.
    Python history First releasein 1991 Designed to be simpler and more readable Named after “Monty Python’s Flying Circus” Wi-Fi: Digital Ignition Pass: Countdown54321 bit.ly/tf-programming-languageWi-Fi: CrossCamp.usEvents Pass: None bit.ly/language-la 20
  • 21.
    Python today Since 2003,consistently ranked in top 10 most popular languages. As of 2017, was fifth most popular language, currently #3 on Github Has become standard language in computer science curriculums (displacing Java) Wi-Fi: Digital Ignition Pass: Countdown54321 bit.ly/tf-programming-languageWi-Fi: CrossCamp.usEvents Pass: None bit.ly/language-la 21
  • 22.
    Python today Wi-Fi: DigitalIgnition Pass: Countdown54321 bit.ly/tf-programming-languageWi-Fi: CrossCamp.usEvents Pass: None bit.ly/language-la 22
  • 23.
    Python analytics Data scientistsare increasingly using Python over R Python has excellent modules for “big data” analysis and machine learning (NumPy, Pandas, sklearn) Wi-Fi: Digital Ignition Pass: Countdown54321 bit.ly/tf-programming-languageWi-Fi: CrossCamp.usEvents Pass: None bit.ly/language-la 23
  • 24.
    Javascript basics: variables varcars = 20 Initialize variable Name of variable Value of variable Wi-Fi: Digital Ignition Pass: Countdown54321 bit.ly/tf-programming-languageWi-Fi: CrossCamp.usEvents Pass: None 24 bit.ly/language-la
  • 25.
    Python basics: variables cars= 20 Name of variable Value of variable Wi-Fi: Digital Ignition Pass: Countdown54321 bit.ly/tf-programming-languageWi-Fi: CrossCamp.usEvents Pass: None 25 bit.ly/language-la
  • 26.
    Javascript basics: functions functiongreet() { return "Hello world!"; } Initialize function Name of function What the function does Wi-Fi: Digital Ignition Pass: Countdown54321 bit.ly/tf-programming-languageWi-Fi: CrossCamp.usEvents Pass: None 26 bit.ly/language-la
  • 27.
    Python basics: functions defprintme(): print "Hello world!" return Initialize function Name of function What the function does Wi-Fi: Digital Ignition Pass: Countdown54321 bit.ly/tf-programming-languageWi-Fi: CrossCamp.usEvents Pass: None 27 bit.ly/language-la
  • 28.
    That's it! Understanding variablesand functions means you already understand the fundamentals of a programming language! Wi-Fi: Digital Ignition Pass: Countdown54321 bit.ly/tf-programming-languageWi-Fi: CrossCamp.usEvents Pass: None bit.ly/language-la 28
  • 29.
    How can Ilearn? Build stuff + Google Free online resources (e.g. CodeAcademy) Flexible coding bootcamps (e.g Thinkful) Full-time coding bootcamps (e.g. GA, Thinkful) Full degree programs (Georgia Tech) Wi-Fi: Digital Ignition Pass: Countdown54321 bit.ly/tf-programming-languageWi-Fi: CrossCamp.usEvents Pass: None bit.ly/language-la 29
  • 30.
    Thinkful - structureand support More Structure Less Structure More SupportLess Support 30
  • 31.
    325+ mentors325+ mentorswith an average of 10 years of experience10 years of experience in the field 31
  • 32.
    Support 'round theclock Your Mentor Q&A Sessions Career Coach In-person Workshops Slack Program Manager YouYou 32
  • 33.
    Our results 93%93%job-placement rate+ job guarantee Kaeside IwuagwuKaeside Iwuagwu Link for the third party audit jobs report: https://www.thinkful.com/bootcamp-jobs-https://www.thinkful.com/bootcamp-jobs- statsstats Frontend Developer Sierra GreggSierra Gregg Software Engineer JP EarnestJP Earnest Web Developer 33
  • 34.
    Take a tour! Talkto me (or email aaron@thinkful.com ) if you're interested Get a tour of the program to see if project-based, online learning is a good fit for you. Discuss the curriculum, mentorship, and how to create your own learning schedule. 34
  • 35.
    Thinkful's free resource Talkto one of us and email aaron.lamphere@thinkful.comaaron.lamphere@thinkful.com to learn more Web Development Fundamentals Covers HTML, CSS and JavaScript Unlimited mentor-led Q&A sessions Personal Program Manager to help you set goals and navigate resources Student Slack Channel bit.ly/web-dev-labit.ly/web-dev-la 35