-

De Duurzame Website: zo gaat je site eindeloos mee

Het web is een fantastische plek. Een plek van inspiratie, informatie, vermaak en sociale interactie. Maar het web is ook een plek van gigantische verspilling. Verspilling van tijd, verspilling van geld, verspilling van energie. En bovenal: verspilling van kansen. Heel veel websites worden gebouwd en vervolgens verwaarloosd. Tot men na een jaar of twee, drie het niet meer kan aanzien. Dan is ineens niets meer goed aan de site en moet er een hele nieuwe komen. In dit artikel wordt beschreven hoe je deze verspilling kunt voorkomen: De Duurzame Website.

Minder verspilling
Met duurzaam bedoel ik niet dat je website de klimaatverandering zal helpen stoppen, al heeft een duurzame aanpak indirect zeker ook op dat gebied zo z’n voordelen. Minder verspilling is altijd goed per slot van rekening. Maar ik hanteer het woord duurzaam in de zin zoals het ooit is bedacht: “weinig aan slijtage of bederf onderhevig” (Van Dale).

Stevige basis
De Duurzame Website is gemaakt voor verandering. Bij de Duurzame Website kun je probleemloos aan allerlei verschillende knoppen draaien om je doelen te bereiken. Andere content? Geen probleem. Nieuwe huisstijl doorvoeren? Fluitje van een cent. Nieuwe functionaliteit programmeren? No problem! Met een Duurzame Website bouw je altijd door op een stevige basis, zonder dat je werk hoeft weg te gooien of opnieuw te doen. Op termijn scheelt dit heel veel tijd en dus geld.

De duurzame website infographic

Wat gaat er bij veel websites fout?
De belangrijkste redenen waarom websites worden verwaarloosd zijn:

• Er is geen content management systeem, waardoor elke update ingewikkeld en kostbaar is.
• Er is een content management systeem, maar de gebruikers kunnen er niet mee overweg.
• Binnen de organisatie is er niemand die zich eindverantwoordelijk voelt voor het goed functioneren van de website.
• Er zijn geen meetbare doelen gesteld waaraan de website zou moeten voldoen.
• De website wordt niet met enige regelmaat getest met echte gebruikers.
• Er is geen budget vrijgemaakt om de website na oplevering te blijven verbeteren.
• Veel mensen denken dat de ‘boom-bust’ cyclus van elke twee, drie jaar een nieuwe site de normale gang van zaken is. Ze staan er niet bij stil.

Hoe maak je een duurzame website?
Om een duurzame website te maken, moeten zowel de webbouwer als de opdrachtgever een aantal oude gewoontes afleren. De webbouwer zal van de nog steeds veel gebruikte ‘waterval-methode’, waarbij een website in verschillende fases sequentieel worden opgeleverd, moeten overstappen naar de ‘agile development methode’. Volgens die methode wordt het project in een aantal kleine deelprojecten (jargon: sprints) verdeeld van telkens een week of een maand. Het gaat hier te ver om diep in te gaan op agile development. Maar als je erop googled, vind je er heel veel informatie over. Als je al agile werkt. Top! De eerste stap heb je dan al gezet.

Hechte samenwerking
Als opdrachtgever zul je de organisatie rondom je website moeten aanpassen. Dat betreft vooral het doorlopend beschikbaar stellen van mankracht en budget in plaats van het eens in de paar jaar. Jij en je webbouwer zullen ook beiden moeten streven naar een langdurige, hechte samenwerking. Dat klinkt misschien duur, maar op termijn is het veel efficiënter en bovendien veel effectiever.

Basis
De basis van een duurzame website is een ijzersterke kern. Deze kern bestaat uit twee onderdelen:

• Een robuust platform
• Gestructureerde content

Robuust platform
Een robuust platform is een framework en CMS dat in de basis heel betrouwbaar is en flexibel is in te richten. Mijn voorkeur gaat uit naar Open Source frameworks. Er zijn er heel wat. Ik ga hier geen specifieke systemen uitlichten, maar let erop dat je een systeem kiest dat werkt volgens een duidelijk ontwerppatroon. Bijvoorbeeld het Model-View-Controller (MVC) patroon. Wikipedia: “MVC deelt het ontwerp van complexe toepassingen (zoals veel websites – EvH), op in drie eenheden met verschillende verantwoordelijkheden: datamodel (model), datapresentatie (view) en applicatielogica (controller). Het scheiden van deze verantwoordelijkheden bevordert de leesbaarheid en herbruikbaarheid van code. Het maakt ook dat bijvoorbeeld veranderingen in de gebruikersinterface niet direct invloed hebben op het datamodel en vice versa.”

Gestructureerde content
Om je website duurzaam te maken, is het essentieel dat je inhoud publiceert die volledig is gescheiden van de opmaak en code. Om ervoor te zorgen dat je website de content altijd in de juiste context toont, is het belangrijk dat de content een logische structuur heeft. Elk bouwsteentje met content moet je voorzien van metadata die beschrijft wat voor content het is, zodat de software weet wat hij ermee moet doen. Op die manier kun je ervoor zorgen dat jouw inhoud volledig tot z’n recht komt op elk apparaat dat jou met je doelgroep verbindt.

Gestructureerde content geeft je de gedetailleerde controle over de inhoud die je nodig hebt om al je content op één plek te bewaren en van daaruit op verschillende platforms te publiceren. Voor deze aanpak bestaat een mooi acroniem: C.O.P.E. Create Once Publish Everywhere. Je plaatst als het ware al je content in een Content API (Application Programming Interface) waarmee de software van je website kan ‘praten’.

Gestructureerde content infographic

Drie hoofdelementen
Rond de vaste kern van platform en gestructureerde content bestaat de Duurzame Website uit drie hoofdelementen die onafhankelijk van elkaar zijn aan te passen aan nieuwe inzichten, veranderende markten, innovaties etcetera.: strategie, design en techniek.

Strategie
Bepaal voor je website een langetermijnstrategie. Bepaal je zakelijke doelstellingen. Breng je doelgroep in kaart. Stel meetbare doelen op en koppel daar tijd, mankracht en geld aan. Content is de basis van elke website. Dus zodra je strategie duidelijk is, bepaal je in meer detail je contentstrategie. Deze bestaat uit vier componenten gelijkelijk verdeeld over inhoud en mensen. De content bestaat uit structuur en stof (inhoud). De menselijke componenten zijn workflow en beheer. Tesamen vormen deze componenten de contentstrategie. Met andere woorden: de constrategie beschrijft welke doelen de content moet dienen. Hoe de content wordt gestructureerd. Welke typen content er zijn. Door wie de content wordt geproduceerd en hoe. En op welke wijze de content zal worden gepubliceerd en waar. Ten slotte beschrijft een website responsibility matrix de organisatie van het hele proces, met name wie wanneer waarvoor verantwoordelijk is.

Design
Alles wat de gebruiker ervaart, hoort bij het ontwerp. Van logo tot laadsnelheid. Van navigatie tot foutmelding. Alle oplossingen die invloed hebben op de gebruikerservaring horen bij design. Hanteer daarom een holistische kijk op design. Een duurzaam ontwerpproces is dan ook niet heel scherp afgebakend. Het omvat alles vanaf de eerste ruwe schetsen tot aan de kleinste details. Bij de duurzame website heb je gelukkig alle vrijheid om je design zo vaak als je wilt aan te passen. Dit kan omdat de presentatielaag – waarin de visuele taal van je website is opgeslagen (de zogenaamde templates) – daadwerkelijk gescheiden werkt van de content en de techniek. Een compleet nieuwe huisstijl betekent dus gelukkig niet gelijk een nieuwe website. Dit klinkt misschien heel logisch, maar in de dagelijkse praktijk valt dit nog vies tegen. Heel veel bestaande websites zijn een drama om aan te passen aan een nieuwe huisstijl. Bij de duurzame website is dit een fluitje van een cent.

Techniek
Het is onmogelijk om vantevoren te bedenken welke functionaliteiten je website over 5 jaar aan z’n gebruikers moet bieden. Daarom is het van groot belang dat je nieuwe functionaliteit aan je website kunt toevoegen en verouderde functionaliteit veilig kunt verwijderen. Om aangepaste en nieuwe functionaliteit beheersbaar te houden is het belangrijk dat deze objectgeoriënteerd van opzet is. Dat is een werkwijze waarbij code goed wordt gestructureerd met het oog op de overzichtelijkheid, herbruikbaarheid van componenten en dergelijke. Zo zorg je ervoor dat alle aanpassingen van de functionaliteit van de website ook weer duurzaam van aard zijn.

Basis gelegd
De basis voor de Duurzame Website is nu gelegd. Inhoud, design en techniek zijn strikt gescheiden en gestoeld op een robuust platform en gestructureerde content. Het resultaat is dat je vanaf hier door kunt bouwen op deze solide basis. Dat is een fundamenteel verschil met websites die niet op deze manier zijn gebouwd. Websites waar de inhoud, opmaak en code in dezelfde bestanden staan. Dit is het geval bij alle statische websites die geheel uit losse html-pagina’s bestaan. En ook bij de meeste contentmanagementsystemen met WYSIWYG editors.

Onderhoud
Heel belangrijk voor het goed beheren van elke website is het verrichten van periodiek onderhoud. Dit onderhoud kan bestaan uit het verbeteren van foutjes, het verhelpen van bugs en uit het doorvoeren van verbeteringen en nieuwe mogelijkheden voor de bezoekers. Bij niet duurzame websites wordt het onderhoud vaak verwaarloosd, omdat het lastig, kostbaar en ingewikkeld is. De Duurzame Website is voor onderhoud gemaakt. Onderhoud en verbeteringen doorvoeren in een duurzame website is goedkoop, makkelijk, snel en veilig.

Gebruikerstests
Aan de basis van het onderhoud ligt een programma van periodieke (liefst maandelijkse) gebruikerstest. Dat klinkt misschien kostbaar, maar dat hoeft het niet te zijn. Reserveer met een klein team van 1-3 stakeholders van de website maandelijks een ochtend om bepaalde taken die bezoekers moeten kunnen uitvoeren te testen met echte mensen. Dit mogen gewoon collega’s zijn die niet nauw bij de website betrokken zijn. Maar ook klanten, vrienden, toevallige voorbijgangers. Twee of drie per keer is genoeg. Laat ze de taken uitvoeren terwijl je registreert wat ze doen en vooral hoe ze reageren. Doe dit bij voorkeur op video. Er bestaan prima betaalbare programma’s voor, zoals bijvoorbeeld Silverback. Bespreek de bevindingen dezelfde dag en bedenk oplossingen. Een heel goed boek over hoe je periodieke gebruikerstests het beste kunt aanpakken is Rocket Surgery made Easy van Steve Krug.

Agile development
Je hebt nu een website die optimaal geschikt is voor het doorvoeren van aanpassingen. Deze aanpassingen kunnen voortkomen uit de gebruikerstests, maar het kunnen ook jouw eigen wensen zijn. Zet je gewenste aanpassingen in volgorde van belangrijkheid op een ontwikkelagenda (road map). Hanteer voor de aanpassingen bij voorkeur de Agile development methode. Tijdens elke aanpassing doorloop je dan een proces van het opstellen van eisen en wensen, ontwerpen en programmeren, testen en feedback vragen, en implementeren.

Agile development infographic

Als je dit systeem gedisciplineerd volhoudt, zal je website nooit verouderen of onbruikbaar worden. Je zult je nooit meer schamen om je URL aan iemand door te geven. Je hebt dan namelijk een Duurzame Website en daar mag je altijd trots op zijn.

Meer lezen?

Denk jij dat de Duurzame Website de oplossing is tegen de verspillende cyclus van elke paar jaar een compleet nieuwe website? Of zijn er andere, betere manieren? Of vind je het eigenlijk helemaal geen probleem? Stel je vragen. Deel je ideeën. Doe mee aan de conversatie hieronder.

 

Deel dit bericht

4 Reacties

van Deurzen

Wat een enorm achterhaald artikel zeg… Bijna alle sites worden tegenwoordig en al jaren lang, ook de kleintjes, met CMS-en gebouwd. Of dit nou grotere, duurdere zijn of kleinere opensource (als WordPress etc.). Daarnaast wil je juist elke X jaar een complete makeover en gaat dat met een CMS dus al prima en ook niet ten koste van de content…
Probleem zit m meer bij webbouwers die het beheer er niet bij aankondigen terwijl ze het wel hebben en zodoende doen alsof een site duur is – daar zijn er te over van!

Eric van Hall

Beste Van Deurzen,

Bedankt voor je feedback. Ik wil er wel even op reageren.

Ik geef nergens aan dat een CMS de oplossing is. Het gaat hem juist om gestructureerde content. Liefst in een content API en draaiend op een MVC platform (de meeste CMS-en bieden dit zeker niet standaard).

Maar meer nog om een hele andere samenwerking tussen opdrachtgever en webbouwer dan gebruikelijk is.

Waarom zou je perse elke X jaar een complete makeover willen? Daar zijn ook grote risico’s aan verbonden. Mijn punt is dat juist die manier van denken achterhaald is.

Mike van Hoenselaar (@MikevHoenselaar)

Beste Van Deurzen,

Het artikel is minder achterhaald dan je zou denken.
Door het uit elkaar halen van content, techniek en weergave en werkt volgens een agile methode zul je bij de top 10% van webontwikkeling van Nederland horen.

Vooral nu Lean UX en Lean in zijn geheel opwaartse stroom aan het maken is past deze gedachte hier prima bij. Zodra je agile projecten op pakt zul je lean makkelijker kunnen omarmen.

Ik vraag me dan ook af of je het complete artikel gelezen hebt.
Je hebt helemaal gelijk dat er webontwikkelaars die niet helemaal eerlijk zijn over beheer van websites. Het voordeel van open source is dat de vijver van webontwikkelaars erg groot is en je dus altijd iemand kunt zoeken die wel bij je past.

Je argument betreft om de X jaar complete makeover ben ik het niet mee eens. Dat is ook wat Eric zegt. Je wil juist optimaliseren. Zorgen dat de data die je verzamelt over het gebruiksgedrag van je bezoeker ingezet kunnen worden om de website nog beter te maken.

Prima artikel die goede basis geeft hoe je langer met je website kunt doen door enkele dingen vooraf anders aan te pakken.

Sjef van Leeuwen

Er komt wel een kleine verschuiving in MVC technologieen. Dit heeft te maken met Comet server technologie (web sockets) en push technologie. Maar over het algemeen is model view controller pattern hier prima in te passen.

Laat ik specifiek een MVC implementor noemen: Microsoft. in MVC5 (onderdeel van visual studio 2013 die nog in beta is), zal er push technologie verweven worden in de vorm van web sockets (anders dan AJAX) samengevoegd met hun werkgroep welke met onder de naam SignalR deze push technlogie biedt binnen MVC. Daarnaast is men nu bezig om op datzelfde platform SignalR.Reactive te bieden (nog niet zeker of die het gaat halen). Weke observable patterns op de client naadloos verbind met de business logica op de server via push. (onderliggend RxJs).

MVC is zeker een goede adoptie als design pattern je beweegt je in laatst genoemde welliswaar meer naar MVVM (meer event driven), maar MVVM is gebaseed op MVC.

Het programmeer model wordt ook eenvoudiger, omdat er geen roundtrips zijn en je minder hoeft te doen om session state te behouden met de client.

Een goede web site bouwer zal zeker in staat zijn om zo’n site van MVC naar MVVM te “mirgreren”. Dit zal altijd deels zijn, sommige onderdelen van een site hoeven deze level van event driven helemaal niet te hebben en is MVC dus een prima fallback.

Plaats een reactie

Uw e-mailadres wordt niet op de site getoond