Efter att Resumé nyligen släppte nyheten att Bonnier är på väg att byta CMS för sina största sajter till Episerver hördes det en hel del röster om att Drupal skulle vara ett likvärdigt eller rentav bättre alternativ för Bonnier. För sajter som Di.se, Dn.se, Sydsvenskan, Expressen… kom igen.
Jag säger inte att Drupal är totalt värdelöst, för det är trots allt ett hyffsat komplett CMS som man får out-of-the-box, men det räcker inte långt när det gäller sajter av den här storleken och komplexiteten.
Låt mig ta upp några exempel. Det finns betydligt fler, men här kommer ett par stycken.
Myten om moduler till allt mellan himmel och jord
Joakim Jardenberg reagerar på sin blogg på att det endast finns ”ytterst få” Extras (motsvarande moduler i Drupal) registrerade på Episervers sajt. Det finns ju tusentals för Drupal. Men det är en sanning med modifikation. Drupals moduler finns inte på riktigt. Förutom de välkända som Nodequeue, Views, CCK, och ett par till (som alla har en motsvarighet i Episerver out-of-the-box) finns det inte många som faktiskt fungerar, är uppdaterade, eller intressanta för en bredare publik. Flera registrerade Drupalmoduler är dessutom bara idéer, utan en enda rad kod. The Drupal Way. Publicera allt öppet, så kanske någon hakar på. Eller inte. Andra moduler har blivit övergivna så fort deras skapare hittade ett riktigt jobb. Episerver bygger på .Net-platformen och där finns ju rätt många högklassiga moduler att tillgå om man nu skulle vilja ha sådana.
Men det spelar ingen roll egentligen, eftersom de här modulerna används inte i så här stora sajtbyggen.Vare sig det gäller Episerver eller Drupal, så skrivs de affärsanpassade modulerna in-house.
The Drupal Way
Drupals absolut största användargrupp är små sajter som ligger på webbhotell och drupalkärnan är anpassad så att den ska vara enkel att använda för dessa användare. Även om det offentligt pratas och skrivs allt mer om Entreprise Drupal så är det rent av omöjligt att få in de förändringar som behövs i Drupalkärnan. Stora, prestandakrävande stajter ser lite annorlunda ut under huven än små privata bloggar. Att t.ex. lagra cachedata i databas är ett skämt. Men de stora sajterna är så få till antalet att deras krav inte kommer med. Men det är Open Source, så man får göra sina egna ändringar i Drupalkärnan (och flera sajter gör det). Och sen applicera dem varje gång Drupal släpper en uppdatering. Om och om igen, version efter version.
Sättet Drupal är skrivet på
Uppyggnaden med moduler som krokar in på olika ställen på sidan var säkert state of the art för ett sånt system när det begav sig. Idag stödjer t.o.m. PHP objektorienterad programmering. Dessutom körs alla modulerna på alla sidor, vilket gör att sajten antingen måste ha få sidor (sidmallar) eller lite funktionalitet. Eller få besökare. Annars håller det inte.
Prestanda och tillgänglighet
Ta di.se som exempel. Det brukar ligga runt 100 artikelpuffar på förstasidan. Flera av dem har dessutom kopplade artiklar. Förutom puffarna ligger det listor med mest lästa, mest kommenderade, mest skickade, börstips, börsfokus, telegram… En förstasida bestående av sisådär 200-300 noder utvalda av nära en halv miljon noder, som ska levereras ett par hundra gånger i sekunden. Det får en Drupalinstallation att sätta sig i ett hörn och gråta en skvätt. Även med cache påslaget. Och då är detta bara första sidan.
Vidare ska de här sajterna aldrig ligga nere. Om sajten är nere i en minut så påverkas tiotusentals besökare. Drupal klarar inte en kontrollerad större uppdatering utan att tas ner.
Teknik
Vi har Drupal med PHP och MySQL på ena sidan mot Microsoft .NET och MS SQL Server på andra sidan. De spelar inte ens i samma liga. Visst kan man få PHP och MySQL göra rätt mycket om man slänger hårdvara på dem med i enterprisesammanhang så saknas det rätt mycket. Både vad gäller funktionalitet och prestanda.
Framtidssäkert
Det system som Bonnier nu bygger bör vara framtidssäkert. Med facit i hand så har ju Dn.se och Di.se hållit fast vid sina respektive CMS-system i över 10 år. Vem vet när det blir dags för nästa satsning av denna storlek? Det sägs att valet av Episerver är en inlåsning medan Open Source inte är det. Men är det så? Är det säkrare att satsa på ett företag (som det dessutom går rätt bra för) eller på ett löst sammansatt gäng människor som skriver varsin modul. Inte ens Acquia räddar biffen idag. Vad händer om en utvecklare av en Drupalmodul blir sjuk? Eller råkar ut för något? Eller bara tappar intresset? I teorin kan ju ”någon annan ta över” men på riktigt? I några Open source projekt blir det så, men i de flesta inte. Jag tror inte att finns någon risk att Drupal går under inom en överskådlig framtid däremot kan någon av de viktiga modulerna, som ofta underhålls av en enstaka eldsjäl, sluta utvecklas eller hamna på efterkälken. Ska då Bonnier ta över utvecklingen av modulen? Det är nog inte riktigt deras affärsidé.
Det finns flera lyckade projekt där rätt så stora och kända sajter använder Drupal. Det skulle säkert även gå att skriva om Drupal så att det funkar för Di.se och Dn.se. Det skulle säkert gå att segla jorden runt i en optimistjolle också. Men varför? När man väljer ett CMS så gör man det för att bygga sina funktioner runt det, inte att skriva om det. I så fall skulle man ju lika gärna kunna skriva sitt CMS själv till att börja med.
Drupal kommer kanske någon gång att nå den mognad där den kommer vara intessant för stora sajter. Men den är inte där i version 6, kommer inte vara där i version 7 och förmodligen inte i 8 heller. Och Bonnier byter system nu, inte om fem år.
Därför tror jag mer på Episerver än Drupal i det här fallet.