Waarom ik de websites van mijn klanten bouw met Joomla
Toen ik SoftForge begon, onderhield ik nog mijn eigen contentmanagementsysteem. Al is "systeem" eigenlijk een te groot woord. Het was een matig in elkaar gezette verzameling code die ik in mijn eentje overeind probeerde te houden, ontstaan uit één ogenschijnlijk eenvoudige wens van een klant. Ze wilden om vier uur 's nachts kunnen inloggen en zelf een artikel publiceren. Dat was alles. Dat was de volledige opdracht. En eerlijk gezegd bracht die me bijna tot wanhoop. Maar de oplossing was nabij.
Na maanden – die als jaren voelden – van het onderhouden van mijn eigen CMS, ging ik op zoek naar iets beters. Zo kwam ik uit bij Mambo, destijds een bekroond contentmanagementsysteem. Ik keek ook naar WordPress en Drupal, maar Mambo sprak mij het meest aan.
En toen gebeurde er iets onverwachts. Vrijwel van de ene op de andere dag kreeg Mambo een concurrent: Joomla.
Ik besloot er serieus naar te kijken. Wat mij direct aansprak, was de ambitie van de ontwikkelaars. Ze wilden met hun tijd meegaan, een degelijk MVC-framework neerzetten en de architectuur vanaf de basis goed opbouwen. Voor mijn gevoel stonden de ontwikkelaars centraal in hun keuzes, en dat gaf vertrouwen. De kennis die ik had opgedaan met mijn eigen, gammele CMS zou daardoor niet verloren gaan.
Toen ik de broncode bestudeerde, viel me op hoe vaak de Joomla-ontwikkelaars precies dezelfde problemen hadden opgelost waar ik zelf maandenlang mee had geworsteld.
Dat was voor mij het beslissende moment.
Waarom zou ik in mijn eentje een complete codebase blijven onderhouden, terwijl een heel team van specialisten hetzelfde werk deed, beter nog, en het bovendien gratis beschikbaar stelde?
Dus maakte ik de overstap.
In die periode was er behoorlijk wat druk om voor WordPress te kiezen. Iedereen leek op die trein te springen. Toch voelde Joomla voor mij als de betere keuze. Ik begreep de code, kon deze uitbreiden en zag hoe het platform zich ontwikkelde. Achteraf gezien is dat waarschijnlijk een van de beste zakelijke beslissingen die ik ooit heb genomen.
Een keuze waar je jarenlang mee leeft
Het bijzondere aan die beslissing is dat ik hem nog steeds elke dag ervaar.
Elke website die mijn bureau bouwt, is een website waar we vaak jarenlang verantwoordelijk voor blijven. Niet alleen de glanzende versie die op de dag van de oplevering live gaat, maar juist de praktijk daarna.
De website die achttien maanden later een beveilig website waarop een klant op vrijdagmiddag nog snel een telefoonnummer wil aanpassen.
De website die achttien maanden later een beveiligingsupdate nodig heeft.
De website waar een nieuwe medewerker zonder voorkennis mee moet leren werken.
Als je een digitaal bureau runt, kies je eigenlijk niet alleen een CMS voor een project. Je kiest een platform waar zowel jij als je klant nog jarenlang mee verder moeten.
En precies daarom grijp ik, al die jaren later, nog steeds naar Joomla.
De kosten waar niemand het tijdens de verkoop over heeft
Voor een bureau zijn gezonde marges essentieel. Daarom begint het verhaal uiteindelijk altijd bij de kosten.
Het probleem van veel platforms zit namelijk niet in de aanschafprijs, maar in de eindeloze stroom aan abonnementen die daarna volgt.
Wil je een goed rechtenbeheer voor gebruikers? Dan heb je een plugin nodig.
Meertaligheid? Nog een plugin.
Custom fields? Weer een plugin.
Daar komen vervolgens formulieren, back-ups, ledenbeheer en allerlei andere uitbreidingen bij. Elk met een eigen maand- of jaarabonnement dat steeds opnieuw verlengd moet worden. Uiteindelijk betaalt de klant daarvoor, of gaat het ten koste van je eigen winst.
Bij Joomla ligt dat anders.
Veel functionaliteit zit standaard in het systeem.
Zo beschikt Joomla al over uitgebreide gebruikersrechten, zodat klanten hun eigen content kunnen beheren zonder per ongeluk de hele website te beschadigen.
Meertaligheid is onderdeel van de kern van het systeem en niet iets dat achteraf is toegevoegd.
Ook custom fields, contentworkflows, een volledige Web Services API en uitgebreide mediabeheerfunctionaliteit zijn standaard aanwezig.
Daardoor begin je een project niet met een lijst van noodzakelijke abonnementen, maar met een platform dat de belangrijkste mogelijkheden al in huis heeft.
Houd het eenvoudig, houd het schoon
Toch heb ik in de loop der jaren nog iets belangrijks geleerd.
Wanneer je net begint als bureau, is de verleiding groot om zoveel mogelijk extensies te installeren. De Joomla Extensions Directory staat vol prachtige oplossingen die tijdens een demonstratie allemaal onmisbaar lijken.
Maar iedere extensie die je toevoegt, betekent ook dat je afhankelijk wordt van de kwaliteit en het onderhoud van iemand anders.
Na verloop van tijd leer je welke ontwikkelaars betrouwbaar zijn en welke projecten na een jaar worden verlaten.
Voor mij kwam die kennis vooral door regelmatig bijeenkomsten van Joomla London te bezoeken. Daar hoorde je steeds dezelfde namen terug: ontwikkelaars die kwalitatief hoogwaardige extensies bouwen en die hun producten jarenlang blijven onderhouden.
Dat zijn de extensies die uiteindelijk een vaste plek in mijn gereedschapskist hebben gekregen.
In mijn beginjaren maakte ik precies de tegenovergestelde fout. Ik bouwde websites vol met allerlei uitbreidingen, simpelweg omdat het kon.
Al snel ontdekte ik dat de beste aanpak juist is om zoveel mogelijk gebruik te maken van de functionaliteit die Joomla standaard biedt, en alleen een extensie te installeren wanneer daar echt een goede reden voor is.
De meeste van mijn klanten hebben bijvoorbeeld helemaal geen webshop nodig. Waarom zou ik dan standaard een compleet e-commercepakket installeren?
Elke extra uitbreiding vormt immers ook een extra potentieel beveiligingsrisico.
Een slanke website is niet alleen overzichtelijker en eenvoudiger te beheren, maar ook veiliger.
Lean and clean wint uiteindelijk altijd.
De sleutels overdragen zonder bang te zijn voor dat telefoontje
De grootste kostenpost van een klantwebsite zit niet in het bouwen ervan, maar in alles wat daarna komt.
Iedere eigenaar van een digitaal bureau kent het fenomeen: een eindeloze stroom "kleine vraagjes". Even snel iets aanpassen, een nieuwe medewerker uitleg geven, of een klant die per ongeluk iets heeft veranderd en niet meer weet hoe het terug moet.
Juist daar bewijst Joomla voor mij zijn waarde.
Dankzij het uitgebreide rechtenbeheer kan ik iedere gebruiker precies de toegang geven die hij of zij nodig heeft. De marketingmedewerker kan bijvoorbeeld probleemloos een nieuwsbericht publiceren, zonder ook maar in de buurt te komen van de instellingen waarmee de homepage of andere belangrijke onderdelen van de website kunnen worden gewijzigd.
Daarnaast zijn er de Guided Tours – een functie waar ik eerder al over heb geschreven en die wat mij betreft nog steeds veel te weinig aandacht krijgt.
Met Guided Tours kun je stap-voor-stap handleidingen maken die rechtstreeks in de beheeromgeving van Joomla verschijnen. In plaats van telkens opnieuw een schermopname te maken of een uitgebreide handleiding te schrijven, bouw je de uitleg één keer. Daarna begeleidt Joomla iedere nieuwe medewerker automatisch door de benodigde stappen.
Dat scheelt verrassend veel telefoontjes.
Bovendien kun je de beheeromgeving voorzien van de huisstijl van de klant en de standaard Joomla-branding grotendeels vervangen. Daardoor voelt de website voor de klant echt als een eigen werkomgeving in plaats van een generiek CMS.
Je levert niet alleen een website op, maar een beheersysteem dat intuïtief aanvoelt en ook zonder jouw voortdurende hulp goed blijft functioneren.
Beveiliging waar ik met overtuiging achter sta
Wie websites voor klanten bouwt, draagt automatisch ook verantwoordelijkheid voor de beveiliging ervan.
Zelfs als dat juridisch niet volledig in je onderhoudscontract is vastgelegd, zal een klant jou bellen zodra er iets misgaat.
En geloof me: "Dat lag aan een plugin van een andere leverancier" is niet het antwoord dat je op zo'n moment wilt geven.
Dat is meteen ook de belangrijkste reden waarom ik zo sterk geloof in een slanke installatie. Hoe minder onderdelen een website bevat, hoe kleiner het aanvalsoppervlak.
Joomla biedt daarin een uitstekende uitgangspositie.
Updates worden cryptografisch ondertekend via The Update Framework, zodat je kunt vertrouwen dat een update daadwerkelijk afkomstig is van het Joomla-project en niet van een gecompromitteerde updateserver.
Daarnaast ondersteunt Joomla al jarenlang standaard multi-factor authenticatie (MFA). En sinds kort kunnen klanten ook gebruikmaken van passkeys, waardoor traditionele wachtwoorden zelfs helemaal overbodig worden.
Dat is belangrijk, want wachtwoorden blijven wereldwijd nog altijd de grootste oorzaak van beveiligingsincidenten.
Het mooie is dat ik hiervoor geen extra extensies hoef te installeren of aparte licenties hoef aan te schaffen.
Deze beveiligingsmaatregelen maken simpelweg deel uit van Joomla zelf.
En dat is precies wat je wilt wanneer je verantwoordelijk bent voor de digitale omgeving van iemand anders.
Een platform dat met je klant meegroeit
In mijn beginjaren bouwde ik ook enkele kleinere websites op WordPress.
Voor eenvoudige blogs leek dat destijds een logische keuze.
Maar naarmate die websites groeiden, werden ze steeds lastiger te onderhouden. Uiteindelijk heb ik ze vrijwel allemaal alsnog naar Joomla gemigreerd.
Daar heb ik een belangrijke les uit geleerd.
Joomla is tegenwoordig zó gebruiksvriendelijk geworden dat er eigenlijk geen goede reden meer is om een kleine website ergens anders te beginnen.
Sterker nog: wanneer je direct met Joomla start, hoeft de klant later niet van platform te wisselen zodra de organisatie groeit.
Dat heb ik onlangs nog bij een klant meegemaakt.
Wat begon als een eenvoudige bedrijfswebsite met slechts een paar pagina's, is inmiddels uitgegroeid tot een uitgebreid kennisplatform waar meerdere teams dagelijks content voor produceren.
Omdat de website vanaf het begin op Joomla draaide, hoefden we niets opnieuw op te bouwen.
We hebben simpelweg workflows ingericht, verschillende redactieteams toegang gegeven tot hun eigen categorieën en een goedkeuringsproces toegevoegd waarbij artikelen eerst worden gecontroleerd voordat ze gepubliceerd worden.
Geen kostbare migratie.
Geen ingewikkelde overstap.
Gewoon dezelfde website die met de organisatie is meegegroeid.
Dat is misschien wel de grootste luxe van een toekomstbestendig platform.
En juist op dat gebied ontwikkelt Joomla zich de komende jaren verder. Nieuwe versies richten zich steeds nadrukkelijker op organisaties met complexe redactieworkflows, grote hoeveelheden content en professionele beheerprocessen.
Voor bureaus betekent dat één ding: ook veeleisende klanten kunnen jarenlang op hetzelfde platform blijven werken, zonder tegen de grenzen ervan aan te lopen.
Het voordeel dat vrijwel geen enkel ander platform je kan bieden
Pas na jaren begon ik echt te beseffen wat Joomla onderscheidt van veel andere platforms.
Bij de meeste systemen ben je simpelweg klant. Je kunt een functieverzoek indienen, hopen dat iemand het oppakt, en vervolgens afwachten. Uiteindelijk bepaalt een roadmap waar jij geen invloed op hebt welke mogelijkheden jouw bureau volgend jaar wel of niet krijgt.
Bij Joomla werkt dat fundamenteel anders.
Je hoeft niet langs allerlei lagen van een organisatie om gehoord te worden. De mensen die Joomla ontwikkelen, zijn dezelfde mensen die je ontmoet tijdens bijeenkomsten, conferenties en in de online community. Ze staan open voor ideeën en luisteren daadwerkelijk naar de ervaringen van bureaus die dagelijks met klanten werken.
Dat maakt een wereld van verschil.
Sterker nog: je kunt bijdragen aan Joomla zonder dat je daar een fulltime vrijwilliger voor hoeft te worden.
Bij SoftForge hebben we verschillende oplossingen ontwikkeld voor betalende klanten. Sommige daarvan bleken ook voor andere Joomla-gebruikers waardevol te zijn. Samen met andere ontwikkelaars zijn die ideeën uiteindelijk onderdeel geworden van de Joomla-core.
Dat is misschien wel het mooiste aan open source.
Wat je ontwikkelt voor één klant, kan uiteindelijk duizenden andere gebruikers helpen.
Natuurlijk hoef je geen release manager te worden — zoals mij uiteindelijk is overkomen — maar de mogelijkheid is er wel. Iedere bijdrage, groot of klein, helpt mee om Joomla beter te maken.
En misschien nog belangrijker: je helpt mee een platform vorm te geven dat aansluit op de praktijk van bureaus zoals het jouwe.
Dat is een invloed die je bij gesloten platforms eenvoudigweg niet hebt.
Daar ben je gebruiker.
Hier kun je mede vormgever zijn.
Dus... je volgende project?
Ik zal nooit beweren dat Joomla voor élk project de juiste keuze is.
Geen enkele eerlijke bureau-eigenaar zal dat over welk gereedschap dan ook zeggen.
Maar de volgende keer dat je voor een nieuw klantproject moet bepalen welk CMS je gaat gebruiken, stel jezelf dan niet alleen de vraag welk platform er tijdens de oplevering het mooiste uitziet.
Vraag jezelf liever af:
Met welk platform ben ik over twee jaar, op een drukke vrijdagmiddag, nog steeds blij wanneer de telefoon gaat?
Dat is uiteindelijk de vraag die ertoe doet.
Voor een veel groter deel van de projecten van mijn bureau dan ik ooit had verwacht — terugdenkend aan die nachten waarop ik om vier uur 's ochtends mijn eigen haperende CMS overeind probeerde te houden — is het antwoord steeds weer hetzelfde geweest:
Joomla.
Geef het bij je volgende project een eerlijke kans.
En als je die stap zet, kom dan vooral eens kennismaken met de community.
Je zult merken dat er ontzettend veel bureau-eigenaren en ontwikkelaars rondlopen die tegen precies dezelfde uitdagingen aanlopen als jij. Mensen die hun kennis graag delen en elkaar vooruithelpen.
Misschien ontdek je wel dat Joomla niet alleen een prettig platform is om websites mee te bouwen, maar ook een verrassend fijne gemeenschap om samen een bedrijf in op te bouwen.