SlideShare a Scribd company logo
1 of 21
Download to read offline
The Frontend Landscape Explained
and
4 Advanced Frontend Frameworks
Dave Paola
Christian Schlensker
About Dave & Christian
● Dave -
○ 15 years of experience, previously: Kontagent, Djangy
● Christian
○ 10 years of experience, previously: Pinchit, TAG
Agenda
● Explain Buzz Words
● The evolution of Front End languages from Web 1.0 to Today
● What is a Framework?
● Compare 4 Advanced Frontend frameworks
● Bloc’s Frontend syllabus
Buzz Words Explained
One of the biggest challenges for beginners is understanding
how things fit together:
● HTML - the wood frame of the house
● CSS - paint, bricks, carpet
● JavaScript - the electrical system, plumbing, and the
electrician and plumber going around adding and fixing
things
● MVC - Model / View / Controller - a way of thinking about
complex web apps.
● AJAX - getting more information from the server in the
background without re-loading the page
● jQuery - a “library” of pre-written JavaScript code. Now
ubiquitous on the web.
Things evolve, they don’t change overnight
Let’s look at the evolution of Front End
Languages
Web 1.0
● Hypertext Markup Language (HTML)
● Static
● Pages
● 1990s and before
● Released, but not widespread:
○ Javascript
○ CSS
● Netscape and IE
Web 2.0
● Cascading Style Sheets (CSS)
○ released in 96, not widespread until later
● Dynamic HTML (DHTML)
○ Use Javascript and CSS to manipulate HTML elements
● Rudimentary interactivity
○ Drag and Drop
○ Slow animations
● Examples
○ Amazon
○ Wikipedia
○ YouTube
Web 2.0
● Browsers evolve + diversify
○ Opera (1994)
○ IE (1995)
○ Safari (2001)
○ Firefox (2002)
○ Chrome (2008)
● All different!
circa 2003:
jQuery (2006)
● Pre-built “library” of JavaScript code
● JavaScript cross-browser less painful
● Helps a LOT, but not 100%
● The basis for many current-generation frameworks
Today
● Javascript a “mature language”
○ Tools
○ Best practices
○ communities
○ open source
● CSS3
● HTML5
● Desktop & Mobile Browsers
● Examples: Modern Gmail, Google
Docs,
What is a framework?
● Frontend Frameworks are being embraced as the way to build rich “desktop-like
apps for the web”
● Problems with Web 2.0 frontend development:
○ Hard to collaborate
○ Hard to organize
○ Code becomes ludicrously complex & messy
○ Difficult to reason about
● Front End Frameworks act as a scaffold for a bigger, more stable house
○ A collection of JavaScript code built by the community
○ Standardized structure across many web applications
○ Added stability
○ Documentation
What are the dominant frameworks
BackboneJS
● Open Source from the start
● Model-View-Controller
● Bring desktop-app-like organization to
mobile
● Pro: easy to get started quickly, very
lightweight
● Con: spotty for sophisticated web
apps, does not give you everything you
need
● Hulu, Airbnb, Pinterest, Pandora
EmberJS
● Open source from the start
● Model-View-Controller
● Data binding integration
● Pro: holistic, sophisticated data
management
● Con: “the ember way” doesn’t suit all
apps, mainly for single page
applications
● Companies: Square, Groupon,
LivingSocial, Zendesk
ReactJS
● Open sourced by facebook
● Primarily used for binding data to UI elements
○ “The V in MVC”
● Pro: Great for building rich UIs
● Con: requires lots of 3rd party code integration (not holistic)
AngularJS
● Open source from the beginning
● Google hired the contributors to
continue working on Angular
● “Components”
○ Small, separated functionality
○ App becomes greater than sum
of the parts
○ Reusable
● Pro: Testable, vibrant community
● Con: poor documentation, difficult
vocabulary, weird
● Companies: YouTube, Wired.com
Advice for Beginners
We chose AngularJS as the Advanced Framework we wanted to teach
beginners
● AngularJS has one of the more vibrant communities
● Has a more-shallow learning curve than others
● Once you have the depth of understanding in one advanced
framework, it’s much easier to pick up another one
Bloc Frontend Syllabus
● Phase I (1st third of course)
○ Set up your Dev Environment, command line, github, Heroku
○ Set up back end using NodeJS starter-app
○ Intro to HTML, CSS, Javascript
○ Intermediate languages: jQuery, Sass
○ Launch your first web-app: your own version of Spotify
○ Advanced Front End Frameworks: Intro to AngularJS
○ Re-build your Spotify app using AngularJS
● Phase II (two thirds of course)
○ Choose & build 4 web apps from a menu of options
○ Each project builds upon what you’ve learned and introduces new concepts
○ Goal is to build many real apps “notches in your belt”
○ Capstone: Design, Build, Test, and Launch your own App
Q&A
FAQs
What’s your refund policy?
If Bloc isn't the right fit for you after all, you can un-enroll at any time. Bloc is backed by a Real Results Guarantee that’s real simple: if you aren’t getting
value, we don’t get paid. Un-enroll in the first week for a full refund. Un-enroll later, and get a pro-rated refund based on the number of days you've spent in
the program.
Do you offer flexible payment options?
Yup. You can pay your tuition up-front, or pay in 3 or 6 monthly installments. The tuition is the same no matter which plan you choose.
What if I want to switch mentors?
No problem. Mentors consistently get stellar ratings from their students, and it's very rare that a student asks to switch mentors. That said, say the word and
we'll make it happen.
What is the time commitment?
We designed Bloc to be a structured, immersive program that still fits into your life. No need to relocate or quit your job. For the 12-Week Program, we
expect at least 30 hours a week. For the 24-Week Program, we expect 15 hours a week. We understand learning to become a developer or designer is a
huge commitment, and that this may require some late nights and weekends. Rest assured, we’ll be there to support you the entire way through. Our
flexible online approach means you decide when and where works best for you.
What if I fall sick or can't keep up?
This is a big commitment, and we expect you to put in the necessary hours. That said, we know that life happens. When it does, reach out to Karen and we'll
figure out how to help you together, and make sure you still get the most out of your time at Bloc.
In the case of extreme circumstances, you can freeze your apprenticeship temporarily. You should let Karen know immediately if you need this option. We’ll
save your progress, and when you are ready you’ll pick-up where you left off. We can’t guarantee you’ll be able to continue with the same mentor, but we
want to make this option available to you if need it.

More Related Content

What's hot

How to Win Friends and Influence Standards Bodies
How to Win Friends and Influence Standards BodiesHow to Win Friends and Influence Standards Bodies
How to Win Friends and Influence Standards Bodies
Domenic Denicola
 
The Final Frontier
The Final FrontierThe Final Frontier
The Final Frontier
Domenic Denicola
 
Web development meetingup
Web development meetingupWeb development meetingup
Web development meetingup
PiTechnologies
 

What's hot (20)

[DevDay2018] Javascript on the Rise - By Trang Tran, Co-founder & Manager at ...
[DevDay2018] Javascript on the Rise - By Trang Tran, Co-founder & Manager at ...[DevDay2018] Javascript on the Rise - By Trang Tran, Co-founder & Manager at ...
[DevDay2018] Javascript on the Rise - By Trang Tran, Co-founder & Manager at ...
 
Front-end Web Dev (HK) Info Session
Front-end Web Dev (HK) Info SessionFront-end Web Dev (HK) Info Session
Front-end Web Dev (HK) Info Session
 
How to Win Friends and Influence Standards Bodies
How to Win Friends and Influence Standards BodiesHow to Win Friends and Influence Standards Bodies
How to Win Friends and Influence Standards Bodies
 
Web Development: The Big Picture
Web Development: The Big PictureWeb Development: The Big Picture
Web Development: The Big Picture
 
Full-Stack Development
Full-Stack DevelopmentFull-Stack Development
Full-Stack Development
 
Zero cost serverless Real time web app
Zero cost serverless Real time web appZero cost serverless Real time web app
Zero cost serverless Real time web app
 
Frontend Development vs Backend Development | Detailed Comparison
Frontend Development vs Backend Development | Detailed ComparisonFrontend Development vs Backend Development | Detailed Comparison
Frontend Development vs Backend Development | Detailed Comparison
 
Real World Windows 8 Apps in JavaScript
Real World Windows 8 Apps in JavaScriptReal World Windows 8 Apps in JavaScript
Real World Windows 8 Apps in JavaScript
 
The Extensible Web
The Extensible WebThe Extensible Web
The Extensible Web
 
The Final Frontier
The Final FrontierThe Final Frontier
The Final Frontier
 
Web development meetingup
Web development meetingupWeb development meetingup
Web development meetingup
 
Lean frontend development
Lean frontend developmentLean frontend development
Lean frontend development
 
Intro js-la-jan-4
Intro js-la-jan-4Intro js-la-jan-4
Intro js-la-jan-4
 
Web components and Package managers
Web components and Package managersWeb components and Package managers
Web components and Package managers
 
Ppt full stack developer
Ppt full stack developerPpt full stack developer
Ppt full stack developer
 
Learn WordPress - Live Session 1 Slides
Learn WordPress - Live Session 1 SlidesLearn WordPress - Live Session 1 Slides
Learn WordPress - Live Session 1 Slides
 
Top front end website development tools and frameworks
Top front end website development tools and frameworksTop front end website development tools and frameworks
Top front end website development tools and frameworks
 
The Full Stack Web Development
The Full Stack Web DevelopmentThe Full Stack Web Development
The Full Stack Web Development
 
Progressive Web Apps – the return of the web? Goto Berlin 2016
Progressive Web Apps – the return of the web? Goto Berlin 2016Progressive Web Apps – the return of the web? Goto Berlin 2016
Progressive Web Apps – the return of the web? Goto Berlin 2016
 
Fullstack JavaScript Developer - E-Degree
Fullstack JavaScript Developer - E-DegreeFullstack JavaScript Developer - E-Degree
Fullstack JavaScript Developer - E-Degree
 

Viewers also liked

Top Java Script Frameworks For Mobile App Development
Top Java Script Frameworks For Mobile App DevelopmentTop Java Script Frameworks For Mobile App Development
Top Java Script Frameworks For Mobile App Development
ValueCoders
 
Frontend Frameworks and Drupal
Frontend Frameworks and DrupalFrontend Frameworks and Drupal
Frontend Frameworks and Drupal
Nicolas Borda
 
Cim creative innovation management- 3.2014
Cim creative innovation management- 3.2014Cim creative innovation management- 3.2014
Cim creative innovation management- 3.2014
Hadas Tadmor
 
Wrangling Large Scale Frontend Web Applications
Wrangling Large Scale Frontend Web ApplicationsWrangling Large Scale Frontend Web Applications
Wrangling Large Scale Frontend Web Applications
Ryan Roemer
 

Viewers also liked (20)

Top Java Script Frameworks For Mobile App Development
Top Java Script Frameworks For Mobile App DevelopmentTop Java Script Frameworks For Mobile App Development
Top Java Script Frameworks For Mobile App Development
 
Frontend Frameworks and Drupal
Frontend Frameworks and DrupalFrontend Frameworks and Drupal
Frontend Frameworks and Drupal
 
A Dynamic Analysis Framework for Front-end JavaScript
A Dynamic Analysis Framework for Front-end JavaScriptA Dynamic Analysis Framework for Front-end JavaScript
A Dynamic Analysis Framework for Front-end JavaScript
 
How to choose a framework
How to choose a frameworkHow to choose a framework
How to choose a framework
 
Cim creative innovation management- 3.2014
Cim creative innovation management- 3.2014Cim creative innovation management- 3.2014
Cim creative innovation management- 3.2014
 
Webinar: Front End Web Development - Trendy Web Designs Using HTML5
Webinar: Front End Web Development - Trendy Web Designs Using HTML5Webinar: Front End Web Development - Trendy Web Designs Using HTML5
Webinar: Front End Web Development - Trendy Web Designs Using HTML5
 
Frontend SPOF
Frontend SPOFFrontend SPOF
Frontend SPOF
 
User eXperience & Front End Development
User eXperience & Front End DevelopmentUser eXperience & Front End Development
User eXperience & Front End Development
 
Frontend automation and stability
Frontend automation and stabilityFrontend automation and stability
Frontend automation and stability
 
Front End Tooling and Performance - Codeaholics HK 2015
Front End Tooling and Performance - Codeaholics HK 2015Front End Tooling and Performance - Codeaholics HK 2015
Front End Tooling and Performance - Codeaholics HK 2015
 
Front end Tips Tricks & Tools
Front end Tips Tricks & ToolsFront end Tips Tricks & Tools
Front end Tips Tricks & Tools
 
Sinau Bareng Frontend Web Development @ DiLo Malang
Sinau Bareng Frontend Web Development @ DiLo MalangSinau Bareng Frontend Web Development @ DiLo Malang
Sinau Bareng Frontend Web Development @ DiLo Malang
 
Architecting your Frontend
Architecting your FrontendArchitecting your Frontend
Architecting your Frontend
 
Grunt js for the Enterprise Vol.1: Frontend Performance with Phantomas
Grunt js for the Enterprise Vol.1: Frontend Performance with PhantomasGrunt js for the Enterprise Vol.1: Frontend Performance with Phantomas
Grunt js for the Enterprise Vol.1: Frontend Performance with Phantomas
 
建立前端开发团队 (Front-end Development Environment)
建立前端开发团队 (Front-end Development Environment)建立前端开发团队 (Front-end Development Environment)
建立前端开发团队 (Front-end Development Environment)
 
Wrangling Large Scale Frontend Web Applications
Wrangling Large Scale Frontend Web ApplicationsWrangling Large Scale Frontend Web Applications
Wrangling Large Scale Frontend Web Applications
 
A modern front end development workflow for Magnolia at Atlassian
A modern front end development workflow for Magnolia at AtlassianA modern front end development workflow for Magnolia at Atlassian
A modern front end development workflow for Magnolia at Atlassian
 
Frontend technologies
Frontend technologiesFrontend technologies
Frontend technologies
 
How to Build Front-End Web Apps that Scale - FutureJS
How to Build Front-End Web Apps that Scale - FutureJSHow to Build Front-End Web Apps that Scale - FutureJS
How to Build Front-End Web Apps that Scale - FutureJS
 
W3 conf hill-html5-security-realities
W3 conf hill-html5-security-realitiesW3 conf hill-html5-security-realities
W3 conf hill-html5-security-realities
 

Similar to The Frontend Developer Landscape Explained and the Rise of Advanced Frontend Frameworks

Similar to The Frontend Developer Landscape Explained and the Rise of Advanced Frontend Frameworks (20)

Bloc's Full Stack Web Development Info Session, April 2015
Bloc's Full Stack Web Development Info Session, April 2015Bloc's Full Stack Web Development Info Session, April 2015
Bloc's Full Stack Web Development Info Session, April 2015
 
Bloc Online Bootcamp: UX Design Immersive
Bloc Online Bootcamp: UX Design ImmersiveBloc Online Bootcamp: UX Design Immersive
Bloc Online Bootcamp: UX Design Immersive
 
Why Drupal Is Not a Word Processor
Why Drupal Is Not a Word ProcessorWhy Drupal Is Not a Word Processor
Why Drupal Is Not a Word Processor
 
apidays New York 2023 - How to Make Your Docs Stand Apart, Ash Arnwine, Nylas
apidays New York 2023 - How to Make Your Docs Stand Apart, Ash Arnwine, Nylasapidays New York 2023 - How to Make Your Docs Stand Apart, Ash Arnwine, Nylas
apidays New York 2023 - How to Make Your Docs Stand Apart, Ash Arnwine, Nylas
 
Juline & andy info session
Juline & andy info sessionJuline & andy info session
Juline & andy info session
 
Juline & andy info session
Juline & andy info sessionJuline & andy info session
Juline & andy info session
 
Tf bawa
Tf bawaTf bawa
Tf bawa
 
Tf bawa
Tf bawaTf bawa
Tf bawa
 
Introducing Drupal and Drupal.Org Community in PUP QC, PH
Introducing Drupal and Drupal.Org Community in PUP QC, PHIntroducing Drupal and Drupal.Org Community in PUP QC, PH
Introducing Drupal and Drupal.Org Community in PUP QC, PH
 
Gsoc2012 checklist
Gsoc2012 checklistGsoc2012 checklist
Gsoc2012 checklist
 
DSC MESCOE - 2020 - InfoSession
DSC MESCOE - 2020 - InfoSessionDSC MESCOE - 2020 - InfoSession
DSC MESCOE - 2020 - InfoSession
 
We Need to Talk: How Communication Helps Code
We Need to Talk: How Communication Helps CodeWe Need to Talk: How Communication Helps Code
We Need to Talk: How Communication Helps Code
 
Large drupal site builds a workshop for sxsw interactive - march 17, 2015
Large drupal site builds   a workshop for sxsw interactive - march 17, 2015Large drupal site builds   a workshop for sxsw interactive - march 17, 2015
Large drupal site builds a workshop for sxsw interactive - march 17, 2015
 
Super lazy side projects - Hamik Mukelyan
Super lazy side projects - Hamik MukelyanSuper lazy side projects - Hamik Mukelyan
Super lazy side projects - Hamik Mukelyan
 
Tenants for Going at DevSecOps Speed - LASCON 2023
Tenants for Going at DevSecOps Speed - LASCON 2023Tenants for Going at DevSecOps Speed - LASCON 2023
Tenants for Going at DevSecOps Speed - LASCON 2023
 
En Route To Industry: Tips on Transferring from College into Industry
En Route To Industry: Tips on Transferring from College into IndustryEn Route To Industry: Tips on Transferring from College into Industry
En Route To Industry: Tips on Transferring from College into Industry
 
I have a Great Idea for a Drupal Module! Now What? - DrupalDevDays 2023
I have a Great Idea for a Drupal Module! Now What? - DrupalDevDays 2023I have a Great Idea for a Drupal Module! Now What? - DrupalDevDays 2023
I have a Great Idea for a Drupal Module! Now What? - DrupalDevDays 2023
 
Kentico Cloud Best Practices
Kentico Cloud Best PracticesKentico Cloud Best Practices
Kentico Cloud Best Practices
 
How long does it take to become a web developer (1)
How long does it take to  become a web developer  (1)How long does it take to  become a web developer  (1)
How long does it take to become a web developer (1)
 
Software Engineering Primer
Software Engineering PrimerSoftware Engineering Primer
Software Engineering Primer
 

Recently uploaded

Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 

Recently uploaded (20)

Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
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
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
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, ...
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
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
 
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...
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
HTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesHTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation Strategies
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
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
 

The Frontend Developer Landscape Explained and the Rise of Advanced Frontend Frameworks

  • 1. The Frontend Landscape Explained and 4 Advanced Frontend Frameworks Dave Paola Christian Schlensker
  • 2. About Dave & Christian ● Dave - ○ 15 years of experience, previously: Kontagent, Djangy ● Christian ○ 10 years of experience, previously: Pinchit, TAG
  • 3. Agenda ● Explain Buzz Words ● The evolution of Front End languages from Web 1.0 to Today ● What is a Framework? ● Compare 4 Advanced Frontend frameworks ● Bloc’s Frontend syllabus
  • 4. Buzz Words Explained One of the biggest challenges for beginners is understanding how things fit together: ● HTML - the wood frame of the house ● CSS - paint, bricks, carpet ● JavaScript - the electrical system, plumbing, and the electrician and plumber going around adding and fixing things ● MVC - Model / View / Controller - a way of thinking about complex web apps. ● AJAX - getting more information from the server in the background without re-loading the page ● jQuery - a “library” of pre-written JavaScript code. Now ubiquitous on the web.
  • 5. Things evolve, they don’t change overnight Let’s look at the evolution of Front End Languages
  • 6. Web 1.0 ● Hypertext Markup Language (HTML) ● Static ● Pages ● 1990s and before ● Released, but not widespread: ○ Javascript ○ CSS ● Netscape and IE
  • 7. Web 2.0 ● Cascading Style Sheets (CSS) ○ released in 96, not widespread until later ● Dynamic HTML (DHTML) ○ Use Javascript and CSS to manipulate HTML elements ● Rudimentary interactivity ○ Drag and Drop ○ Slow animations ● Examples ○ Amazon ○ Wikipedia ○ YouTube
  • 8. Web 2.0 ● Browsers evolve + diversify ○ Opera (1994) ○ IE (1995) ○ Safari (2001) ○ Firefox (2002) ○ Chrome (2008) ● All different!
  • 10. jQuery (2006) ● Pre-built “library” of JavaScript code ● JavaScript cross-browser less painful ● Helps a LOT, but not 100% ● The basis for many current-generation frameworks
  • 11. Today ● Javascript a “mature language” ○ Tools ○ Best practices ○ communities ○ open source ● CSS3 ● HTML5 ● Desktop & Mobile Browsers ● Examples: Modern Gmail, Google Docs,
  • 12. What is a framework? ● Frontend Frameworks are being embraced as the way to build rich “desktop-like apps for the web” ● Problems with Web 2.0 frontend development: ○ Hard to collaborate ○ Hard to organize ○ Code becomes ludicrously complex & messy ○ Difficult to reason about ● Front End Frameworks act as a scaffold for a bigger, more stable house ○ A collection of JavaScript code built by the community ○ Standardized structure across many web applications ○ Added stability ○ Documentation
  • 13. What are the dominant frameworks
  • 14. BackboneJS ● Open Source from the start ● Model-View-Controller ● Bring desktop-app-like organization to mobile ● Pro: easy to get started quickly, very lightweight ● Con: spotty for sophisticated web apps, does not give you everything you need ● Hulu, Airbnb, Pinterest, Pandora
  • 15. EmberJS ● Open source from the start ● Model-View-Controller ● Data binding integration ● Pro: holistic, sophisticated data management ● Con: “the ember way” doesn’t suit all apps, mainly for single page applications ● Companies: Square, Groupon, LivingSocial, Zendesk
  • 16. ReactJS ● Open sourced by facebook ● Primarily used for binding data to UI elements ○ “The V in MVC” ● Pro: Great for building rich UIs ● Con: requires lots of 3rd party code integration (not holistic)
  • 17. AngularJS ● Open source from the beginning ● Google hired the contributors to continue working on Angular ● “Components” ○ Small, separated functionality ○ App becomes greater than sum of the parts ○ Reusable ● Pro: Testable, vibrant community ● Con: poor documentation, difficult vocabulary, weird ● Companies: YouTube, Wired.com
  • 18. Advice for Beginners We chose AngularJS as the Advanced Framework we wanted to teach beginners ● AngularJS has one of the more vibrant communities ● Has a more-shallow learning curve than others ● Once you have the depth of understanding in one advanced framework, it’s much easier to pick up another one
  • 19. Bloc Frontend Syllabus ● Phase I (1st third of course) ○ Set up your Dev Environment, command line, github, Heroku ○ Set up back end using NodeJS starter-app ○ Intro to HTML, CSS, Javascript ○ Intermediate languages: jQuery, Sass ○ Launch your first web-app: your own version of Spotify ○ Advanced Front End Frameworks: Intro to AngularJS ○ Re-build your Spotify app using AngularJS ● Phase II (two thirds of course) ○ Choose & build 4 web apps from a menu of options ○ Each project builds upon what you’ve learned and introduces new concepts ○ Goal is to build many real apps “notches in your belt” ○ Capstone: Design, Build, Test, and Launch your own App
  • 20. Q&A
  • 21. FAQs What’s your refund policy? If Bloc isn't the right fit for you after all, you can un-enroll at any time. Bloc is backed by a Real Results Guarantee that’s real simple: if you aren’t getting value, we don’t get paid. Un-enroll in the first week for a full refund. Un-enroll later, and get a pro-rated refund based on the number of days you've spent in the program. Do you offer flexible payment options? Yup. You can pay your tuition up-front, or pay in 3 or 6 monthly installments. The tuition is the same no matter which plan you choose. What if I want to switch mentors? No problem. Mentors consistently get stellar ratings from their students, and it's very rare that a student asks to switch mentors. That said, say the word and we'll make it happen. What is the time commitment? We designed Bloc to be a structured, immersive program that still fits into your life. No need to relocate or quit your job. For the 12-Week Program, we expect at least 30 hours a week. For the 24-Week Program, we expect 15 hours a week. We understand learning to become a developer or designer is a huge commitment, and that this may require some late nights and weekends. Rest assured, we’ll be there to support you the entire way through. Our flexible online approach means you decide when and where works best for you. What if I fall sick or can't keep up? This is a big commitment, and we expect you to put in the necessary hours. That said, we know that life happens. When it does, reach out to Karen and we'll figure out how to help you together, and make sure you still get the most out of your time at Bloc. In the case of extreme circumstances, you can freeze your apprenticeship temporarily. You should let Karen know immediately if you need this option. We’ll save your progress, and when you are ready you’ll pick-up where you left off. We can’t guarantee you’ll be able to continue with the same mentor, but we want to make this option available to you if need it.