Fast by Default
Eftermiddagen inleds med en session om hur man får verkligt snabba webbplatser. Vem passar då bättre än Steve Sauders, skaparen av bland annat YSlow, som är ett FireBug-tillägg för att mäta hur snabb en webbplats är?
Steve slår hål på myten att det är långsamma servrar som gör att en webbplats är långsam. Börjar du mäta på det ser du ofta att endast en tiondel av tiden det tar för en sida att visas i din webbläsare spenderas på servern. 90% av tiden går alltså till att parsa JavaScript, CSS och ladda bilder. Värst av allt är stora, tunga JavaScript i headern som låser all annan aktivitet tills de kört klart. Detta resulterar allt som oftast i att en vit sida och en snurrande webbläsarlogo visas för den väntande användaren.
Han avbryter plötsligt sitt anförande med en fråga om vilka som läser hans blogg, båda två som räckte upp handen fick varsin bok, ”Even Faster Websites”. Jag är övertygad om att han har många fler läsare än så i rummet.
En webbplats upplevs mycket snabbare om den växer fram jämfört med att sitta och titta på en vit sida. Ett av Steves råd är därför att dela på det JavaScript som behövs för att rendera sidan och resten. Avvakta sedan med att köra "resten". Det finns flera tekniker för detta. Den som fick mig att rycka litet i mungipan var den som GMail Mobile använder. Så genial i sin enkelhet.
För att kunna ladda in JavaScriptet men inte köra det (vilket skulle låsa webbläsaren) gömmer man det i en kommentar. Sidan laddar snabbt och när en funktion behövs, evaluerar man den genom att ta bort kommentaren och skicka innehållet till den ökända eval-metoden.
<script type="text/javascript">
function alwaysNeeded() { ... }
</script>
<script type="text/javascript" id="onDemandJs">
/*
function notNecisarilyNeeded() { ... }
*/
</script>
function alwaysNeeded() { ... }
SproutCore är ett ramverk som är värt att titta vidare på om snabba webbplatser är viktigt för dig.
Steve försökte också resonera kring en webbplats snabbhet som en konkurrensfördel. Vad anser du? Väljer du Aftonbladet före Expressen för att den ena är snabbare än den andra?
Resten av dagen spenderade jag på några mer eller mindre intressanta dragningar:
- Java Testing on the Fast Lane - Andres Almiray
- Taking web applications to the desktop with Adobe AIR - Piotr Walczyszyn
- Scala for Java Programmers - Joakim Ohlrogge, Enno Runne
Inga kommentarer:
Skicka en kommentar