Perché è importante avere un sito veloce? Cosa significa veloce? Si può essere veloci senza usare plugins? In questo talk oltre a fornirti tutte le risposte, ti mostrerò le strategie più efficaci ed attuali che utilizzo per rendere i siti più veloci e abbattere il muro del secondo.
Realizzare siti velocissimi che si caricano in un secondo - WordCamp Milano 2017 - Andrea Cardinali
1. NEED FOR SPEED
Realizzare siti velocissimi che caricano in
meno di 1 secondo
Andrea Cardinali
@andreacardinali
November 18th 2017
2. #wcmil @andreacardinali November 18th 2017
ANDREA CARDINALI
• DEVELOPER & SEO @ T.C. INFORMATICA
• LAVORO CON WP DAL 2009
• CO-ORGANIZZATORE DEL WP ROMAGNA
MEETUP
2
3. #wcmil @andreacardinali November 18th 2017
DI COSA PARLERÓ
• PERCHÉ è importante la velocità
• COSA significa VELOCE
• COSA rende veloce un sito
• COME rendere veloce un sito
3
9. #wcmil @andreacardinali November 18th 2017
SITI SEMPRE PIÙ PESANTI
9
OTTOBRE 2017OTTOBRE 2016
2585 kB 3575 kB
+990 kB in 12 mesi
Fonte: http://httparchive.org
20. #wcmil @andreacardinali November 18th 2017
“64% OF
SHOPPERS WHO
ARE UNHAPPY
WITH THEIR SITE
VISIT WILL GO
ELSEWHERE TO
SHOP NEXT TIME”
20
https://cdnify.com/blog/15-web-performance-stats/
21. #wcmil @andreacardinali November 18th 2017
“73% OF MOBILE
USERS SAID
THEY’VE
ENCOUNTERED A
SITE THAT WAS
“TOO SLOW TO
LOAD”
21
https://cdnify.com/blog/15-web-performance-stats/
22. #wcmil @andreacardinali November 18th 2017
“IF AMAZON
INCREASED
PAGE LOAD TIME
BY +100MS THEY
LOSE 1% OF
SALES”
22
https://cdnify.com/blog/15-web-performance-stats/
23. #wcmil @andreacardinali November 18th 2017
“IF GOOGLE
INCREASED
PAGE LOAD BY
+500 MS THEY
GET 25% FEWER
SEARCHES”
23
https://cdnify.com/blog/15-web-performance-stats/
24. #wcmil @andreacardinali November 18th 2017
“50% OF PEOPLE
WILL TELL OTHERS
IF THEY HAVE A
NEGATIVE
EXPERIENCE ON
YOUR SITE”
24
https://cdnify.com/blog/15-web-performance-stats/
33. #wcmil @andreacardinali November 18th 2017
“SLOW SITES RANK WORST. IF YOU
RUN A FAST SITE, THAT’S GREAT
FOR YOUR USERS, GREAT FOR ROI,
FANTASTIC, YOU SHOULD PAY LOT
OF ATTENTION TO CACHE AND ALL
THIS SORT OF STUFF BUT YOU DON’T
GET A BOOST FOR IT. IT’S THE SITES
THAT ARE OUTLIERS IN TERMS OF
BEING REALLY SLOW THAT RANK
LOWER.”
33
Matt Cutts @ SMX 2013
49. #wcmil @andreacardinali November 18th 2017
QUANTO POSSIAMO
ASPETTARE?
Ritardo Reazione utente
0 - 100ms Istantanea
100 - 300 ms Ritardo appena percepibile
300 - 1000 ms FOCUS, Ritardo percepibile
1 secondo o più FLUSSO PENSIERI INTERROTTO
Cambio contesto mentale
10 secondi o più FRUSTRAZIONE e
ABBANDONO del SITO
49
[Miller 1968; Card et al. 1991] - Jakob Nielsen
93. #wcmil @andreacardinali November 18th 2017
HTTP/2
• Supportato dall’85% dei browser in Italia*
• Migliora notevolmente le performance
• Elimina le limitazioni di HTTP/1.1
• Utilizza una sola connessione per host
• Scarica le risorse in parallelo
• Le risorse si possono prioritizzare (server
push)
• Richiede https
93
https://caniuse.com/#search=HTTP%2F2
97. #wcmil @andreacardinali November 18th 2017
HTTP/2 - DA SAPERE
• I social counter vengono resettati
• Impostare i redirect nel .htaccess
• Attenzione ai mixed content
• Impostare il <meta name=«referer»>
adeguatamente
97
https://www.w3.org/TR/referrer-policy/#referrer-policies
101. #wcmil @andreacardinali November 18th 2017
"
"
TIME IS MEASURED
OBJECTIVELY BUT PERCEIVED
SUBJECTIVELY, AND
EXPERIENCES CAN BE
ENGINEERED TO IMPROVE
PERCEIVED PERFORMANCE
101
Ilya Gregorik
105. #wcmil @andreacardinali November 18th 2017
CRITICAL RENDER
PATH È COSTITUITO
DAL CODICE E DALLE
RISORSE
NECESSARIE A
VISUALIZZARE IL
CONTENUTO ABOVE
THE FOLD
105
108. #wcmil @andreacardinali November 18th 2017
SERVER PUSH
• La priorità dei contenuti è stabilita dal
server
• Le risorse con priorità più alta sono
scaricate per prime (indipendentemente
dalla loro posizione nel html)
108
111. #wcmil @andreacardinali November 18th 2017
ASSOLUTAMENTE NO…
• Lazy load immagini, video
• Font loader
• Script asincroni e differiti
• DNS lookup
• preload, prefetch, prerender
• CDN
• Cache per utenti loggati
• […]
111
112. #wcmil @andreacardinali November 18th 2017
RICAPITOLANDO
• Il tempo è denaro
• Le performance partono dal codice
• Page Speed è una vanity metric
• La velocità è una percezione
• Page builder è sinonimo di lentezza
112
113. #wcmil @andreacardinali November 18th 2017
RICAPITOLANDO
• Concentratevi sul 20% che permette di
ottenere l’80% dei risultati
• PHP 7 / GZIP/ HTTP/2 / Cache
• Priorità ai contenuti above the fold
• Se non lo vedo, non lo carico (lazy load)
113
117. #wcmil @andreacardinali November 18th 2017
ALTERNATIVE A PAGE
BUILDER
Utilizzare ItalyStrap
• 100% made in Italy
• Veloce (scritto tenendo a mente le performance)
• SEO Friendly
http://bit.ly/ItalyStrapWCMIL17
117
118. #wcmil @andreacardinali November 18th 2017
WORDPRESS MEETUP
ROMAGNA
QUANDO:
ogni 1°Martedì del mese (prossimo 3 Dicembre)
DOVE:
Dinamo Coworking Space Cesena
PERCHÉ:
Per parlare di WordPress, conoscere bella
gente e condividere le proprie esperienze
wpromagna.com
@romagnawp
118