Static site generators vs dynamische websites vergelijking;

en waarom ik voor dynamisch kies

Wat is een static site generator?

Hugo is a goed voorbeeld voor een statische site generator.
Het doel van een statische site generator is om een snelle website neer te zetten zonder dat er een database en backend nodig is.
En dan bedoel ik ook écht snel, wat gelijk het grootste voordeel is van een statische site generator. Alle pagina’s zullen voornamelijk html bestanden zijn met wat JavaScript. Server specifieke programmeertalen zijn hierin niet nodig.
Ook kan de hosting een stuk goedkoper, want de hosting partij hoeft geen server specifieke programmeertalen te ondersteunen zoals PHP, omdat er geen dynamische content wordt gegenereerd. Het neemt dus veel minder ruimte in beslag op een server dan wanneer er een database nodig zou zijn, zoals bijvoorbeeld met WordPress.

Maar elke keer als je een blog post op de frontpage ook als nieuwste post wil zien staan, moet je de frontpage opnieuw aanpassen en die post toevoegen om de pagina up to date te houden.
Als voorbeeld, een ‘most popular posts’ blok kan niet vanzelf de populairste posts laten zien m.b.v. een dynamische check op de achtergrond. Bij een statische site generator zul je dit blok dus elke keer moeten aanpassen door posts toe te voegen nadat je zelf hebt uitgezocht of een post de populairste is of niet.
En dit terwijl je elke individuele post pagina ook al zelf elke keer moet aanmaken.

Ook heb ik wat tutorials opgezocht van verschillende tools en deze zijn niet het meest helder en daarnaast is het dus ook geen makkelijke manier om een website na oplevering te onderhouden. Er komt nog erg veel specifieke kennis bij kijken.
En dit lijkt met de meeste statische site generators zo te zijn en dat is een nadeel.

Een ander nadeel van statische site generators is dat er geen specifieke pagina getoond kan worden afhankelijk van een login. Sterker nog, inloggen per gebruiker is niet eens mogelijk op deze manier!

Dus uiteindelijk zijn er absoluut een aantal voordelen, zoals de super snelheid van de website zelf en ik vermoed dat het voor kleinere websites die niet veel updates nodig hebben misschien zelfs een erg goede keuze zou zijn. Maar dat is alleen als je achteraf niet veel dingen meer toe hoeft te voegen. Voor een blog of nieuwspagina is dit dus al niet meer toereikend.

Dus laten we een stap verder zetten en onze volgende optie bekijken, zullen we? Dynamic websites.

Wat is een dynamische website?

Facebook, Twitter en Instagram. We kennen ze allemaal en waarschijnlijk gebruiken we deze zelf ook ( allemaal ).
Dit zijn steengoede voorbeelden van dynamische websites. De content welke getoond wordt, is helemaal dynamisch.

Na een login wordt er gekeken naar de gebruikers rechten en dit zal een compleet “eigen” pagina opbouwen waar je een overzicht ziet van jouw vrienden en wat ze hebben gepost.
Maar niet alleen dat is een dynamische website.

Laten we eens een redelijk simpele, normale bedrijfswebsite voorstellen.
Deze website wil graag de bezoekers een geweldige ervaring geven en uiteindelijk moet de bezoeker omgezet worden in een klant.
Om dit te bereiken willen we op deze website dynamische content laten zien om bezoekers te verleiden om door te klikken, dieper de website in.

Dus willen we op de frontpage een blok laten zien met de meest populaire posts van dat moment, gezamenlijk met een paar nieuwste posts.
Dit betekend dat we op de achtergrond moeten checken zodat alle content dynamisch wordt opgehaald en opgebouwd.
Op een dynamische website is dit geen enkel probleem, want daarin kunnen we zonder problemen alles laten werken zoals het is bedoeld en worden de frontpage blokken automatisch ge-update zonder dat het nodig is om eerst die frontpage weer handmatig aan te passen zodat de juiste posts worden getoond.

Ik neem WordPress als voorbeeld voor bovengenoemde. Er zijn in eerste instantie al een hoop plugins die iets kunnen met de posts en de manier hoe ze getoond worden op de website.
Het grote voordeel van WordPress is het admin panel waar een medewerker in kan loggen in een nieuwe post online te zetten. Het enige wat deze medewerker hoeft te doen is de post te typen in het invoerscherm, op ‘bijwerken’ klikken en deze blinkende nieuwe post staat al direct op de website.

Zelfs als op de frontpage een blok heeft voor de ‘laatste blog posts’ zal WordPress er op de achtergrond voor zorgen dat daarin ook de net geplaatste post wordt getoond.
Er hoeft verder niks aan deze frontpage te worden bijgewerkt, want dit wordt allemaal dynamisch opgehaald zoals dat met een statische site generator wel elke keer moet gebeuren.
Maar waarom kies ik er nu eigenlijk voor om dynamische websites te maken?

Waarom een Dynamische website mijn voorkeur heeft?

Die vraag kan ik met 1 woord beantwoorden => WordPress. Daar hou ik van! Het is mijn favoriete CMS om mee te werken als een maatwerk thema developer!

Voor mij is WordPress dé tool om voor te gaan als het neerkomt op het bouwen van websites. Normaal gesproken kan WordPress best wel eens langzaam zijn, maar met een maatwerk thema is het mogelijk om een supersnelle website neer te zetten!
Ook is het niet nodig om elke keer alle pagina’s waar bepaalde posts voorbij komen te moeten updaten. Alle dynamische content kan opgezet en gecontroleerd worden in de backend en als een maatwerk thema éénmaal klaar is en draait is het echt een eitje om bij te houden en verschillende pagina’s te wijzigen of toe te voegen.

Zoals boven al genoemd, kan een medewerker binnen het WordPress admin panel inloggen en hoeft niemand zich zorgen te maken over de werking van de website.
Het enige wat een medewerker hoeft te weten is hoe men een post kan toevoegen via het admin panel en het CMS systeem zorgt er automatisch voor dat de juiste content overal wordt getoond.

Dit maakt het voor mij erg makkelijk om voor dynamische websites te kiezen en natuurlijk zijn er meer keuzes naast WordPress, dus neem eens een kijkje wat er allemaal mogelijk is en ik hoop dat ik hiermee mensen heb kunnen helpen bij de vergelijking tussen statische site generators en dynamische websites.

Tot de volgende keer bij mijn volgende post!

Terug naar overzicht