SlideShare a Scribd company logo
1 of 25
Download to read offline
BY @RAFAEL_CASUSO
RISE & FALL


OFTHE


FRONTEND


DEVELOPER
@RAFAEL_CASUSO
CEO @SNOWSTORM


CTO @THEPOWERMBA
• +12 years Developing Software Products


• +8 years Leading Engineering Teams


• Technologist. Passion. Innovation. Agile.


• Writer @Medium. Speaker @Slideshare.


• Founder of @VueJSMadrid @BotDevelopmentMadrid
Co-Founder of @AgileDeliveryES
RISE & FALL OF THE FRONTEND DEVELOPER
@ValueApp_io
FRONTEND


ORIGINS
THE BEGINNING (1996-2013)
RISE & FALL OF THE FRONTEND DEVELOPER
• First version of HTML by Tim Berners-Lee in
late 1991


• First version of CSS by Håkon Wium Lie in late
1994


• First version of Mocha/LiveScript created in 10
days by Brendan Eich. Eventually renamed to
JavaScript.
RISE & FALL OF THE FRONTEND DEVELOPER
SOME


HISTORY
WEB DEVELOPMENT FOUNDATION
• Create Interactive User Interfaces was required
to go through Web 1.0 to Web 2.0


• Most browsers were not compliant with the
standardized CSS speci
fi
cations


• Browser wars impacted directly in Web
Development standards, being too slow to
catch the business needs


• CSS & JS Frameworks started to appear
RISE & FALL OF THE FRONTEND DEVELOPER
WHATWAS


FRONTEND?
WHAT PROBLEMS DID IT FACE
RISE & FALL OF THE FRONTEND DEVELOPER
FRONTEND EVOLUTION (1995-2019)
RISE & FALL OF THE FRONTEND DEVELOPER
WEB FRAMEWORKS HISTORY
- BRENDAN EICH (CREATOR OF JAVASCRIPT)
IF THE WEB CAN BE EVOLVED TO
INCLUDE THE MISSING APIS AND HAVE
BETTER PERFORMANCE,
DEVELOPERS WON'T NEED TO GO
BEYOND THE WEB.
RISE & FALL OF THE FRONTEND DEVELOPER
• HTML markup dedicated learner


• CSS crazyness victim. CSS was underestimated


• Browser Wars and Web APIs slowness survivor


• Vanilla JavaScript and JavaScript patterns for
sophisticated pros


• JQuery was the way to go, a problem and
solution at the same time
RISE & FALL OF THE FRONTEND DEVELOPER
WHATWAS A


FRONTEND DEVELOPER?
THE BEGINNING OF THE ROLE
THE


SINGLE-PAGE


APPLICATIONS


ERA
INTO THE HYBRIS AGE (2014-2018)
RISE & FALL OF THE FRONTEND DEVELOPER
• Average Size of an SPA was 4MBs in 2018


• SEO is a Severe Issue since it depends on HTML and
don’t
fi
nd JavaScript-generated content reliable


• Usage Statistics Analysis is more dif
fi
cult to track


• Low/Poor/Mobile connectivity issues


• Data Inconsistency


• Too much Logic in the Client (even Security issues)


• Overwhelming Complexity in Bundling and Tooling
RISE & FALL OF THE FRONTEND DEVELOPER
WHICH ARE


THE PROBLEMS?
HEAVY BURDEN
WEB PAGE LOADTIMELINE
RISE & FALL OF THE FRONTEND DEVELOPER
MPAVS SPA
RISE & FALL OF THE FRONTEND DEVELOPER
• Framework Expert


• CSS Preprocessor lover


• Only works on Modern Browsers


• Vanilla JavaScript standard user


• Blinded by the lights
RISE & FALL OF THE FRONTEND DEVELOPER
WHATWAS A


FRONTEND DEVELOPER?
THE PEAK OF THE ROLE
THE


HYBRID


WEB
APPLICATION
WHERE WE ARE NOW (2019-PRESENT)
RISE & FALL OF THE FRONTEND DEVELOPER
• Simpli
fi
cation of Developer Experience


• SEO Capabilites and Reliable URLs


• Better First Contentful Paint (FCP)


• Better Integration between Backend and Frontend Processes


• Improved Data Consistency


• Enhanced Analytics Support


• Balance Logic weight between Backend and Frontend


• Reducing Complexity in Bundling, Tooling and Serving
RISE & FALL OF THE FRONTEND DEVELOPER
CURRENT


CHALLENGES
GETTING BACK TO THE PAST
MOSTUSED JAVASCRIPTFLAVOURS
THE CORE OF AGILE *SOURCE: STATE OF JAVASCRIPT 2020
MOSTUSED FRONTED FRAMEWORKS
THE CORE OF AGILE *SOURCE: STATE OF JAVASCRIPT 2020
MOSTUSED BACKEND JS FRAMEWORKS
THE CORE OF AGILE *SOURCE: STATE OF JAVASCRIPT 2020
SERVER-SIDE RENDERING
RISE & FALL OF THE FRONTEND DEVELOPER
• Server-side sends a fully rendered page to the client; the
client's JavaScript bundle takes over which then allows the
client app to hydrate 


• Hydration refers to the client-side process during which
client takes over the static HTML sent by the server and turns
it into dynamic DOM that can react to client-side data
changes


• Requires a Node server that can be controlled completely
through middlewares


• Conditional code to differentiate Server and Client execution


• During Server execution logic can access Request/Response
and Database directly
• Server-side Rendering Steps:


Step 1: Browser to Server


When a browser sends the initial request, it will hit the Node.js internal
server. Server will generate the HTML and send it back to the browser
with results from executed functions and access to data


Step 2: Server to Browser


The browser receives the rendered page from the server with the
generated HTML. The content is displayed and the hydration kicks in,
making it reactive. After this process, the page is interactive.


Step 3: Browser to Browser


Navigating between pages is done on the client side so you don't hit the
server again unless you hard refresh the browser.
STATIC SITE GENERATION
RISE & FALL OF THE FRONTEND DEVELOPER
• With static site generation you can render your application during the
build phase and deploy it to any static hosting services such as Netlify,
GitHub pages, Vercel etc. This means that no server is needed in order
to deploy your application.


• Huge trend on Static Site Generation including NextJS, NuxtJS, Gatsby,
Gridsome, VuePress, Hugo, etc


• Best SEO and Performance capabilities
INCREMENTALSTATIC REGENERATION
RISE & FALL OF THE FRONTEND DEVELOPER
• Incremental Static Regeneration (ISR) enables you to use static-generation on a per-page basis, without
needing to rebuild the entire site. With ISR, you can retain the bene
fi
ts of static while scaling to millions
of pages.


• When a request is made to a page that was pre-rendered at build time, it will initially show the cached
page.


• Any requests to the page after the initial request and before N seconds are also cached and
instantaneous.


• After the N-second window, the next request will still show the cached (stale) page


• Server triggers a regeneration of the page in the background.


• Once the page has been successfully generated, server will invalidate the cache and show the updated
page. If the background regeneration fails, the old page will stay unaltered.


•
• Unstoppable Evolution towards the Fullstack


• Urgent UpSkilling and ReSkilling is needed to
work effectively on both Frontend and Backend


• Mindset and Processes Changes are required


• User Experience is #1 Priority


• Developer Experience is #2 Priority


• Let’s stay Humble and Hungry of Knowledge
RISE & FALL OF THE FRONTEND DEVELOPER
FRONTEND OR


FULLSTACK DEVELOPER?
THE MATURITY OF THE ROLE
THE


FUTURE
WHERE ARE WE HEADING
RISE & FALL OF THE FRONTEND DEVELOPER
BY @RAFAEL_CASUSO
THANK


YOU

More Related Content

What's hot

Single page applications
Single page applicationsSingle page applications
Single page applicationsDiego Cardozo
 
Making Single Page Applications (SPA) faster
Making Single Page Applications (SPA) faster Making Single Page Applications (SPA) faster
Making Single Page Applications (SPA) faster Boris Livshutz
 
WordPress as a Service
WordPress as a ServiceWordPress as a Service
WordPress as a ServiceAndrew Bauer
 
The Future of-the CMS (Twin Cities DrupalCamp 2015)
The Future of-the CMS (Twin Cities DrupalCamp 2015)The Future of-the CMS (Twin Cities DrupalCamp 2015)
The Future of-the CMS (Twin Cities DrupalCamp 2015)Todd Ross Nienkerk
 
Introduction To Single Page Application
Introduction To Single Page ApplicationIntroduction To Single Page Application
Introduction To Single Page ApplicationKMS Technology
 
Web Development Presentation
Web Development PresentationWeb Development Presentation
Web Development PresentationTurnToTech
 
PWA basics for developers
PWA basics for developersPWA basics for developers
PWA basics for developersFilip Rakowski
 
Decoupled Architecture and WordPress
Decoupled Architecture and WordPressDecoupled Architecture and WordPress
Decoupled Architecture and WordPressPantheon
 
A Simpler Web App Architecture (jDays 2016)
A Simpler Web App Architecture (jDays 2016)A Simpler Web App Architecture (jDays 2016)
A Simpler Web App Architecture (jDays 2016)Gustaf Nilsson Kotte
 
Empowering Your Clients and Be an Advocate for Yourself
Empowering Your Clients and Be an Advocate for YourselfEmpowering Your Clients and Be an Advocate for Yourself
Empowering Your Clients and Be an Advocate for YourselfLinchpin
 
We come in peace hybrid development with web assembly - Maayan Hanin
We come in peace hybrid development with web assembly - Maayan HaninWe come in peace hybrid development with web assembly - Maayan Hanin
We come in peace hybrid development with web assembly - Maayan HaninCodeValue
 
Web Application Development Fundamentals
Web Application Development FundamentalsWeb Application Development Fundamentals
Web Application Development FundamentalsMohammed Makhlouf
 
Website development & it's trends
Website development & it's trendsWebsite development & it's trends
Website development & it's trendsSunCart Store
 
Teaching Cloud to the Programmers of Tomorrow
Teaching Cloud to the Programmers of TomorrowTeaching Cloud to the Programmers of Tomorrow
Teaching Cloud to the Programmers of TomorrowMike Crabb
 
Building Single-page Web Applications with AngularJS @ TechCamp Sai Gon 2014
Building Single-page Web Applications with AngularJS @ TechCamp Sai Gon 2014Building Single-page Web Applications with AngularJS @ TechCamp Sai Gon 2014
Building Single-page Web Applications with AngularJS @ TechCamp Sai Gon 2014Duy Lâm
 
Advancing Content Management for Omni-Channel User Experiences by Roland Bene...
Advancing Content Management for Omni-Channel User Experiences by Roland Bene...Advancing Content Management for Omni-Channel User Experiences by Roland Bene...
Advancing Content Management for Omni-Channel User Experiences by Roland Bene...eZ Systems
 

What's hot (20)

Single Page Application
Single Page ApplicationSingle Page Application
Single Page Application
 
Single page applications
Single page applicationsSingle page applications
Single page applications
 
Making Single Page Applications (SPA) faster
Making Single Page Applications (SPA) faster Making Single Page Applications (SPA) faster
Making Single Page Applications (SPA) faster
 
WordPress as a Service
WordPress as a ServiceWordPress as a Service
WordPress as a Service
 
The Future of-the CMS (Twin Cities DrupalCamp 2015)
The Future of-the CMS (Twin Cities DrupalCamp 2015)The Future of-the CMS (Twin Cities DrupalCamp 2015)
The Future of-the CMS (Twin Cities DrupalCamp 2015)
 
Introduction To Single Page Application
Introduction To Single Page ApplicationIntroduction To Single Page Application
Introduction To Single Page Application
 
Web Development Presentation
Web Development PresentationWeb Development Presentation
Web Development Presentation
 
PWA basics for developers
PWA basics for developersPWA basics for developers
PWA basics for developers
 
Decoupled Architecture and WordPress
Decoupled Architecture and WordPressDecoupled Architecture and WordPress
Decoupled Architecture and WordPress
 
Welcome to the World of WordPress
Welcome to the World of WordPressWelcome to the World of WordPress
Welcome to the World of WordPress
 
A Simpler Web App Architecture (jDays 2016)
A Simpler Web App Architecture (jDays 2016)A Simpler Web App Architecture (jDays 2016)
A Simpler Web App Architecture (jDays 2016)
 
Empowering Your Clients and Be an Advocate for Yourself
Empowering Your Clients and Be an Advocate for YourselfEmpowering Your Clients and Be an Advocate for Yourself
Empowering Your Clients and Be an Advocate for Yourself
 
We come in peace hybrid development with web assembly - Maayan Hanin
We come in peace hybrid development with web assembly - Maayan HaninWe come in peace hybrid development with web assembly - Maayan Hanin
We come in peace hybrid development with web assembly - Maayan Hanin
 
Web Application Development Fundamentals
Web Application Development FundamentalsWeb Application Development Fundamentals
Web Application Development Fundamentals
 
Website development & it's trends
Website development & it's trendsWebsite development & it's trends
Website development & it's trends
 
A Gentle Introduction to Blazor
A Gentle Introduction to BlazorA Gentle Introduction to Blazor
A Gentle Introduction to Blazor
 
6 web development trends to follow in 2021
6 web development trends to follow in 20216 web development trends to follow in 2021
6 web development trends to follow in 2021
 
Teaching Cloud to the Programmers of Tomorrow
Teaching Cloud to the Programmers of TomorrowTeaching Cloud to the Programmers of Tomorrow
Teaching Cloud to the Programmers of Tomorrow
 
Building Single-page Web Applications with AngularJS @ TechCamp Sai Gon 2014
Building Single-page Web Applications with AngularJS @ TechCamp Sai Gon 2014Building Single-page Web Applications with AngularJS @ TechCamp Sai Gon 2014
Building Single-page Web Applications with AngularJS @ TechCamp Sai Gon 2014
 
Advancing Content Management for Omni-Channel User Experiences by Roland Bene...
Advancing Content Management for Omni-Channel User Experiences by Roland Bene...Advancing Content Management for Omni-Channel User Experiences by Roland Bene...
Advancing Content Management for Omni-Channel User Experiences by Roland Bene...
 

Similar to Rise and Fall of the Frontend Developer

A night at the spa
A night at the spaA night at the spa
A night at the spaChris Love
 
A Day Building Fast, Responsive, Extensible Single Page Applications
A Day Building Fast, Responsive, Extensible Single Page ApplicationsA Day Building Fast, Responsive, Extensible Single Page Applications
A Day Building Fast, Responsive, Extensible Single Page ApplicationsChris Love
 
Full Stack Web Developer (MERN STACK Developer.pptx
Full Stack Web Developer (MERN STACK Developer.pptxFull Stack Web Developer (MERN STACK Developer.pptx
Full Stack Web Developer (MERN STACK Developer.pptxRamudgarYadav
 
A year with progressive web apps! #webinale
A year with progressive web apps! #webinaleA year with progressive web apps! #webinale
A year with progressive web apps! #webinaleAntonio Peric-Mazar
 
Single Page Applications: Your Browser is the OS!
Single Page Applications: Your Browser is the OS!Single Page Applications: Your Browser is the OS!
Single Page Applications: Your Browser is the OS!Jeremy Likness
 
Embrace the front-end revolution - Sánchez-Mariscal
Embrace the front-end revolution - Sánchez-MariscalEmbrace the front-end revolution - Sánchez-Mariscal
Embrace the front-end revolution - Sánchez-MariscalCodemotion
 
Develop a vanilla.js spa you and your customers will love
Develop a vanilla.js spa you and your customers will loveDevelop a vanilla.js spa you and your customers will love
Develop a vanilla.js spa you and your customers will loveChris Love
 
The Delight and Difficulties of Universal Java Script with React
The Delight and Difficulties of Universal Java Script with ReactThe Delight and Difficulties of Universal Java Script with React
The Delight and Difficulties of Universal Java Script with ReactNew Relic
 
How to be Successful with Responsive Sites (Koombea & NGINX) - English
How to be Successful with Responsive Sites (Koombea & NGINX) - EnglishHow to be Successful with Responsive Sites (Koombea & NGINX) - English
How to be Successful with Responsive Sites (Koombea & NGINX) - EnglishKoombea
 
Performance and Scalability Art of Isomorphic React Applications
Performance and Scalability Art of Isomorphic React ApplicationsPerformance and Scalability Art of Isomorphic React Applications
Performance and Scalability Art of Isomorphic React ApplicationsDenis Izmaylov
 
Web Development Trends That Boom In 2024.pdf
Web Development Trends That Boom In 2024.pdfWeb Development Trends That Boom In 2024.pdf
Web Development Trends That Boom In 2024.pdfSolviosTechnology
 
Isomorphic web application
Isomorphic web applicationIsomorphic web application
Isomorphic web applicationOliver N
 
Isomorphic React Applications: Performance And Scalability
Isomorphic React Applications: Performance And ScalabilityIsomorphic React Applications: Performance And Scalability
Isomorphic React Applications: Performance And ScalabilityDenis Izmaylov
 
A year with progressive web apps! #DevConMU
A year with progressive web apps! #DevConMUA year with progressive web apps! #DevConMU
A year with progressive web apps! #DevConMUAntonio Peric-Mazar
 

Similar to Rise and Fall of the Frontend Developer (20)

A night at the spa
A night at the spaA night at the spa
A night at the spa
 
A Day Building Fast, Responsive, Extensible Single Page Applications
A Day Building Fast, Responsive, Extensible Single Page ApplicationsA Day Building Fast, Responsive, Extensible Single Page Applications
A Day Building Fast, Responsive, Extensible Single Page Applications
 
Single page App
Single page AppSingle page App
Single page App
 
Full Stack Web Developer (MERN STACK Developer.pptx
Full Stack Web Developer (MERN STACK Developer.pptxFull Stack Web Developer (MERN STACK Developer.pptx
Full Stack Web Developer (MERN STACK Developer.pptx
 
A year with progressive web apps! #webinale
A year with progressive web apps! #webinaleA year with progressive web apps! #webinale
A year with progressive web apps! #webinale
 
Progressive Web Apps
Progressive Web AppsProgressive Web Apps
Progressive Web Apps
 
Single Page Applications: Your Browser is the OS!
Single Page Applications: Your Browser is the OS!Single Page Applications: Your Browser is the OS!
Single Page Applications: Your Browser is the OS!
 
Transforming the web into a real application platform
Transforming the web into a real application platformTransforming the web into a real application platform
Transforming the web into a real application platform
 
Embrace the front-end revolution - Sánchez-Mariscal
Embrace the front-end revolution - Sánchez-MariscalEmbrace the front-end revolution - Sánchez-Mariscal
Embrace the front-end revolution - Sánchez-Mariscal
 
Embrace the frontend revolution
Embrace the frontend revolutionEmbrace the frontend revolution
Embrace the frontend revolution
 
Develop a vanilla.js spa you and your customers will love
Develop a vanilla.js spa you and your customers will loveDevelop a vanilla.js spa you and your customers will love
Develop a vanilla.js spa you and your customers will love
 
The Delight and Difficulties of Universal Java Script with React
The Delight and Difficulties of Universal Java Script with ReactThe Delight and Difficulties of Universal Java Script with React
The Delight and Difficulties of Universal Java Script with React
 
How to be Successful with Responsive Sites (Koombea & NGINX) - English
How to be Successful with Responsive Sites (Koombea & NGINX) - EnglishHow to be Successful with Responsive Sites (Koombea & NGINX) - English
How to be Successful with Responsive Sites (Koombea & NGINX) - English
 
Javascript 01 (js)
Javascript 01 (js)Javascript 01 (js)
Javascript 01 (js)
 
Benefits of developing single page web applications using angular js
Benefits of developing single page web applications using angular jsBenefits of developing single page web applications using angular js
Benefits of developing single page web applications using angular js
 
Performance and Scalability Art of Isomorphic React Applications
Performance and Scalability Art of Isomorphic React ApplicationsPerformance and Scalability Art of Isomorphic React Applications
Performance and Scalability Art of Isomorphic React Applications
 
Web Development Trends That Boom In 2024.pdf
Web Development Trends That Boom In 2024.pdfWeb Development Trends That Boom In 2024.pdf
Web Development Trends That Boom In 2024.pdf
 
Isomorphic web application
Isomorphic web applicationIsomorphic web application
Isomorphic web application
 
Isomorphic React Applications: Performance And Scalability
Isomorphic React Applications: Performance And ScalabilityIsomorphic React Applications: Performance And Scalability
Isomorphic React Applications: Performance And Scalability
 
A year with progressive web apps! #DevConMU
A year with progressive web apps! #DevConMUA year with progressive web apps! #DevConMU
A year with progressive web apps! #DevConMU
 

More from Rafael Casuso Romate

Nuxt Avanzado (de Scaffolding a MVP)
Nuxt Avanzado (de Scaffolding a MVP)Nuxt Avanzado (de Scaffolding a MVP)
Nuxt Avanzado (de Scaffolding a MVP)Rafael Casuso Romate
 
Solid NodeJS with TypeScript, Jest & NestJS
Solid NodeJS with TypeScript, Jest & NestJSSolid NodeJS with TypeScript, Jest & NestJS
Solid NodeJS with TypeScript, Jest & NestJSRafael Casuso Romate
 
Introduction to Weex: Mobile Apps with VueJS
Introduction to Weex: Mobile Apps with VueJSIntroduction to Weex: Mobile Apps with VueJS
Introduction to Weex: Mobile Apps with VueJSRafael Casuso Romate
 
Component-Oriented Progressive Web Applications with VueJS
Component-Oriented Progressive Web Applications with VueJSComponent-Oriented Progressive Web Applications with VueJS
Component-Oriented Progressive Web Applications with VueJSRafael Casuso Romate
 
JavaScript Editions ES7, ES8 and ES9 vs V8
JavaScript Editions ES7, ES8 and ES9 vs V8JavaScript Editions ES7, ES8 and ES9 vs V8
JavaScript Editions ES7, ES8 and ES9 vs V8Rafael Casuso Romate
 
Microservices Architecture For Conversational Intelligence Platform
Microservices Architecture For Conversational Intelligence PlatformMicroservices Architecture For Conversational Intelligence Platform
Microservices Architecture For Conversational Intelligence PlatformRafael Casuso Romate
 

More from Rafael Casuso Romate (12)

Nuxt Avanzado (de Scaffolding a MVP)
Nuxt Avanzado (de Scaffolding a MVP)Nuxt Avanzado (de Scaffolding a MVP)
Nuxt Avanzado (de Scaffolding a MVP)
 
The Core of Agile
The Core of AgileThe Core of Agile
The Core of Agile
 
Solid NodeJS with TypeScript, Jest & NestJS
Solid NodeJS with TypeScript, Jest & NestJSSolid NodeJS with TypeScript, Jest & NestJS
Solid NodeJS with TypeScript, Jest & NestJS
 
The Voice Interface Revolution
The Voice Interface RevolutionThe Voice Interface Revolution
The Voice Interface Revolution
 
Introduction to Weex: Mobile Apps with VueJS
Introduction to Weex: Mobile Apps with VueJSIntroduction to Weex: Mobile Apps with VueJS
Introduction to Weex: Mobile Apps with VueJS
 
Component-Oriented Progressive Web Applications with VueJS
Component-Oriented Progressive Web Applications with VueJSComponent-Oriented Progressive Web Applications with VueJS
Component-Oriented Progressive Web Applications with VueJS
 
Intro to VueJS Workshop
Intro to VueJS WorkshopIntro to VueJS Workshop
Intro to VueJS Workshop
 
Google Assistant Revolution
Google Assistant RevolutionGoogle Assistant Revolution
Google Assistant Revolution
 
VueJS in Action
VueJS in ActionVueJS in Action
VueJS in Action
 
JavaScript Editions ES7, ES8 and ES9 vs V8
JavaScript Editions ES7, ES8 and ES9 vs V8JavaScript Editions ES7, ES8 and ES9 vs V8
JavaScript Editions ES7, ES8 and ES9 vs V8
 
VueJS: The Simple Revolution
VueJS: The Simple RevolutionVueJS: The Simple Revolution
VueJS: The Simple Revolution
 
Microservices Architecture For Conversational Intelligence Platform
Microservices Architecture For Conversational Intelligence PlatformMicroservices Architecture For Conversational Intelligence Platform
Microservices Architecture For Conversational Intelligence Platform
 

Recently uploaded

Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clashcharlottematthew16
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxNavinnSomaal
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxhariprasad279825
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024The Digital Insurer
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr LapshynFwdays
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationSafe Software
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsMiki Katsuragi
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 

Recently uploaded (20)

Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clash
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
 
Hot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort Service
Hot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort ServiceHot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort Service
Hot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort Service
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering Tips
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 

Rise and Fall of the Frontend Developer

  • 1. BY @RAFAEL_CASUSO RISE & FALL 
 OFTHE 
 FRONTEND DEVELOPER
  • 2. @RAFAEL_CASUSO CEO @SNOWSTORM CTO @THEPOWERMBA • +12 years Developing Software Products • +8 years Leading Engineering Teams • Technologist. Passion. Innovation. Agile. • Writer @Medium. Speaker @Slideshare. • Founder of @VueJSMadrid @BotDevelopmentMadrid Co-Founder of @AgileDeliveryES RISE & FALL OF THE FRONTEND DEVELOPER @ValueApp_io
  • 3. FRONTEND ORIGINS THE BEGINNING (1996-2013) RISE & FALL OF THE FRONTEND DEVELOPER
  • 4. • First version of HTML by Tim Berners-Lee in late 1991 • First version of CSS by Håkon Wium Lie in late 1994 • First version of Mocha/LiveScript created in 10 days by Brendan Eich. Eventually renamed to JavaScript. RISE & FALL OF THE FRONTEND DEVELOPER SOME HISTORY WEB DEVELOPMENT FOUNDATION
  • 5. • Create Interactive User Interfaces was required to go through Web 1.0 to Web 2.0 • Most browsers were not compliant with the standardized CSS speci fi cations • Browser wars impacted directly in Web Development standards, being too slow to catch the business needs • CSS & JS Frameworks started to appear RISE & FALL OF THE FRONTEND DEVELOPER WHATWAS FRONTEND? WHAT PROBLEMS DID IT FACE
  • 6. RISE & FALL OF THE FRONTEND DEVELOPER FRONTEND EVOLUTION (1995-2019)
  • 7. RISE & FALL OF THE FRONTEND DEVELOPER WEB FRAMEWORKS HISTORY
  • 8. - BRENDAN EICH (CREATOR OF JAVASCRIPT) IF THE WEB CAN BE EVOLVED TO INCLUDE THE MISSING APIS AND HAVE BETTER PERFORMANCE, DEVELOPERS WON'T NEED TO GO BEYOND THE WEB. RISE & FALL OF THE FRONTEND DEVELOPER
  • 9. • HTML markup dedicated learner • CSS crazyness victim. CSS was underestimated • Browser Wars and Web APIs slowness survivor • Vanilla JavaScript and JavaScript patterns for sophisticated pros • JQuery was the way to go, a problem and solution at the same time RISE & FALL OF THE FRONTEND DEVELOPER WHATWAS A FRONTEND DEVELOPER? THE BEGINNING OF THE ROLE
  • 10. THE SINGLE-PAGE 
 APPLICATIONS 
 ERA INTO THE HYBRIS AGE (2014-2018) RISE & FALL OF THE FRONTEND DEVELOPER
  • 11. • Average Size of an SPA was 4MBs in 2018 • SEO is a Severe Issue since it depends on HTML and don’t fi nd JavaScript-generated content reliable • Usage Statistics Analysis is more dif fi cult to track • Low/Poor/Mobile connectivity issues • Data Inconsistency • Too much Logic in the Client (even Security issues) • Overwhelming Complexity in Bundling and Tooling RISE & FALL OF THE FRONTEND DEVELOPER WHICH ARE THE PROBLEMS? HEAVY BURDEN
  • 12. WEB PAGE LOADTIMELINE RISE & FALL OF THE FRONTEND DEVELOPER
  • 13. MPAVS SPA RISE & FALL OF THE FRONTEND DEVELOPER
  • 14. • Framework Expert • CSS Preprocessor lover • Only works on Modern Browsers • Vanilla JavaScript standard user • Blinded by the lights RISE & FALL OF THE FRONTEND DEVELOPER WHATWAS A FRONTEND DEVELOPER? THE PEAK OF THE ROLE
  • 15. THE HYBRID WEB APPLICATION WHERE WE ARE NOW (2019-PRESENT) RISE & FALL OF THE FRONTEND DEVELOPER
  • 16. • Simpli fi cation of Developer Experience • SEO Capabilites and Reliable URLs • Better First Contentful Paint (FCP) • Better Integration between Backend and Frontend Processes • Improved Data Consistency • Enhanced Analytics Support • Balance Logic weight between Backend and Frontend • Reducing Complexity in Bundling, Tooling and Serving RISE & FALL OF THE FRONTEND DEVELOPER CURRENT CHALLENGES GETTING BACK TO THE PAST
  • 17. MOSTUSED JAVASCRIPTFLAVOURS THE CORE OF AGILE *SOURCE: STATE OF JAVASCRIPT 2020
  • 18. MOSTUSED FRONTED FRAMEWORKS THE CORE OF AGILE *SOURCE: STATE OF JAVASCRIPT 2020
  • 19. MOSTUSED BACKEND JS FRAMEWORKS THE CORE OF AGILE *SOURCE: STATE OF JAVASCRIPT 2020
  • 20. SERVER-SIDE RENDERING RISE & FALL OF THE FRONTEND DEVELOPER • Server-side sends a fully rendered page to the client; the client's JavaScript bundle takes over which then allows the client app to hydrate  • Hydration refers to the client-side process during which client takes over the static HTML sent by the server and turns it into dynamic DOM that can react to client-side data changes • Requires a Node server that can be controlled completely through middlewares • Conditional code to differentiate Server and Client execution • During Server execution logic can access Request/Response and Database directly • Server-side Rendering Steps: Step 1: Browser to Server When a browser sends the initial request, it will hit the Node.js internal server. Server will generate the HTML and send it back to the browser with results from executed functions and access to data Step 2: Server to Browser The browser receives the rendered page from the server with the generated HTML. The content is displayed and the hydration kicks in, making it reactive. After this process, the page is interactive. Step 3: Browser to Browser Navigating between pages is done on the client side so you don't hit the server again unless you hard refresh the browser.
  • 21. STATIC SITE GENERATION RISE & FALL OF THE FRONTEND DEVELOPER • With static site generation you can render your application during the build phase and deploy it to any static hosting services such as Netlify, GitHub pages, Vercel etc. This means that no server is needed in order to deploy your application. • Huge trend on Static Site Generation including NextJS, NuxtJS, Gatsby, Gridsome, VuePress, Hugo, etc • Best SEO and Performance capabilities
  • 22. INCREMENTALSTATIC REGENERATION RISE & FALL OF THE FRONTEND DEVELOPER • Incremental Static Regeneration (ISR) enables you to use static-generation on a per-page basis, without needing to rebuild the entire site. With ISR, you can retain the bene fi ts of static while scaling to millions of pages. • When a request is made to a page that was pre-rendered at build time, it will initially show the cached page. • Any requests to the page after the initial request and before N seconds are also cached and instantaneous. • After the N-second window, the next request will still show the cached (stale) page • Server triggers a regeneration of the page in the background. • Once the page has been successfully generated, server will invalidate the cache and show the updated page. If the background regeneration fails, the old page will stay unaltered. •
  • 23. • Unstoppable Evolution towards the Fullstack • Urgent UpSkilling and ReSkilling is needed to work effectively on both Frontend and Backend • Mindset and Processes Changes are required • User Experience is #1 Priority • Developer Experience is #2 Priority • Let’s stay Humble and Hungry of Knowledge RISE & FALL OF THE FRONTEND DEVELOPER FRONTEND OR FULLSTACK DEVELOPER? THE MATURITY OF THE ROLE
  • 24. THE FUTURE WHERE ARE WE HEADING RISE & FALL OF THE FRONTEND DEVELOPER