ID.nl logo
Huis

Tips voor de expert: Website-snelheid testen

De laadtijd van internetpagina’s wordt steeds belangrijker en weegt ook mee in de ranking van je site bij Google. Er zijn diverse tools waarmee je de prestaties van je website kunt meten. Je website-snelheid testen doe je zo.

De snelheid waarmee internetpagina’s worden geladen wordt steeds belangrijker, onder meer voor de ranking van je site bij Google, maar ook voor de conversie: bezoekers haken sneller af als het laden te lang duurt. Met snelheid wordt soms de responstijd bedoeld, maar vaker de totale laadtijd. In deze workshop laten we zien hoe je beide kunt meten. De responstijd kun je zien als de tijd tot de browser de eerste gegevens ontvangt.

Dit hangt vooral af van de ‘opstarttijd’ van je softwareomgeving. De bottleneck is hierbij vaak niet de webserver zelf, maar bijvoorbeeld het gebruikte cms (zoals WordPress) of framework (bijvoorbeeld Laraval). De stap van php versie 5.x naar php versie 7.x helpt overigens al enorm voor de snelheid. Ook kun je overwegen een cache voor de hele site te zetten, bijvoorbeeld met Varnish. De laadtijd is de tijd die nodig is om de volledige internetpagina te laden. Het is een belangrijke factor en ook één waar gemakkelijker winst te boeken valt.

Javascript én jQuery

Wat veel invloed op de laadtijd heeft, zijn de vele losse componenten waaruit websites tegenwoordig bestaan. Een website moet bijvoorbeeld dynamisch zijn met vloeiende animaties en ook nog responsief, zodat deze op mobiel én desktop goed werkt. Ook gedragen websites zich steeds meer als applicatie, waarbij asynchroon kleine stukjes in websites worden vernieuwd.

Een populaire basis voor zo’n moderne website is Bootstrap: een framework dat veel stijlen bevat in een eigen css-bestand en daarnaast leunt op Javascript én de jQuery-bibliotheek. Daar komen vaak de nodige plug-ins voor jQuery bij, zoals sliders, die elk veelal ook weer eigen stijlen hebben. Een minimalist kan overigens prima een website zonder bijvoorbeeld Javascript bouwen, maar dat is wel veel werk als er hoge eisen worden gesteld.

Wil je eenvoudig een animatie toevoegen, dan kun je animate.css gebruiken, maar het is wél weer een extra stylesheet. En wie icoontjes wil tonen, kan handig Font Awesome integreren, maar ook dat is weer een stylesheet waarin ook nog een lettertypebestand wordt geladen. En dan zijn er nog de nodige extra scripts en banners (afbeeldingen of zelfs video’s) van advertentienetwerken, die lang niet altijd zijn geoptimaliseerd. Het aantal bestanden en de omvang van websites neemt zodoende flink toe.

Website zonder jQuery of Javascript?

Het was nog niet zo lang geleden een ongeschreven regel dat een website ook zonder Javascript moet werken. Tegenwoordig doen ontwikkelaars daar weinig moeite meer voor en dat hoeft ook niet echt: van alle paginaweergaven wereldwijd komt maar 0,2 procent van een apparaat waarop Javascript is uitgeschakeld. Zonder Javascript, met puur css, is al veel mogelijk, zoals de site youmightnotneedjs.com laat zien.

Nadeel is dat je meer tijd moet steken in je scripts, omdat je meer rekening moet houden met verschillen in browsers. Bibliotheken maken veel zaken abstracter en dus makkelijker. Voor jQuery geldt eigenlijk hetzelfde. Maar als je maar een paar functies van jQuery gebruikt, is het zonde de hele bibliotheek te laden. Dat laat bijvoorbeeld youmightnotneedjquery.com zien, dat de inspiratiebron voor bovengenoemde website was.

Van alle paginaweergaven wereldwijd komt maar 0,2 procent van een apparaat waarop Javascript is uitgeschakeld

-

Laadtijd testen

Om een goed beeld van de laadtijd van al die losse elementen te krijgen, kun je bijvoorbeeld de test op webpagetest.org of tools.pingdom.com gebruiken. De eerste is het meest interessant: de test wordt gesimuleerd vanaf een normale Windows-pc met gewone internetverbinding, waarbij je zelf de testlocatie en browser kunt kiezen. Na de test zie je een zogenoemde waterval die aangeeft wanneer de verschillende onderdelen van de website zijn geladen.

Daarboven zie je een samenvatting met onder meer First Byte, in feite de responstijd, en onder Document Complete de tijd die nodig is om het document inclusief alle ‘statische content’ te laden, zoals stylesheets, scripts en afbeeldingen. Tijdwinst valt onder meer te behalen door stylesheets en scripts te combineren en minimaliseren. Dat kun je met Grunt gemakkelijk automatiseren, waarover in een later artikel meer. Ook http/2 voor het versnellen van https-websites is een aanrader. Een groot voordeel is dat de browser daarmee meerdere bestanden gelijktijdig kan ophalen bij je webserver.

Inzicht in knelpunten

Om te zien welke onderdelen de weergave van de pagina tegenhouden, is een test op varvy.com/pagespeed erg praktisch. Je ziet er ook de totale omvang van stylesheets en scripts. En je krijgt tips, bijvoorbeeld over afbeeldingen die je kunt verkleinen of de optimalisatie van je server. Dit laatste komt ook in de workshop 4 aan bod. Op de Varvy-website vind je tevens een goede, meer op seo gerichte test. Verder is Google PageSpeed heel praktisch om inzicht te krijgen in knelpunten in je ontwerp. Er is aandacht voor zowel mobiel als desktop en je krijgt veel optimalisatietips.

De test van GTmetrix test je website op talloze richtlijnen die gehanteerd worden door Google (PageSpeed) en Yahoo (Yslow). Niet alle tips zijn overigens even zinvol: een paar kilobytes winst is bijvoorbeeld niet heel interessant op een website van een megabyte.

©PXimport

Internationaal bezoek

Het aantal bestanden en de omvang daarvan heeft vooral veel invloed op bezoekers die je website van wat verder weg bezoeken. Op tools.keycdn.com kun je zien wat het effect is. Ga naar Performance Test en vraag een individueel bestand op. Kies je een bestand bij een Nederlandse provider, dan zie je dat de eerste byte (ttfb oftewel time to first byte genoemd) razendsnel is ontvangen vanuit Amsterdam, veelal binnen 30 ms. Buiten Europa is dat al snel 400 ms tot wel 1 seconde.

Vraag je zo’n bestand bij een content delivery network (cdn, ook wel content distribution network genoemd) op, zoals KeyCDN zelf, dan is die waarde voor bijna alle locaties zo’n 15 tot 40 ms, als het tenminste al eerder bij de bewuste node van die cdn is opgevraagd. Dat is een belangrijk voordeel van een cdn, die statische content zoals scripts, stylesheets en afbeeldingen kan distribueren over vaak wel zo’n 20 tot 30 servers wereldwijd, de zogenaamde nodes.

De pagina zelf wordt weliswaar bij je eigen host gegenereerd, maar de statische content wordt via de snelste route opgehaald bij een node dichtbij de gebruiker. In de workshop 3 lees je hoe je zelf een cdn in gebruik kunt nemen.

▼ Volgende artikel
Gerucht: Nexon werkt aan Starcraft-shooter voor Blizzard
Huis

Gerucht: Nexon werkt aan Starcraft-shooter voor Blizzard

Het Zuid-Koreaanse zou een shooter gebaseerd op Starcraft in ontwikkeling hebben voor IP-eigenaar Blizzard.

Dat claimt The Korean Economic Daily. Een team binnen Nexon dat gespecialiseerd is in shooters zou zich op dit moment volledig richten op de nog onaangekondigde game. De ontwikkeling zou nog niet lang geleden zijn gestart, en dus zou de shooter nog lang op zich laten wachten.

Verdere details zijn er nog niet, behalve dat Choi Jun-ho ook bij het project betrokken zou zijn. Hij maakte eerder de populaire Shinppu-mapmod voor Starcraft.

Starcraft

Er gaan al langer geruchten over een shooter gebaseerd op Starcraft. Vorig jaar meldde Bloomberg-journalist Jason Schreier al in zijn boek 'Play Nice: The Rise, Fall and Future of Blizzard Entertainment' dat Blizzard aan een shooter zou werken. Volgens Schreier is de shooter van Nexon echter niet gerelateerd aan de shooter van Blizzard - het zouden om twee afzonderlijke projecten gaan.

De Starcraft-reeks bestaat uit real-time strategygames. De eerste verscheen in 1998, en een vervolg kwam in 2010 uit. Blizzard heeft al vaker geprobeerd shooters gebaseerd op de Starcraft-franchise te maken, maar die werden vooralsnog altijd geannuleerd.

Mogelijke onthulling op Blizzcon

Voor het eerst in enkele jaren organiseert Blizzard op 12 en 13 december de Amerikaanse beurs Blizzcon, waar alles rondom de uitgever wordt gevierd. Het is mogelijk dat één van de hierboven genoemde shooters daar wordt onthuld.

▼ Volgende artikel
Review: Mario Tennis Fever is een leuke set
Huis

Review: Mario Tennis Fever is een leuke set

Je vraagt je bij elke Mario-sportgame toch weer af: bereikt het de highs van die oeroude Game Boy-games van Camelot, zoals Mario Tennis en Mario Golf)? Het antwoord is, wat mij betreft, steevast  ‘nee’. Maar tussen ‘perfect’ en ‘niet perfect’ zit nog altijd een breed spectrum aan kwaliteit. En Fever? Die nestelt zich moeiteloos aan de betere kant van dat spectrum.

De drie toernooien die deze game rijk is, daar ben je een uurtje zoet mee. Waarschijnlijk zonder een set te verliezen. De Adventure Mode? Een paar uurtjes meer dan dat, en hoewel ook die nergens uitdagend wordt vertelt het wel een vermakelijk verhaal over Mario en Luigi die als baby’s hun tennis-skills moeten oppoetsen vanwege… bijzondere redenen.

Er zijn ook drie Challenge Towers met allerlei unieke uitdagingen die eventjes vermaken. In mix-up vinden we tennis, maar dan met regels en omstandigheden die alleen het Mushroom Kingdom kan bieden, en dat was het wel zo’n beetje. Wie Mario Tennis Fever alleen speelt is een weekend zoet en heeft zich prima vermaakt. Maar sportgames zijn er, natuurlijk, om je competitieve aard los te laten op vrienden, familie, kroost of online uitdagers.

Leuk

Daarom wil ik het ook niet al te uitgebreid over die singleplayermodi hebben. Ja, Nintendo heeft z’n best gedaan. Ja, er is weinig aan te merken op de minigames en kleine tussenscènes die de Tennis Academy te bieden heeft en de ontwikkelaars verdienen het dat het hier even aangestipt wordt. Nooit sla je stijl achterover van briljante ideeën of concepten, en er wordt geen druppeltje zweet gemorst van de spanning. Maar ‘leuk’ is eigenlijk een perfect, allesomvattend begrip om deze kant van de game te omschrijven.

De echte graadmeter echter, is de kern van de gameplay. Hoe speelt het? Hoe diep gaat het? Hoeveel personages, gekke rackets en super-power-mega-skillmoves zijn er in dit pakketje gepropt en hoe verhouden die zich tot elkaar? Na mening middag ballen overslaan of in dubbelspel terugslaan met mijn zoontje van 9, zijn we eruit: Mario Tennis Fever heeft ontzettend lekkere gameplay.

Content is king

Content is in de eerste instantie de name of the game. Er zitten bijna veertig personages in de game, meer dan een dozijn verschillende banen en de hoofdattractie is de aanwezigheid van tientallen Fever-rackets, die elk hun eigen unieke skill met zich meebrengen. De bananentros die Donkey Kong een ‘racket’ noemt strooit bananen over de baan, met het vulkaanracket plopt er een (je raadt het nooit) vulkaan op uit de baan en het Thwomb-racket zorgt ervoor dat het iconische stenen blok uit de Mario-serie plots uit de lucht valt – hopelijk op een tegenstander. Een zogeheten Fever-shot is verder ook geen hogere wiskunde. Om de zoveel tijd is je metertje vol en ram je dat ding over de baan heen.

Extra fijn is dat het gros van dit alles vrij te spelen is waar je maar wil. Laat je de singleplayermodi links liggen en speel je gewoon wat potjes tegen elkaar? Geen probleem, om de zoveel potten krijg je een nieuw racket, personage, of kleurtjes voor je favoriete tennissers.  

Watch on YouTube

Plak er een voldoende op

Enfin, tot zover de uitleg en alles wat hier te vinden is. Leuk spelletje, plak er een voldoende op en klaar, toch? Nou nee, want hoewel alles hierboven zijn eigen rol speelt, zijn het de diepere lagen daaronder die Mario Tennis  Fever tot grotere hoogten dan ‘plak er even een voldoende op’ stuwen. Al die personages? Die beschikken over hun eigen stats en eigenaardigheden. Wario laadt z’n powershots razendsnel op, Bowser Jr. legt veel meer precisie in z’n topspincurve dan anderen en Shy Guy slaat zijn topspins zonder gehinderd te worden door zijn positie op de baan.

En die banen? Die hebben elk hun eigen ondergrond, waar ballen anders op stuiteren en doorschieten, terwijl spelers zelf ook sneller of minder snel zijn, gebaseerd op het gras of het hardcourt waar ze op spelen. Die Fever-rackets? Oprecht allemaal een andere smaak. Ook daar merk dat extra stukje diepgang waar een wat luiere Mario-sportgame niet aan zou denken: wanneer je een Fever-shot terugslaat vóórdat op jouw zijde van het net landt, kun je met een stuit op de helft van de tegenstander zomaar eens het bijbehorende effect teruggeven. Prettig vervelend als je denkt die koter een modderplas op zijn helft te bezorgen, om ‘m vervolgens zelf om je oren te krijgen als hij de bal vakkundig over je heen lobt en ‘ie alsnog op jouw achterveld terecht komt. Een (modder)koekje van eigen deeg noemen ze dat geloof ik.

Mario Tennis Fever

Slide
Slide
Slide
Slide

Geen Lego, wel Duplo

Al die extra aandachtspuntjes en omstandigheden zijn ook nog eens gebouwd op een fundering van onkreukbare basisgameplay. Topspins, slices, curveballen, lobs en powershots: alles wat je van een tennisgame mag verwachten zit erin. De grote maar is alleen: het gebeurt allemaal zonder de nuance van een échte topgame. Vergelijk het een beetje met Lego en Duplo. Zelfde principe, zelfde soort blokken, maar iets vets bouwen met Lego hit net even anders dan iets vets bouwen met die grote Duplo-blokken. Zo verhoudt deze game zich ook tot de toppers uit het tennisgenre, zoals Virtua Tennis en Topspin. Is veelgevraagd, ik weet het, maar het is wel het verschil tussen goed of geweldig. En Mario Tennis Fever eindigt in het eerste kamp.

Is mijn zoontje naar school, dan heb ik namelijk geen enkele reden om Mario Tennis Fever verder te spelen. Zoals gezegd is al die singleplayercontent niet meer dan ‘even leuk’. En computergestuurde tegenstanders geven zelfs op het hoogste niveau nooit écht tegengas. Bovendien zijn de personages net te groot voor deze banen om het volgende niveau van verfijning te bereiken. Top, zo’n lob. Maar vanwege de dus relatief kleine banen blijft het geen zekerheidje dat je iemand ermee verschalkt die tegen het net aan staat. Aanzienlijke kans dat ie gewoon op tijd de achterlijn haalt, als ie ook maar een klein beetje inzicht heeft. Het zorgt ervoor dat Mario Tennis Fever een absoluut geslaagde game is, met heerlijke multiplayer. Maar wie de eindeloze diepgang en speeluren van, bijvoorbeeld, een Mario Kart World hier zoekt, staat sneller dan gewenst buitenspel. Oh wacht, verkeerd sport…

Mario Tennis Fever is vanaf 11 februari beschikbaar voor Nintendo Switch 2.

Goed
Conclusie

Mario Tennis Fever barst van de content. De vele personages, banen en rackets geven unieke, diepere lagen aan de gameplay en multiplayerpotjes gaan met grote glimlach en een berg vertier gespeeld worden. Jammer voor de wat volwassenere spelers dat die volgende laag diepgang nét niet geraakt wordt. Daarvoor is het singleplayeraanbod niet genoeg, de tegenstanders niet uitdagend genoeg en ontbreekt er hier en daar net wat finesse. Maar ga zo door, Nintendo. Mario Tennis Fever zit namelijk wél in de richting van die tijdloze Camelot-klassiekers waar we zo naar hunkeren.

Plus- en minpunten
  • Flinke hoeveelheid content en modi
  • Sterke basisgameplay
  • Uiteenlopende Fever-rackets
  • Nog altijd sterke multiplayer
  • Daagt je nooit écht uit
  • Diepgang niet eindeloos