SlideShare ist ein Scribd-Unternehmen logo
1 von 20
Liking performance

  SydJS, Oct 17, 2012
https://www.facebook.com/plugins/like.php?href=

Starting: OMG!

   2-3 CSS files
7-8 JavaScript files
Static resource packaging

     1 CSS, 1 sprite, 1 JS
Single CDN hostname

No domain sharding for so few
         resources
Async JS

var js = document.createElement('script');
js.src = 'http://path/to/js';
document.getElementsByTagName('head')[0]
    .appendChild(js);
CSS: inline, then lazy
Serializing hidden content

IE still downloads images in display:
                none
CSS "nubs"
Rounded corners

<!-- IE -->
<b></b>
 <button />
<b></b>
Rewrite

Reducing CSS and JS
All CSS inline

small enough, dynamic
All images inline, reverted :(
Common JS migration
var DOM = require('DOM');
// 

DOM.find('#something .or .other');
// 

module.exports = Like;
Lazy JS

Some inline. Preload some more.
   Execute on user action.
Loading SDK

 <script>
  Async JS
    FIF
Async JS
http://jsbin.com/axibow/10/edit
Thank you!

@stoyanstefanov

Weitere Àhnliche Inhalte

Was ist angesagt?

CodeFest 2014. ĐŸŃƒŃ…Đ°Đ»ŃŒŃĐșĐžĐč И. — ОтзыĐČчоĐČŃ‹Đ” ĐșŃ€ĐŸŃŃĐżĐ»Đ°Ń‚Ń„ĐŸŃ€ĐŒĐ”ĐœĐœŃ‹Đ” ĐČДб-ĐżŃ€ĐžĐ»ĐŸĐ¶Đ”ĐœĐžŃ
CodeFest 2014. ĐŸŃƒŃ…Đ°Đ»ŃŒŃĐșĐžĐč И. — ОтзыĐČчоĐČŃ‹Đ” ĐșŃ€ĐŸŃŃĐżĐ»Đ°Ń‚Ń„ĐŸŃ€ĐŒĐ”ĐœĐœŃ‹Đ” ĐČДб-ĐżŃ€ĐžĐ»ĐŸĐ¶Đ”ĐœĐžŃCodeFest 2014. ĐŸŃƒŃ…Đ°Đ»ŃŒŃĐșĐžĐč И. — ОтзыĐČчоĐČŃ‹Đ” ĐșŃ€ĐŸŃŃĐżĐ»Đ°Ń‚Ń„ĐŸŃ€ĐŒĐ”ĐœĐœŃ‹Đ” ĐČДб-ĐżŃ€ĐžĐ»ĐŸĐ¶Đ”ĐœĐžŃ
CodeFest 2014. ĐŸŃƒŃ…Đ°Đ»ŃŒŃĐșĐžĐč И. — ОтзыĐČчоĐČŃ‹Đ” ĐșŃ€ĐŸŃŃĐżĐ»Đ°Ń‚Ń„ĐŸŃ€ĐŒĐ”ĐœĐœŃ‹Đ” ĐČДб-ĐżŃ€ĐžĐ»ĐŸĐ¶Đ”ĐœĐžŃ
CodeFest
 
Hash Signaling Made Easy
Hash Signaling Made EasyHash Signaling Made Easy
Hash Signaling Made Easy
davidgouldin
 

Was ist angesagt? (20)

HTML5와 였픈소슀 Ʞ반의 Web Components Ʞ술
HTML5와 였픈소슀 Ʞ반의 Web Components Ʞ술HTML5와 였픈소슀 Ʞ반의 Web Components Ʞ술
HTML5와 였픈소슀 Ʞ반의 Web Components Ʞ술
 
ActiveDOM
ActiveDOMActiveDOM
ActiveDOM
 
SocketStream
SocketStreamSocketStream
SocketStream
 
CodeFest 2014. ĐŸŃƒŃ…Đ°Đ»ŃŒŃĐșĐžĐč И. — ОтзыĐČчоĐČŃ‹Đ” ĐșŃ€ĐŸŃŃĐżĐ»Đ°Ń‚Ń„ĐŸŃ€ĐŒĐ”ĐœĐœŃ‹Đ” ĐČДб-ĐżŃ€ĐžĐ»ĐŸĐ¶Đ”ĐœĐžŃ
CodeFest 2014. ĐŸŃƒŃ…Đ°Đ»ŃŒŃĐșĐžĐč И. — ОтзыĐČчоĐČŃ‹Đ” ĐșŃ€ĐŸŃŃĐżĐ»Đ°Ń‚Ń„ĐŸŃ€ĐŒĐ”ĐœĐœŃ‹Đ” ĐČДб-ĐżŃ€ĐžĐ»ĐŸĐ¶Đ”ĐœĐžŃCodeFest 2014. ĐŸŃƒŃ…Đ°Đ»ŃŒŃĐșĐžĐč И. — ОтзыĐČчоĐČŃ‹Đ” ĐșŃ€ĐŸŃŃĐżĐ»Đ°Ń‚Ń„ĐŸŃ€ĐŒĐ”ĐœĐœŃ‹Đ” ĐČДб-ĐżŃ€ĐžĐ»ĐŸĐ¶Đ”ĐœĐžŃ
CodeFest 2014. ĐŸŃƒŃ…Đ°Đ»ŃŒŃĐșĐžĐč И. — ОтзыĐČчоĐČŃ‹Đ” ĐșŃ€ĐŸŃŃĐżĐ»Đ°Ń‚Ń„ĐŸŃ€ĐŒĐ”ĐœĐœŃ‹Đ” ĐČДб-ĐżŃ€ĐžĐ»ĐŸĐ¶Đ”ĐœĐžŃ
 
Scott Jehl - Delivering Responsibly - beyond tellerrand DĂŒsseldorf 2015
Scott Jehl - Delivering Responsibly - beyond tellerrand DĂŒsseldorf 2015Scott Jehl - Delivering Responsibly - beyond tellerrand DĂŒsseldorf 2015
Scott Jehl - Delivering Responsibly - beyond tellerrand DĂŒsseldorf 2015
 
Front end performance optimization
Front end performance optimizationFront end performance optimization
Front end performance optimization
 
Front End Performance
Front End PerformanceFront End Performance
Front End Performance
 
jQuery UI and Plugins
jQuery UI and PluginsjQuery UI and Plugins
jQuery UI and Plugins
 
Front end performance tip
Front end performance tipFront end performance tip
Front end performance tip
 
Hash Signaling Made Easy
Hash Signaling Made EasyHash Signaling Made Easy
Hash Signaling Made Easy
 
State of jQuery June 2013 - Portland
State of jQuery June 2013 - PortlandState of jQuery June 2013 - Portland
State of jQuery June 2013 - Portland
 
Geb presentation
Geb presentationGeb presentation
Geb presentation
 
Web Development for UX Designers
Web Development for UX DesignersWeb Development for UX Designers
Web Development for UX Designers
 
Once upon a time, there were css, js and server-side rendering
Once upon a time, there were css, js and server-side renderingOnce upon a time, there were css, js and server-side rendering
Once upon a time, there were css, js and server-side rendering
 
WordPress as the Backbone(.js)
WordPress as the Backbone(.js)WordPress as the Backbone(.js)
WordPress as the Backbone(.js)
 
Accessibility - A feature you can build
Accessibility - A feature you can buildAccessibility - A feature you can build
Accessibility - A feature you can build
 
jQuery For Beginners - jQuery Conference 2009
jQuery For Beginners - jQuery Conference 2009jQuery For Beginners - jQuery Conference 2009
jQuery For Beginners - jQuery Conference 2009
 
Put a little Backbone in your WordPress
Put a little Backbone in your WordPressPut a little Backbone in your WordPress
Put a little Backbone in your WordPress
 
Bower power
Bower powerBower power
Bower power
 
Better Selenium Tests with Geb - Selenium Conf 2014
Better Selenium Tests with Geb - Selenium Conf 2014Better Selenium Tests with Geb - Selenium Conf 2014
Better Selenium Tests with Geb - Selenium Conf 2014
 

Ähnlich wie Liking performance

High Performance Front-End Development
High Performance Front-End DevelopmentHigh Performance Front-End Development
High Performance Front-End Development
drywallbmb
 
ć»șç«‹ć‰ç«Żé–‹ç™Œćœ˜éšŠ - 2011 äž­èŻé›»äżĄèš“ç·Žæ‰€ç‰ˆ
ć»șç«‹ć‰ç«Żé–‹ç™Œćœ˜éšŠ - 2011 äž­èŻé›»äżĄèš“ç·Žæ‰€ç‰ˆć»șç«‹ć‰ç«Żé–‹ç™Œćœ˜éšŠ - 2011 äž­èŻé›»äżĄèš“ç·Žæ‰€ç‰ˆ
ć»șç«‹ć‰ç«Żé–‹ç™Œćœ˜éšŠ - 2011 äž­èŻé›»äżĄèš“ç·Žæ‰€ç‰ˆ
Joseph Chiang
 
АлДĐșсДĐč ĐšĐČĐ°ĐčĐșĐ° "Bundling: you are doing it wrong"
АлДĐșсДĐč ĐšĐČĐ°ĐčĐșĐ° "Bundling: you are doing it wrong"АлДĐșсДĐč ĐšĐČĐ°ĐčĐșĐ° "Bundling: you are doing it wrong"
АлДĐșсДĐč ĐšĐČĐ°ĐčĐșĐ° "Bundling: you are doing it wrong"
Fwdays
 

Ähnlich wie Liking performance (20)

High Performance Front-End Development
High Performance Front-End DevelopmentHigh Performance Front-End Development
High Performance Front-End Development
 
Front-End Performance Optimization in WordPress
Front-End Performance Optimization in WordPressFront-End Performance Optimization in WordPress
Front-End Performance Optimization in WordPress
 
Please Don't Touch the Slow Parts V3
Please Don't Touch the Slow Parts V3Please Don't Touch the Slow Parts V3
Please Don't Touch the Slow Parts V3
 
JavaScript Performance (at SFJS)
JavaScript Performance (at SFJS)JavaScript Performance (at SFJS)
JavaScript Performance (at SFJS)
 
JavaScript Perfomance
JavaScript PerfomanceJavaScript Perfomance
JavaScript Perfomance
 
Please dont touch-3.5
Please dont touch-3.5Please dont touch-3.5
Please dont touch-3.5
 
OptimizaciĂłn JavaScript y CSS
OptimizaciĂłn JavaScript y CSSOptimizaciĂłn JavaScript y CSS
OptimizaciĂłn JavaScript y CSS
 
Nuxt.JS Introdruction
Nuxt.JS IntrodructionNuxt.JS Introdruction
Nuxt.JS Introdruction
 
Styling components with JavaScript
Styling components with JavaScriptStyling components with JavaScript
Styling components with JavaScript
 
TDC2017 | Florianopolis - Trilha DevOps How we figured out we had a SRE team ...
TDC2017 | Florianopolis - Trilha DevOps How we figured out we had a SRE team ...TDC2017 | Florianopolis - Trilha DevOps How we figured out we had a SRE team ...
TDC2017 | Florianopolis - Trilha DevOps How we figured out we had a SRE team ...
 
CSS in React
CSS in ReactCSS in React
CSS in React
 
ć»șç«‹ć‰ç«Żé–‹ç™Œćœ˜éšŠ - 2011 äž­èŻé›»äżĄèš“ç·Žæ‰€ç‰ˆ
ć»șç«‹ć‰ç«Żé–‹ç™Œćœ˜éšŠ - 2011 äž­èŻé›»äżĄèš“ç·Žæ‰€ç‰ˆć»șç«‹ć‰ç«Żé–‹ç™Œćœ˜éšŠ - 2011 äž­èŻé›»äżĄèš“ç·Žæ‰€ç‰ˆ
ć»șç«‹ć‰ç«Żé–‹ç™Œćœ˜éšŠ - 2011 äž­èŻé›»äżĄèš“ç·Žæ‰€ç‰ˆ
 
АлДĐșсДĐč ĐšĐČĐ°ĐčĐșĐ° "Bundling: you are doing it wrong"
АлДĐșсДĐč ĐšĐČĐ°ĐčĐșĐ° "Bundling: you are doing it wrong"АлДĐșсДĐč ĐšĐČĐ°ĐčĐșĐ° "Bundling: you are doing it wrong"
АлДĐșсДĐč ĐšĐČĐ°ĐčĐșĐ° "Bundling: you are doing it wrong"
 
Building Performance - ein Frontend-Build-Prozess fĂŒr Java mit Maven
Building Performance - ein Frontend-Build-Prozess fĂŒr Java mit MavenBuilding Performance - ein Frontend-Build-Prozess fĂŒr Java mit Maven
Building Performance - ein Frontend-Build-Prozess fĂŒr Java mit Maven
 
The new static resources framework
The new static resources frameworkThe new static resources framework
The new static resources framework
 
Webpack
Webpack Webpack
Webpack
 
Please dont touch-3.6-jsday
Please dont touch-3.6-jsdayPlease dont touch-3.6-jsday
Please dont touch-3.6-jsday
 
Webpack packing it all
Webpack packing it allWebpack packing it all
Webpack packing it all
 
Packing it all: JavaScript module bundling from 2000 to now
Packing it all: JavaScript module bundling from 2000 to nowPacking it all: JavaScript module bundling from 2000 to now
Packing it all: JavaScript module bundling from 2000 to now
 
Web Performance Part 4 "Client-side performance"
Web Performance Part 4  "Client-side performance"Web Performance Part 4  "Client-side performance"
Web Performance Part 4 "Client-side performance"
 

Mehr von Stoyan Stefanov

JavaScript shell scripting
JavaScript shell scriptingJavaScript shell scripting
JavaScript shell scripting
Stoyan Stefanov
 
JavaScript for PHP developers
JavaScript for PHP developersJavaScript for PHP developers
JavaScript for PHP developers
Stoyan Stefanov
 

Mehr von Stoyan Stefanov (20)

Reactive JavaScript
Reactive JavaScriptReactive JavaScript
Reactive JavaScript
 
YSlow hacking
YSlow hackingYSlow hacking
YSlow hacking
 
Social Button BFFs
Social Button BFFsSocial Button BFFs
Social Button BFFs
 
JavaScript ĐœĐ°ĐČсяĐșŃŠĐŽĐ”
JavaScript ĐœĐ°ĐČсяĐșŃŠĐŽĐ”JavaScript ĐœĐ°ĐČсяĐșŃŠĐŽĐ”
JavaScript ĐœĐ°ĐČсяĐșŃŠĐŽĐ”
 
JavaScript is everywhere
JavaScript is everywhereJavaScript is everywhere
JavaScript is everywhere
 
JavaScript shell scripting
JavaScript shell scriptingJavaScript shell scripting
JavaScript shell scripting
 
JavaScript for PHP developers
JavaScript for PHP developersJavaScript for PHP developers
JavaScript for PHP developers
 
WPO @ PubCon 2010
WPO @ PubCon 2010WPO @ PubCon 2010
WPO @ PubCon 2010
 
Progressive Downloads and Rendering
Progressive Downloads and RenderingProgressive Downloads and Rendering
Progressive Downloads and Rendering
 
Performance patterns
Performance patternsPerformance patterns
Performance patterns
 
Voices that matter: High Performance Web Sites
Voices that matter: High Performance Web SitesVoices that matter: High Performance Web Sites
Voices that matter: High Performance Web Sites
 
Psychology of performance
Psychology of performancePsychology of performance
Psychology of performance
 
3-in-1 YSlow
3-in-1 YSlow3-in-1 YSlow
3-in-1 YSlow
 
CSS and image optimization
CSS and image optimizationCSS and image optimization
CSS and image optimization
 
High-performance DOM scripting
High-performance DOM scriptingHigh-performance DOM scripting
High-performance DOM scripting
 
The business of performance
The business of performanceThe business of performance
The business of performance
 
JavaScript Patterns
JavaScript PatternsJavaScript Patterns
JavaScript Patterns
 
Ignite Velocity: Image Weight Loss Clinic
Ignite Velocity: Image Weight Loss ClinicIgnite Velocity: Image Weight Loss Clinic
Ignite Velocity: Image Weight Loss Clinic
 
Don't make me wait! or Building High-Performance Web Applications
Don't make me wait! or Building High-Performance Web ApplicationsDon't make me wait! or Building High-Performance Web Applications
Don't make me wait! or Building High-Performance Web Applications
 
High Performance Kick Ass Web Apps (JavaScript edition)
High Performance Kick Ass Web Apps (JavaScript edition)High Performance Kick Ass Web Apps (JavaScript edition)
High Performance Kick Ass Web Apps (JavaScript edition)
 

KĂŒrzlich hochgeladen

+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎+971_581248768%)**%*]'#abortion pills for sale in dubai@
 
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
 

KĂŒrzlich hochgeladen (20)

A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
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
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu SubbuApidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
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
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
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
 
A Beginners Guide to Building a RAG App Using Open Source Milvus
A Beginners Guide to Building a RAG App Using Open Source MilvusA Beginners Guide to Building a RAG App Using Open Source Milvus
A Beginners Guide to Building a RAG App Using Open Source Milvus
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
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
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
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
 
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
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 

Liking performance