Donderdag, 26 augustus 2010

Ter illustratie: een jaar geleden las ik de blogpost van Jon Marks: “Wanneer mensen CMS zeggen op Twitter, bedoelen ze WordPress, Drupal of Joomla! Dus ik raakte een beetje in paniek. Ik ken WordPress. Af en toe komen we Drupal tegen in een selectieproces, en Joomla! eigenlijk nooit. Ik heb nog nooit een van die twee geïmplementeerd. Zijn we dan echt zo out of touch?”
Ik weet zeker dat een heleboel mensen meteen zouden denken dat Jon Marks inderdaad heel erg out of touch is. Want er zijn miljoenen sites die op WordPress, Drupal, en Joomla! draaien. Als mensen überhaupt al weten wat een CMS is, dan zijn die drie de archetypische voorbeelden. Ze zijn er bijna een synoniem voor geworden. Zo zeer zelfs, dat een serieuze Engelse krant als de Guardian WordPress als het ideale CMS voor de stad Birmingham aanraadt, en de auteur zich verbijsterd afvraagt waarom WP nooit een eerlijke kans kreeg: “Waarom was het niet goed genoeg voor Birmingham? Het lijkt er op dat de heersende gedachte is bij de overheid dat als je je niet blauw betaalt (of eigenlijk, de belastingbetaler), je geen waar voor je geld krijgt.”
Ja, ho eens even.
Natuurlijk, miljoenen mensen gebruiken deze systemen en zijn er ontzettend blij mee. Sterker nog, ik heb al vaker geschreven dat bijvoorbeeld WordPress een van de weinige systemen is die mensen daadwerkelijk prettig vinden om te gebruiken. Dat is dan ook de reden dat ze in de reviews die we bij de Real Story Group over web content management systemen schrijven hoog scoren op “simpele” scenario’s. Want de meeste van die miljoenen sites vallen in die categorie.
Aan de andere kant zijn er nog steeds geen multinationals die alles wat ze online doen, draaien op simpele, open source PHP systemen. En dat is niet omdat ze tegen open source zijn, of omdat ze denken dat PHP niet goed genoeg is, of omdat ze zich blauw willen betalen. Het is omdat dat soort systemen gewoon niet zo goed werken in hun situatie. (Overigens wil ik hier niet meteen alle open source PHP-systemen generaliseren, want sommige – zoals TYPO3 – zijn tamelijk complex. Daarnaast is bijvoorbeeld een open source .NET systeem als DotNetNuke juist weer tamelijk rechttoe rechtaan.)
Ik krijg vaak tegengeworpen dat je “alles” kunt doen met een bepaald CMS. En tot op zekere hoogte is dat natuurlijk waar. Maar het is ongeveer net zoiets als zeggen dat een fiets de makkelijkste manier is om op je werk te komen, dus dan moet dat ook wel de makkelijkste manier zijn om naar de zuidpool te gaan. Ja, natuurlijk kan dat. Maar weet je zeker dat dat ook is wat je wil? En zelfs als je voornamelijk heel veel fietst, zou een reis naar de zuidpool dan niet een uitstekende aanleiding zijn om toch eens te kijken of andere vervoersmiddelen daar misschien beter voor geschikt zijn?
De vraag is dus eigenlijk wat een project ‘complexer’ maakt dan die ’simpele’ toepassingen. En daar kunnen we het lang over hebben (sterker nog, dat is wat we een groot deel van de tijd doen op de blog van de Real Story Group). Maar om toch een paar voorbeelden te geven van dingen die al snel complexiteit toevoegen:
Natuurlijk kan ik zo nog wel een tijdje doorgaan; als je dit interessant vind, raad ik je aan eens een kijkje te nemen bij de Real Story Group. Maar het moge duidelijk zijn. Als ik zeg, “dit systeem is fantastisch voor simpele toepassingen, maar ga er niet van uit dat het net zo goed werkt voor complexe situaties” – dan bedoel ik ook echt complexe scenario’s. (En dat betekent niet dat ik tegen fietsen ben.)
Waar het uiteindelijk op neer komt is het juiste systeem voor de toepassing kiezen. Neem iets simpel en goedkoops voor een simpel probleem. Maar vergeet niet dat je voor complexe problemen soms complexe oplossingen nodig hebt. Het zou belachelijk zijn om een trein te kopen om boodschappen mee te doen. Maar het is net zo belachelijk om op de fiets een pallet bakstenen op te gaan halen.