SlideShare una empresa de Scribd logo
1 de 69
Descargar para leer sin conexión
Does This Theme
Make My Website
Look Fat?
0 kB
250 kB
500 kB
750 kB
1,000 kB
Images Scripts Flash HTML Stylesheets Other
total: 1585 kB
Average Bytes Per Page
0 kB
400 kB
800 kB
1,200 kB
1,600 kB
2010 2011 2012 2013
125% increase
it’s getting worse
and responsive web design
doesn’t make it better
8
MOBILE ONLY?
US: 25%
NEVER/INFREQUENT
DESKTOP USE
UK: 22%
NEVER/INFREQUENT
DESKTOP USE
Asia: 50+%
DON’T USE INTERNET ON PC
Africa: 50+%
DON’T USE INTERNET ON PC
India: 49%
NEVER/INFREQUENT
DESKTOP USE
US: 50+%
MORE MOBILE THAN PC
BY 2015
Source: http://www.lukew.com/ff/entry.asp?1391
KENYA: M-PESA
17% of GDP
54% of adults
What’s going on
behind the scenes
Browser &
Device
The
Internet
how the Internet works
(basically)
End-User
Network
Webhost
Network
Web
server
Cell Radio
DNS
device ≠ connection speed
Constraints
Browser/Device
• Connections per hostname
• Max connections
• Cache size
• Processor, underpowered to run JS, CSS
• Cell Radio
Network & Internet
• File sizes
• 3G/4G Slowness
• Latency, TCP slow start, congestion control
• DNS
Servers
• Proximity to request
• Load & capacity
• Configuration
Application
• Wordpress core
• Theme files
• Plugin quality (not quantity!)
Database
• Proximity to server
• Load & capacity
• Configuration
Browser &
Device
The
Internet
how the Internet works
(basically)
End-User
Network
Webhost
Network
Web
server
Cell Radio
DNS
What
does all this have to do
with Wordpress?
Get ready for your
weigh in
Spring Cleaning
• Remove plugins and themes you don’t use
• Delete unattached images in Media Library
• Optimize the database
• Clean out old revisions
• Remove references to inactive plugins or
themes
• Plugin: WP Clean Up
Let’s do some
tests
• YSlow
• Google PageSpeed
• Webpagetest
• GTmetrix combines both YSlow & PageSpeed
• Plugin: GTmetrix for Wordpress
• others at siteloadtest.com
Front-end
• Plugins:
• Databases: Debug Bar, Debug Objects for
Databases
• Themes: Theme Check
• Plugins: Plugin Performance Profiler (!)
Wordpress
• Are most site visitors new or returning?
• International or domestic?
• Using mobile browsers or desktop browsers?
• Which browser versions are they using?
Analytics
• DOM Node Count (via Chrome Developer
Tools Timeline)
• CSS Stress Test bookmarklet
• CSS Audits
• Firefox add-ons - Dust-Me Selectors & CSS Usage
• Chrome Developer Tools Audits
• Unused-CSS.com
Advanced Testing
Now what?
let’s target some common
issues
Scenario 1:
Large Images
Optimize
• Before upload:
• ImageOptim (Mac), Jpegmini (Windows), Trimage
(Linux)
• TinyPNG, PNGGauntlet
• After upload:
• WP Smush.it (!)
• EWWW Image Optimizer
• WP Minify
Scenario 2:
Lots of images
CSS Sprites
• combine image files
• wearekiss.com/spritepad
• css.spritegen.com
• www.spritecow.com
• spritegen.website-performance.org
• csssprites.com
Replace
• Webfonts
• free: Google Fonts, FontSquirrel
• paid: FontSpring, Myfonts, Typekit
• Icon Webfonts
• Font Awesome
• ShiftIcons
• IcoMoon
Scenario 3:
Loads of assets
Poor Man’s CDN
• Add a subdomain to your site
• Change where your media files point
(Settings > Uploading Files)
• upload path to “/home/www/public_html/assets”
• upload_url_path to “http://assets.domain.com”
• Plugin: Upload Url and Path Enabler
Poor Man’s CDN caveats
• Only works when you have www subdomain
• Make sure it’s cookie-free
• wp-config: define("COOKIE_DOMAIN",
'www.domain.com');
• May also need to change Google Analytics
Scenario 4:
Huge Webfonts
Reduce your fontset
• Googlefonts give you the full set of
characters, including multi-lingual
• FontSquirrel Generator
Scenario 4:
JS in header
Move it to the bottom
<?php
//First remove all JS loaded in the head section
remove_action('wp_head', 'wp_print_scripts');
remove_action('wp_head', 'wp_print_head_scripts', 9);
remove_action('wp_head', 'wp_enqueue_scripts', 1);
//Load JS at the footer of the template
add_action('wp_footer', 'wp_print_scripts', 1);
add_action('wp_footer', 'wp_enqueue_scripts', 1);
add_action('wp_footer', 'wp_print_head_scripts', 1);?>
?>
Scenario 5:
Lots of CSS & JS
Dequeue what you don’t
function swk_remove_scripts() {
! wp_dequeue_script('custom_js');
! wp_dequeue_script('chirp_js');
! wp_dequeue_script('fitvid_js');
! wp_deregister_script('chirp_js');
! wp_deregister_script('fitvid_js');
}
add_action('wp_enqueue_scripts', 'swk_remove_scripts', 500);
function swk_remove_styles() {
! wp_deregister_style('media_queries_css');
! wp_deregister_style('google_merriweather');
}
Selectively enable
add_action('wp_print_scripts', 'deregister_cf7_javascript',
100);
function deregister_cf7_javascript() {
    if (!is_page(array(8,10))) {
        wp_deregister_script('contact-form-7');
        wp_dequeue_script('contact-form-7');
    }
}
add_action('wp_print_styles', 'deregister_cf7_styles', 100);
function deregister_cf7_styles() {
    if (!is_page(array(8,10))) {
        wp_deregister_style( 'contact-form-7' );
        wp_dequeue_style( 'contact-form-7' );
    }
}
Scenario 6:
Slow mobile
rendering
Understand browsers
• cache size is smaller, meaning it can't store as
many files in memory
• maximum size of file that can be cached is
also smaller
• fewer parallel connections
• cell radio turns on and off
browserscope.org
Understand devices
• Processor constraints
• Use CSS3 elements sparingly, particularly drop-
shadow
• DOM rendering issues
and yes…
Add Caching,
Minify & Gzip
any questions?
for Happier Visitors and Stickier User Experiences
Adam Dunford
adam@steepleashton.com

Más contenido relacionado

La actualidad más candente

Joomla Extreme Performance
Joomla Extreme PerformanceJoomla Extreme Performance
Joomla Extreme PerformanceMitch Pirtle
 
The Power of a Video Library - WordCamp Raleigh
The  Power of a Video Library - WordCamp RaleighThe  Power of a Video Library - WordCamp Raleigh
The Power of a Video Library - WordCamp RaleighLauren Jeffcoat
 
Getting started with WordPress development
Getting started with WordPress developmentGetting started with WordPress development
Getting started with WordPress developmentSteve Mortiboy
 
Coding with jetpack
Coding with jetpackCoding with jetpack
Coding with jetpackRich Collier
 
Cache is keeping you from reaching the full potential as a developer (word ca...
Cache is keeping you from reaching the full potential as a developer (word ca...Cache is keeping you from reaching the full potential as a developer (word ca...
Cache is keeping you from reaching the full potential as a developer (word ca...Thomas Audunhus
 
DrupalCon Barcelona 2015
DrupalCon Barcelona 2015DrupalCon Barcelona 2015
DrupalCon Barcelona 2015Daniel Kanchev
 
Optimizing Your WordPress Site: Why speed matters, and how to get there
Optimizing Your WordPress Site: Why speed matters, and how to get thereOptimizing Your WordPress Site: Why speed matters, and how to get there
Optimizing Your WordPress Site: Why speed matters, and how to get thereStephen Bell
 
Measuring Web Performance
Measuring Web Performance Measuring Web Performance
Measuring Web Performance Dave Olsen
 
Wordcamp 2010 presentation
Wordcamp 2010 presentationWordcamp 2010 presentation
Wordcamp 2010 presentationJonny Allbut
 
Make Local WordPress Development Simple
Make Local WordPress Development SimpleMake Local WordPress Development Simple
Make Local WordPress Development SimpleWP Engine
 
Standards.next: HTML - Are you mything the point?
Standards.next: HTML - Are you mything the point?Standards.next: HTML - Are you mything the point?
Standards.next: HTML - Are you mything the point?brucelawson
 
Measuring Web Performance (HighEdWeb FL Edition)
Measuring Web Performance (HighEdWeb FL Edition)Measuring Web Performance (HighEdWeb FL Edition)
Measuring Web Performance (HighEdWeb FL Edition)Dave Olsen
 
Mastering WordPress Vol.1
Mastering WordPress Vol.1Mastering WordPress Vol.1
Mastering WordPress Vol.1Wataru OKAMOTO
 
Ctrl+F5 Bangalore 2017: Super charge you word press website by Justin Thomas
Ctrl+F5 Bangalore 2017: Super charge you word press website by Justin ThomasCtrl+F5 Bangalore 2017: Super charge you word press website by Justin Thomas
Ctrl+F5 Bangalore 2017: Super charge you word press website by Justin ThomasResellerClub
 
Please, dont touch the slow parts v.3.6 @webtechcon
Please, dont touch the slow parts v.3.6 @webtechconPlease, dont touch the slow parts v.3.6 @webtechcon
Please, dont touch the slow parts v.3.6 @webtechconFrancesco Fullone
 
WordPress Server Security
WordPress Server SecurityWordPress Server Security
WordPress Server SecurityPeter Baylies
 
High Performance Web Design
High Performance Web DesignHigh Performance Web Design
High Performance Web DesignKoji Ishimoto
 

La actualidad más candente (20)

Joomla Extreme Performance
Joomla Extreme PerformanceJoomla Extreme Performance
Joomla Extreme Performance
 
The Power of a Video Library - WordCamp Raleigh
The  Power of a Video Library - WordCamp RaleighThe  Power of a Video Library - WordCamp Raleigh
The Power of a Video Library - WordCamp Raleigh
 
Getting started with WordPress development
Getting started with WordPress developmentGetting started with WordPress development
Getting started with WordPress development
 
Coding with jetpack
Coding with jetpackCoding with jetpack
Coding with jetpack
 
Cache is keeping you from reaching the full potential as a developer (word ca...
Cache is keeping you from reaching the full potential as a developer (word ca...Cache is keeping you from reaching the full potential as a developer (word ca...
Cache is keeping you from reaching the full potential as a developer (word ca...
 
DrupalCon Barcelona 2015
DrupalCon Barcelona 2015DrupalCon Barcelona 2015
DrupalCon Barcelona 2015
 
Optimizing Your WordPress Site: Why speed matters, and how to get there
Optimizing Your WordPress Site: Why speed matters, and how to get thereOptimizing Your WordPress Site: Why speed matters, and how to get there
Optimizing Your WordPress Site: Why speed matters, and how to get there
 
The Onion
The OnionThe Onion
The Onion
 
Measuring Web Performance
Measuring Web Performance Measuring Web Performance
Measuring Web Performance
 
Wordcamp 2010 presentation
Wordcamp 2010 presentationWordcamp 2010 presentation
Wordcamp 2010 presentation
 
Make Local WordPress Development Simple
Make Local WordPress Development SimpleMake Local WordPress Development Simple
Make Local WordPress Development Simple
 
Standards.next: HTML - Are you mything the point?
Standards.next: HTML - Are you mything the point?Standards.next: HTML - Are you mything the point?
Standards.next: HTML - Are you mything the point?
 
Measuring Web Performance (HighEdWeb FL Edition)
Measuring Web Performance (HighEdWeb FL Edition)Measuring Web Performance (HighEdWeb FL Edition)
Measuring Web Performance (HighEdWeb FL Edition)
 
Speed!
Speed!Speed!
Speed!
 
Fundamentals of HTML5
Fundamentals of HTML5Fundamentals of HTML5
Fundamentals of HTML5
 
Mastering WordPress Vol.1
Mastering WordPress Vol.1Mastering WordPress Vol.1
Mastering WordPress Vol.1
 
Ctrl+F5 Bangalore 2017: Super charge you word press website by Justin Thomas
Ctrl+F5 Bangalore 2017: Super charge you word press website by Justin ThomasCtrl+F5 Bangalore 2017: Super charge you word press website by Justin Thomas
Ctrl+F5 Bangalore 2017: Super charge you word press website by Justin Thomas
 
Please, dont touch the slow parts v.3.6 @webtechcon
Please, dont touch the slow parts v.3.6 @webtechconPlease, dont touch the slow parts v.3.6 @webtechcon
Please, dont touch the slow parts v.3.6 @webtechcon
 
WordPress Server Security
WordPress Server SecurityWordPress Server Security
WordPress Server Security
 
High Performance Web Design
High Performance Web DesignHigh Performance Web Design
High Performance Web Design
 

Destacado

Max Muscle Sports Nutrition Supplement Guide for 2013
Max Muscle Sports Nutrition Supplement Guide for 2013Max Muscle Sports Nutrition Supplement Guide for 2013
Max Muscle Sports Nutrition Supplement Guide for 2013Rich Carr
 
Assignment 1
Assignment 1Assignment 1
Assignment 1Đàm Tư
 
Computer basics
Computer basicsComputer basics
Computer basicsJANGID_ML
 
Munduko lantegiak ausoko tailerrak slideshare
Munduko lantegiak ausoko tailerrak slideshareMunduko lantegiak ausoko tailerrak slideshare
Munduko lantegiak ausoko tailerrak slidesharelauroteknologia
 
Enginemanagementsystemfinal 141115224136-conversion-gate01
Enginemanagementsystemfinal 141115224136-conversion-gate01Enginemanagementsystemfinal 141115224136-conversion-gate01
Enginemanagementsystemfinal 141115224136-conversion-gate01Axu Batax
 
Computer virus
Computer  virusComputer  virus
Computer virusJANGID_ML
 
Tablet pc by jangid
Tablet pc  by jangidTablet pc  by jangid
Tablet pc by jangidJANGID_ML
 
Nola marraztu seinale bat geometria
Nola marraztu seinale bat geometriaNola marraztu seinale bat geometria
Nola marraztu seinale bat geometrialauroteknologia
 
Itis pentest slides hyd
Itis pentest slides  hydItis pentest slides  hyd
Itis pentest slides hydRama krishna
 
Computer basics for all . jangid ml
Computer basics for all . jangid mlComputer basics for all . jangid ml
Computer basics for all . jangid mlJANGID_ML
 
Computer basics
Computer basicsComputer basics
Computer basicsJANGID_ML
 
Improving Your Website's Usability for Happier Visitors & Stickier User Exper...
Improving Your Website's Usability for Happier Visitors & Stickier User Exper...Improving Your Website's Usability for Happier Visitors & Stickier User Exper...
Improving Your Website's Usability for Happier Visitors & Stickier User Exper...Adam Dunford
 
2011 Reclame Presentatie V5 2011
2011 Reclame Presentatie V5 20112011 Reclame Presentatie V5 2011
2011 Reclame Presentatie V5 2011Jo van den Berg
 
Softwares . jangid ml
Softwares . jangid mlSoftwares . jangid ml
Softwares . jangid mlJANGID_ML
 
Apple and sugar feeding in adult codling moths
Apple and sugar feeding in adult codling mothsApple and sugar feeding in adult codling moths
Apple and sugar feeding in adult codling mothsDith Jose
 
E learning ..jangid ml
E learning ..jangid mlE learning ..jangid ml
E learning ..jangid mlJANGID_ML
 
1ebaluaketa ikasleen lanak 2010_2011
1ebaluaketa ikasleen lanak 2010_20111ebaluaketa ikasleen lanak 2010_2011
1ebaluaketa ikasleen lanak 2010_2011lauroteknologia
 

Destacado (20)

Max Muscle Sports Nutrition Supplement Guide for 2013
Max Muscle Sports Nutrition Supplement Guide for 2013Max Muscle Sports Nutrition Supplement Guide for 2013
Max Muscle Sports Nutrition Supplement Guide for 2013
 
Assignment 1
Assignment 1Assignment 1
Assignment 1
 
Computer basics
Computer basicsComputer basics
Computer basics
 
Scs5export
Scs5exportScs5export
Scs5export
 
Munduko lantegiak ausoko tailerrak slideshare
Munduko lantegiak ausoko tailerrak slideshareMunduko lantegiak ausoko tailerrak slideshare
Munduko lantegiak ausoko tailerrak slideshare
 
Enginemanagementsystemfinal 141115224136-conversion-gate01
Enginemanagementsystemfinal 141115224136-conversion-gate01Enginemanagementsystemfinal 141115224136-conversion-gate01
Enginemanagementsystemfinal 141115224136-conversion-gate01
 
Computer virus
Computer  virusComputer  virus
Computer virus
 
Tablet pc by jangid
Tablet pc  by jangidTablet pc  by jangid
Tablet pc by jangid
 
Kat.ppt
Kat.pptKat.ppt
Kat.ppt
 
Nola marraztu seinale bat geometria
Nola marraztu seinale bat geometriaNola marraztu seinale bat geometria
Nola marraztu seinale bat geometria
 
Itis pentest slides hyd
Itis pentest slides  hydItis pentest slides  hyd
Itis pentest slides hyd
 
Computer basics for all . jangid ml
Computer basics for all . jangid mlComputer basics for all . jangid ml
Computer basics for all . jangid ml
 
Computer basics
Computer basicsComputer basics
Computer basics
 
Improving Your Website's Usability for Happier Visitors & Stickier User Exper...
Improving Your Website's Usability for Happier Visitors & Stickier User Exper...Improving Your Website's Usability for Happier Visitors & Stickier User Exper...
Improving Your Website's Usability for Happier Visitors & Stickier User Exper...
 
2011 Reclame Presentatie V5 2011
2011 Reclame Presentatie V5 20112011 Reclame Presentatie V5 2011
2011 Reclame Presentatie V5 2011
 
Softwares . jangid ml
Softwares . jangid mlSoftwares . jangid ml
Softwares . jangid ml
 
Html tags
Html tagsHtml tags
Html tags
 
Apple and sugar feeding in adult codling moths
Apple and sugar feeding in adult codling mothsApple and sugar feeding in adult codling moths
Apple and sugar feeding in adult codling moths
 
E learning ..jangid ml
E learning ..jangid mlE learning ..jangid ml
E learning ..jangid ml
 
1ebaluaketa ikasleen lanak 2010_2011
1ebaluaketa ikasleen lanak 2010_20111ebaluaketa ikasleen lanak 2010_2011
1ebaluaketa ikasleen lanak 2010_2011
 

Similar a Does This Theme Make My Website Look Fat? (Wordcamp SLC 2013)

Cvcc performance tuning
Cvcc performance tuningCvcc performance tuning
Cvcc performance tuningJohn McCaffrey
 
Csdn Drdobbs Tenni Theurer Yahoo
Csdn Drdobbs Tenni Theurer YahooCsdn Drdobbs Tenni Theurer Yahoo
Csdn Drdobbs Tenni Theurer Yahooguestb1b95b
 
WordPress Theme Performance - WP Vienna meetup 8.6.2016
WordPress Theme Performance - WP Vienna meetup 8.6.2016WordPress Theme Performance - WP Vienna meetup 8.6.2016
WordPress Theme Performance - WP Vienna meetup 8.6.2016jancbeck
 
State of jQuery - AspDotNetStorefront Conference
State of jQuery - AspDotNetStorefront ConferenceState of jQuery - AspDotNetStorefront Conference
State of jQuery - AspDotNetStorefront Conferencedmethvin
 
John Resig Beijing 2010 (English Version)
John Resig Beijing 2010 (English Version)John Resig Beijing 2010 (English Version)
John Resig Beijing 2010 (English Version)Jia Mi
 
Developing High Performance Web Apps - CodeMash 2011
Developing High Performance Web Apps - CodeMash 2011Developing High Performance Web Apps - CodeMash 2011
Developing High Performance Web Apps - CodeMash 2011Timothy Fisher
 
10 Things You Can Do to Speed Up Your Web App Today
10 Things You Can Do to Speed Up Your Web App Today10 Things You Can Do to Speed Up Your Web App Today
10 Things You Can Do to Speed Up Your Web App TodayChris Love
 
Developing High Performance Web Apps
Developing High Performance Web AppsDeveloping High Performance Web Apps
Developing High Performance Web AppsTimothy Fisher
 
腾讯大讲堂09 如何建设高性能网站
腾讯大讲堂09 如何建设高性能网站腾讯大讲堂09 如何建设高性能网站
腾讯大讲堂09 如何建设高性能网站areyouok
 
腾讯大讲堂09 如何建设高性能网站
腾讯大讲堂09 如何建设高性能网站腾讯大讲堂09 如何建设高性能网站
腾讯大讲堂09 如何建设高性能网站topgeek
 
jQuery: The World's Most Popular JavaScript Library Comes to XPages
jQuery: The World's Most Popular JavaScript Library Comes to XPagesjQuery: The World's Most Popular JavaScript Library Comes to XPages
jQuery: The World's Most Popular JavaScript Library Comes to XPagesTeamstudio
 
Responsive websites. Toolbox
Responsive websites. ToolboxResponsive websites. Toolbox
Responsive websites. ToolboxWojtek Zając
 
GDD Japan 2009 - Designing OpenSocial Apps For Speed and Scale
GDD Japan 2009 - Designing OpenSocial Apps For Speed and ScaleGDD Japan 2009 - Designing OpenSocial Apps For Speed and Scale
GDD Japan 2009 - Designing OpenSocial Apps For Speed and ScalePatrick Chanezon
 
Using Cool New Frameworks in (Mobile) Domino Apps
Using Cool New Frameworks in (Mobile) Domino AppsUsing Cool New Frameworks in (Mobile) Domino Apps
Using Cool New Frameworks in (Mobile) Domino AppsTeamstudio
 
Mobile Apps with PhoneGap and jQuery Mobile
Mobile Apps with PhoneGap and jQuery MobileMobile Apps with PhoneGap and jQuery Mobile
Mobile Apps with PhoneGap and jQuery MobileTerry Ryan
 
The 5 most common reasons for a slow WordPress site and how to fix them – ext...
The 5 most common reasons for a slow WordPress site and how to fix them – ext...The 5 most common reasons for a slow WordPress site and how to fix them – ext...
The 5 most common reasons for a slow WordPress site and how to fix them – ext...Otto Kekäläinen
 
High Performance Websites
High Performance WebsitesHigh Performance Websites
High Performance WebsitesParham
 
JavaScript front end performance optimizations
JavaScript front end performance optimizationsJavaScript front end performance optimizations
JavaScript front end performance optimizationsChris Love
 

Similar a Does This Theme Make My Website Look Fat? (Wordcamp SLC 2013) (20)

Cvcc performance tuning
Cvcc performance tuningCvcc performance tuning
Cvcc performance tuning
 
Csdn Drdobbs Tenni Theurer Yahoo
Csdn Drdobbs Tenni Theurer YahooCsdn Drdobbs Tenni Theurer Yahoo
Csdn Drdobbs Tenni Theurer Yahoo
 
WordPress Theme Performance - WP Vienna meetup 8.6.2016
WordPress Theme Performance - WP Vienna meetup 8.6.2016WordPress Theme Performance - WP Vienna meetup 8.6.2016
WordPress Theme Performance - WP Vienna meetup 8.6.2016
 
State of jQuery - AspDotNetStorefront Conference
State of jQuery - AspDotNetStorefront ConferenceState of jQuery - AspDotNetStorefront Conference
State of jQuery - AspDotNetStorefront Conference
 
John Resig Beijing 2010 (English Version)
John Resig Beijing 2010 (English Version)John Resig Beijing 2010 (English Version)
John Resig Beijing 2010 (English Version)
 
High-Speed HTML5
High-Speed HTML5High-Speed HTML5
High-Speed HTML5
 
Developing High Performance Web Apps - CodeMash 2011
Developing High Performance Web Apps - CodeMash 2011Developing High Performance Web Apps - CodeMash 2011
Developing High Performance Web Apps - CodeMash 2011
 
10 Things You Can Do to Speed Up Your Web App Today
10 Things You Can Do to Speed Up Your Web App Today10 Things You Can Do to Speed Up Your Web App Today
10 Things You Can Do to Speed Up Your Web App Today
 
Developing High Performance Web Apps
Developing High Performance Web AppsDeveloping High Performance Web Apps
Developing High Performance Web Apps
 
腾讯大讲堂09 如何建设高性能网站
腾讯大讲堂09 如何建设高性能网站腾讯大讲堂09 如何建设高性能网站
腾讯大讲堂09 如何建设高性能网站
 
腾讯大讲堂09 如何建设高性能网站
腾讯大讲堂09 如何建设高性能网站腾讯大讲堂09 如何建设高性能网站
腾讯大讲堂09 如何建设高性能网站
 
State of the Web
State of the WebState of the Web
State of the Web
 
jQuery: The World's Most Popular JavaScript Library Comes to XPages
jQuery: The World's Most Popular JavaScript Library Comes to XPagesjQuery: The World's Most Popular JavaScript Library Comes to XPages
jQuery: The World's Most Popular JavaScript Library Comes to XPages
 
Responsive websites. Toolbox
Responsive websites. ToolboxResponsive websites. Toolbox
Responsive websites. Toolbox
 
GDD Japan 2009 - Designing OpenSocial Apps For Speed and Scale
GDD Japan 2009 - Designing OpenSocial Apps For Speed and ScaleGDD Japan 2009 - Designing OpenSocial Apps For Speed and Scale
GDD Japan 2009 - Designing OpenSocial Apps For Speed and Scale
 
Using Cool New Frameworks in (Mobile) Domino Apps
Using Cool New Frameworks in (Mobile) Domino AppsUsing Cool New Frameworks in (Mobile) Domino Apps
Using Cool New Frameworks in (Mobile) Domino Apps
 
Mobile Apps with PhoneGap and jQuery Mobile
Mobile Apps with PhoneGap and jQuery MobileMobile Apps with PhoneGap and jQuery Mobile
Mobile Apps with PhoneGap and jQuery Mobile
 
The 5 most common reasons for a slow WordPress site and how to fix them – ext...
The 5 most common reasons for a slow WordPress site and how to fix them – ext...The 5 most common reasons for a slow WordPress site and how to fix them – ext...
The 5 most common reasons for a slow WordPress site and how to fix them – ext...
 
High Performance Websites
High Performance WebsitesHigh Performance Websites
High Performance Websites
 
JavaScript front end performance optimizations
JavaScript front end performance optimizationsJavaScript front end performance optimizations
JavaScript front end performance optimizations
 

Último

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...apidays
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Allon Mureinik
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...gurkirankumar98700
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
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 Processorsdebabhi2
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxKatpro Technologies
 
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 DevelopmentsTrustArc
 
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 2024The Digital Insurer
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Enterprise Knowledge
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEarley Information Science
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
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...Miguel Araújo
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 

Último (20)

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...
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
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
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
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
 
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
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
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...
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 

Does This Theme Make My Website Look Fat? (Wordcamp SLC 2013)

  • 1. Does This Theme Make My Website Look Fat?
  • 2.
  • 3. 0 kB 250 kB 500 kB 750 kB 1,000 kB Images Scripts Flash HTML Stylesheets Other total: 1585 kB Average Bytes Per Page
  • 4. 0 kB 400 kB 800 kB 1,200 kB 1,600 kB 2010 2011 2012 2013 125% increase it’s getting worse
  • 5. and responsive web design doesn’t make it better
  • 6.
  • 7.
  • 8. 8 MOBILE ONLY? US: 25% NEVER/INFREQUENT DESKTOP USE UK: 22% NEVER/INFREQUENT DESKTOP USE Asia: 50+% DON’T USE INTERNET ON PC Africa: 50+% DON’T USE INTERNET ON PC India: 49% NEVER/INFREQUENT DESKTOP USE US: 50+% MORE MOBILE THAN PC BY 2015 Source: http://www.lukew.com/ff/entry.asp?1391 KENYA: M-PESA 17% of GDP 54% of adults
  • 10.
  • 11. Browser & Device The Internet how the Internet works (basically) End-User Network Webhost Network Web server Cell Radio DNS
  • 14.
  • 15. Browser/Device • Connections per hostname • Max connections • Cache size • Processor, underpowered to run JS, CSS • Cell Radio
  • 16. Network & Internet • File sizes • 3G/4G Slowness • Latency, TCP slow start, congestion control • DNS
  • 17. Servers • Proximity to request • Load & capacity • Configuration
  • 18. Application • Wordpress core • Theme files • Plugin quality (not quantity!)
  • 19. Database • Proximity to server • Load & capacity • Configuration
  • 20. Browser & Device The Internet how the Internet works (basically) End-User Network Webhost Network Web server Cell Radio DNS
  • 21. What does all this have to do with Wordpress?
  • 22. Get ready for your weigh in
  • 23.
  • 24. Spring Cleaning • Remove plugins and themes you don’t use • Delete unattached images in Media Library • Optimize the database • Clean out old revisions • Remove references to inactive plugins or themes • Plugin: WP Clean Up
  • 26.
  • 27. • YSlow • Google PageSpeed • Webpagetest • GTmetrix combines both YSlow & PageSpeed • Plugin: GTmetrix for Wordpress • others at siteloadtest.com Front-end
  • 28. • Plugins: • Databases: Debug Bar, Debug Objects for Databases • Themes: Theme Check • Plugins: Plugin Performance Profiler (!) Wordpress
  • 29. • Are most site visitors new or returning? • International or domestic? • Using mobile browsers or desktop browsers? • Which browser versions are they using? Analytics
  • 30. • DOM Node Count (via Chrome Developer Tools Timeline) • CSS Stress Test bookmarklet • CSS Audits • Firefox add-ons - Dust-Me Selectors & CSS Usage • Chrome Developer Tools Audits • Unused-CSS.com Advanced Testing
  • 31.
  • 32.
  • 33.
  • 35.
  • 36. let’s target some common issues
  • 38.
  • 39. Optimize • Before upload: • ImageOptim (Mac), Jpegmini (Windows), Trimage (Linux) • TinyPNG, PNGGauntlet • After upload: • WP Smush.it (!) • EWWW Image Optimizer • WP Minify
  • 41.
  • 42. CSS Sprites • combine image files • wearekiss.com/spritepad • css.spritegen.com • www.spritecow.com • spritegen.website-performance.org • csssprites.com
  • 43. Replace • Webfonts • free: Google Fonts, FontSquirrel • paid: FontSpring, Myfonts, Typekit • Icon Webfonts • Font Awesome • ShiftIcons • IcoMoon
  • 45.
  • 46. Poor Man’s CDN • Add a subdomain to your site • Change where your media files point (Settings > Uploading Files) • upload path to “/home/www/public_html/assets” • upload_url_path to “http://assets.domain.com” • Plugin: Upload Url and Path Enabler
  • 47. Poor Man’s CDN caveats • Only works when you have www subdomain • Make sure it’s cookie-free • wp-config: define("COOKIE_DOMAIN", 'www.domain.com'); • May also need to change Google Analytics
  • 49.
  • 50. Reduce your fontset • Googlefonts give you the full set of characters, including multi-lingual • FontSquirrel Generator
  • 52.
  • 53. Move it to the bottom <?php //First remove all JS loaded in the head section remove_action('wp_head', 'wp_print_scripts'); remove_action('wp_head', 'wp_print_head_scripts', 9); remove_action('wp_head', 'wp_enqueue_scripts', 1); //Load JS at the footer of the template add_action('wp_footer', 'wp_print_scripts', 1); add_action('wp_footer', 'wp_enqueue_scripts', 1); add_action('wp_footer', 'wp_print_head_scripts', 1);?> ?>
  • 55.
  • 56.
  • 57. Dequeue what you don’t function swk_remove_scripts() { ! wp_dequeue_script('custom_js'); ! wp_dequeue_script('chirp_js'); ! wp_dequeue_script('fitvid_js'); ! wp_deregister_script('chirp_js'); ! wp_deregister_script('fitvid_js'); } add_action('wp_enqueue_scripts', 'swk_remove_scripts', 500); function swk_remove_styles() { ! wp_deregister_style('media_queries_css'); ! wp_deregister_style('google_merriweather'); }
  • 58. Selectively enable add_action('wp_print_scripts', 'deregister_cf7_javascript', 100); function deregister_cf7_javascript() {     if (!is_page(array(8,10))) {         wp_deregister_script('contact-form-7');         wp_dequeue_script('contact-form-7');     } } add_action('wp_print_styles', 'deregister_cf7_styles', 100); function deregister_cf7_styles() {     if (!is_page(array(8,10))) {         wp_deregister_style( 'contact-form-7' );         wp_dequeue_style( 'contact-form-7' );     } }
  • 60.
  • 61. Understand browsers • cache size is smaller, meaning it can't store as many files in memory • maximum size of file that can be cached is also smaller • fewer parallel connections • cell radio turns on and off
  • 63. Understand devices • Processor constraints • Use CSS3 elements sparingly, particularly drop- shadow • DOM rendering issues
  • 65.
  • 66.
  • 67.
  • 69. for Happier Visitors and Stickier User Experiences Adam Dunford adam@steepleashton.com