 Allora, mi sentite? Ok, vorrei raccontarvi una storia, cominciare raccontandovi una storia. È la storia della prima volta che ho sentito parlare di WordPress e Drupal. Era il 2007, quando io e un gruppo di amici del mio paese, Castefranco Veneto, avevamo in mente di realizzare un progetto. Volevamo realizzare una rette civica online e volevamo quindi fare una sorta di sito comunale, perché avevamo visto che in effetti la nostra città non dava questo servizio. Volevamo quindi permettere ai cittadini di leggere le informazioni dell'amministrazione, consultare le notizie e magari anche poter condividere le proprie opinioni su quello che stava succedendo. Di solito noi ci incontravamo di sera. Dopo il lavoro, davanti una birra, anche più di una, perché avevamo delle decisioni molto importanti da prendere. E che decisioni? Una di quelle serie dovevamo decidere qual era i migliori CMS da utilizzare. E quindi dopo un paio di birre si sono formati due gruppi. C'era chi era favorevole a Drupal e chi era favorevole a WordPress. E quindi è nata da lì la domanda, ma è meglio Drupal o è meglio WordPress? Faccio una piccola nota. Il nostro gruppo di amici era formato principalmente da nerd e da sviluppatori. Quindi non avevamo assolutamente approcciato il progetto, come tutti sappiamo, si dovrebbe fare partendo da un'analisi, da una discovery e magari anche vedendo chi erano gli utenti che avrebbe utilizzato il sito. Avevamo voglia di cominciare a lavorare subito, di sporcarci le mani, installare il CMS, scrivere qualche riga di codice, metterlo online e vedere cosa succedeva. A 12 anni di distanza mi ritrovo ancora davanti però la stessa domanda. Perché dal 2007, se facciamo i conti, sono passati 12 anni, e siamo ancora qui a chiederci se è meglio Drupal o meglio WordPress. Questa domanda io la trovo nei gruppi Facebook, la trovo nei blog di settore, la trovo i Meetup di WordPress, anche quello che organizzo a Treviso, la trovo ai Workamp e la troviamo tutti quanti noi anche oggi, al Workamp 2019 di Verona. La posso trovare anche alla Community Drupal perché agli stessi eventi della Community Drupal ci si pone la stessa domanda. E soprattutto la trovo anche, me la pongono i clienti che hanno bisogno di rifare il loro sito nuovo di Zeca. Penso che le persone si pongano questa domanda e si aspetta in una risposta secca, una presa di posizione netta, un po' come succede per le varie battaglie tecnologiche che ci sono negli ultimi anni. E quindi non so se avete mai visto lo spot di Apple, quello dell'IMA Mac i Mac PC, oppure se siete un po' più anziani come me magari vi ricordate che a fine degli anni 90 c'era una lotta fra gli antivirus e c'era Norton oppure Mhf, ai tempi nostri adesso se dobbiamo prendere uno smartphone, ci chiediamo sicuramente cosa prendo, prendo un iPhone o prendo Android. Ecco allora, tutte queste cose non sono altro che strumenti, quindi è difficile dare una risposta netta e secca che sia quella giusta. Dobbiamo un attimo pensare a quali sono gli obiettivi che vogliamo raggiungere con questi strumenti, dobbiamo pensare alle persone che sono coinvolte alla realizzazione di questo progetto e anche alle persone che utilizzeranno questo artefatto. E nel nostro caso specifico è importante conoscere entrambi i CMS prima di poter di qualcosa su chi è meglio e chi è peggio. Allora è meglio fermarsi un attimo e fare un respiro profondo. Mi chiamo Nicola Stocco, sono consulente web designer e sviluppatore. Sono anche co-coordinatore del Meetup di Treviso e già dalla mia infanzia ho cominciato ad utilizzare i CMS. Sapete come si chiamava i CMS che utilizzavo quando ero bambino? Si chiamava Lego. I mattoncini dei Lego mi permettevano di costruire delle bellissime astronavi, dei bellissimi robot. Ora invece progetto siti web e applicazioni. Per farlo tengo in considerazione sia gli obiettivi di business che i bisogni delle persone. E gli strumenti che utilizzo sono WordPress e Drupal. Quindi vi dico subito che il mio intento non è quello di decretare il vincitore della battaglia di CMS. Quindi se siete qua per aspettarvi una risposta netta non ve la darò. Quello che voglio dire è di sicuro non farò dei confronti appunto fra i CMS, non vi dirò quello che ha le carenze, chi non ha carenze, queste cose poi si scoprono utilizzando gli strumenti. E comunque di queste cose potete trovarne quante ne volete facendo una ricerca con Google. Quest'oggi invece vorrei proporvi un punto di vista diverso. Vorrei farvi vedere i due CMS non come dei rivali ma come dei fratelli. Se pensate i fratelli hanno caratteristiche comuni e tratti distintivi. E come fratelli Drupal e WordPress e soprattutto le loro comunità possono parlarsi, possono condividere e si possono confrontare. La cosa bella è che con questo confronto possono portare a casa il meglio da ciascuna. Quindi come ho strutturato adesso la mia presentazione, vi farò una breve introduzione di Drupal e poi vi prenderò in considerazione tre caratteristiche comuni entrambe i CMS e tre caratteristiche da cui uno ha imparato qualcosa dall'altro per migliorarsi. Alla fine di tutta la presentazione quello che vorrei vi portaste a casa è questo ponte arcobaleno che ho disegnato e quindi che la forza tra le comunità è la condivisione anche all'esterno della comunità, non solo all'interno della comunità. Voi siete qua stasera, quanti di voi hanno sentito parlare di Drupal? Conoscono Drupal? Oh la la, simile, dai più o meno, ho sentito parlare o conoscono. Chi lo utilizza come strumento per lavorare? Bene, non tantissimi, ok. Allora, vi racconto brevemente la sua storia, una cosa proprio veloce. Drupal è nato nel 2000 in Belgio e il suo fondatore, che vi dirò solo il nome, schiama Driz, perché il cognome è difficilissimo da leggere, l'ha creato mentre stava realizzando un social network per l'università dove lui studiava. Aveva realizzato una sorta di social network che permettesse agli studenti di condividere informazioni. Con il passare degli anni, Drupal è diventato un CMS vero e proprio, è diventato uno strumento open source e la sua community è cresciuta. Adesso abbiamo circa 650.000 siti web realizzati con Drupal nel mondo e ci sono più di un milione di sviluppatori. Il sito web di Drupal è raggiungibile all'indirizzo drupal.org. All'interno del sito potete trovare il core, scaricare il core, potete trovare i moduli che sono i plug-in, come vengono chiamati nel mondo WordPress, nel mondo Drupal, che si chiamano moduli, e potete anche consultare tutta la documentazione. Come potete vedere, già dalla storia e anche dal modo di presentarsi, i due CMS sono piuttosto simili. Sotto aspetti invece un po' più tecnici, Drupal, nella sua ultima versione, adabbarciato l'approccio di programmazione orientata agli oggetti. È basato su un'architettura framework symphony, che è scritto in PHP, e l'ultima versione stabile è la 8 che è uscita nel 2015. Vi faccio un'altra domanda. Cosa pensate quando sentite parlare di Drupal? Perfetto, ci siamo. Me l'aspettavo queste risposte, e sono tutte vere ovviamente. Quando ne parlo con le persone, ho parlato anche con Vanessa prima giù al bar, mentre stavamo bevendo un caffè. Quello che ti dicono le persone è sicuramente qualcosa di diverso. Alcuno lo vede sotto aspetti positivi, quindi lo vede come qualcosa di flessibile e potente. Qualcuno altro lo vede come abbiamo visto anche dalle vostre risposte, come qualcosa di complesso, per cui c'è una curva di apprendimento piuttosto ripida. Si tratta di sicuro di una cosa soggettiva, che dipende un po' da l'esperienza professionale che avete, o anche da quello che avete sentito dire, o anche da quello che avete provato. Molte volte chiedo anche alle persone secondo loro a cosa serve Drupal e anche qui si ottengono delle risposte molto diverse. Perché Drupal è nato come strumento per gestire dei semplici social, e con gli anni è cresciuto sempre di più per diventare un CMS strutturato per raggiungere scopi più grandi e sofisticati. Anche qui c'è una stretta connessione, secondo me, con il mondo WordPress. WordPress è nato, anche se non vi piacerà che venga detto, è nato per fare blog, però negli anni è cresciuto e diventato un CMS molto potente. Adesso si crede che Drupal sia dato solo ambienti enterprise, e di sicuro lo è, ma non ci sono solo grandi organizzazioni che lo utilizzano. Liberi professionisti, piccole startup, biblioteche, musei, organizzazioni no profit, possono utilizzarlo per raggiungere i loro scopi. Partirò adesso con le similitudini di cui parlavo prima. Il primo aspetto comune è che Drupal e WordPress sono CMS che vengono utilizzati a tutti i livelli per realizzare siti e applicazioni web. Cosa intendo con a tutti i livelli? Intendo che può utilizzarlo, lo sviluppatore che ha conoscenza tecnica e come può usarlo la persona che si sta avvicinando per la prima volta un CMS. Sono entrambi dei content management system, quindi sistemi per gestire dei contenuti. Sono sistemi open source, come tutti ben sappiamo, e essendo sistemi open source il codice aperto la comunità può contribuire come avete fatto ieri e può migliorare il CMS. Infine sono entrambi scritti con linguaggio PHP. Sono anche dei sistemi longevi, sono evoluti e sono rimasti tra i primi sistemi utilizzati per realizzare i siti web fino ai nostri anni. Nonostante uno sia nato nel 2000 a Drupal e WordPress sia nato nel 2003. In questi ultimi anni ci sono delle nuove soluzioni che sono entrate nel mercato. Chiamiamolo di CMS, non so se ne avete mai sentito parlare sono dei software as a service. In pratica voi pagate un canone e avete già a disposizione uno strumento che vi permette di creare il vostro sito in maniera grafica spostando blocchi a destra e a sinistra un po' come si può fare con Gutenberg. Questi sistemi si chiamano Squarespace per fare un esempio oppure Wix. Negli ultimi anni anche sono entrate delle nuove architetture, architetture gem stack. Parlavo venendo qui in macchina questa mattina. Sono architetture che sono i presenti e secondo me saranno anche il futuro. I CMS come Drupal e WordPress già li stanno considerando per creare soluzioni di tipo Adless dove il CMS viene usato come back-end e per il front-end vengono usate queste tecnologie che sono molto performanti e responsive. Eccoci qua. Ci piace Drupal, ci piace WordPress e vogliamo installarlo sul nostro server di hosting. La cosa è piuttosto semplice. Se scegliamo un fornitore affidabile non abbiamo grossi problemi, però se vogliamo fare i sviluppatori quelli bravi dovremmo installarci nel locale. E se installiamo WordPress la cosa è piuttosto semplice e veloce. Se proviamo a fare questa cosa con Drupal la situazione si complica di un po'. E proprio su questo aspetto è quello di uno sviluppatore senior Drupal che ha finto di essere una persona che si vuole avvicinare a Drupal per la prima volta e voleva installare nella sua postazione locale Drupal per provarlo. Mentre faceva questa attività lui ha registrato il numero di click e ha registrato il tempo necessario per fare questa cosa. E poi ha fatto la stessa attività con gli altri CMS e ha confrontato i risultati. E poi ha mostrato innanzitutto quello che lui ha fatto ad inizio 2018 questa cosa quando ha installato Drupal in locale. Fatemi vedere se riesco a far partire il video. Yes, eccolo qua. È molto veloce. Stiamo quasi. Qui sta creando database. Qui torno su l'interfaccia, metto i dati. Direi quindi si tratta di un bel muro per chi vuole avvicinarsi al mondo Drupal non se uno vuole installarsi in locale. Drupal già si trova in grosse difficoltà. Quindi cosa è successo? La community di Drupal appena ha visto l'articolo di questo sviluppatore si è tirata sulle maniche e ha preso spunto da WordPress. Quindi ha detto adesso cerchiamo di costruire un processo che sia più semplice che dia la possibilità a tutti di valutare Drupal. Vi faccio vedere anche qui un breve video che è il risultato dell'intervento che hanno fatto. Eccolo qua. Vedete quindi che le cose dopo l'intervento sono migliorate di un bel po. Nelle tabelle che vi mostro adesso potete vedere il reso conto di come andavano prima le cose, come vanno adesso. Drupal si è posizionato molto bene in alto e in un minuto e 30 riesco a installare in locale e provare quanto meno a avvicinarmi al mondo di Drupal. Seconda caratteristica comune d'estensibilità o modularità, chiamiamola così. Drupal e WordPress sono due CMS modulari che possiamo utilizzare per strutturare i nostri siti tramite temi e plugin o moduli come abbiamo detto in Drupal. Uno dei punti forti di WordPress è proprio la grande base di temi e plugin che ci mette a disposizione se hanno pagamento o se hanno gratuiti. Drupal invece ha un po' meno temi, un po' meno moduli. Per quanto riguarda i moduli la cosa è data dal fatto che non esistono moduli a pagamento per Drupal. La community non ha avoluto questo tipo di approccio a rilascio dei moduli e se uno sviluppatore intende un modulo per una certa funzionalità per cui esiste già un modulo simile la community cerca di fare in modo che lo sviluppatore si mette ad accordo con lo sviluppatore che ha già fatto il modulo simile e lavorino insieme per migliorarne uno solo senza creare i doppioni. Quindi questa cosa è abbastanza interessante. C'è un lavoro molto forte a livello di community. Entrambi CMS poi permettono anche di essere personalizzati, quindi modulari, anche intervenendo in livello di codice. Quindi avete la possibilità di scrivendo il codice PHP se ne siete in grado di ampliare le funzionalità. Questo approccio ve lo consiglio in maniera particolare quando avete piccole cose da aggiungere e magari tutto un plugin o un modulo non vi serve perché vi aggiunge un sacco di cose di cui non avete bisogno. Da questo punto di vista il codex di WordPress è davvero utile. Ok. Cosa è forte Drupal? Secondo me Drupal è molto forte nella modellazione dei contenuti. Ci mette a disposizione i tipi contenuto che sono molto simili ai post type di Drupal. Però sono molto più flessibili e completi, hanno la possibilità di aggiungere un sacco di campi. Se vogliamo aggiungere campi di tipo file, tipo map, campi di tipo foto, testo possiamo persino aggiungere campi che sono campi di riferimento ad altri tipi di contenuto, quindi creare delle relazioni tra i contenuti e tutto questo ve lo fa fare in core e graficamente dall'amministrazione senza dover scrivere una riga di codice. Un altro aspetto molto forte di Drupal che ci dà in core sono le tassonomie. Ci sono dei vocabulari dove posso definire dei termini e li posso utilizzare per strutturare in maniera ancora più completa la mia architettura di dati. Diventa ancora una cosa molto più flessibile e potente delle sue categorie tag. Anche in WordPress questa cosa è stata potete utilizzarla o tramite dei plugin oppure anche qui andando a scrivere del codice che va a fare questa personalizzazione di cui avete bisogno. Anche questa la trovate all'interno del codex di WordPress. Un altro strumento ancora molto importante di Drupal rispetto a WordPress sono le viste. Le viste sono in pratica delle query che io posso creare a livello grafico tramite l'interfaccia di amministrazione vado a realizzare delle query quindi vado a recuperare dei dati dal database semplicemente selezionando delle voci o impostando dei criteri e tutto questo lo faccio tramite interfaccia di amministrazione. Ad esempio posso dire a Drupal creami una pagina che mi mostra le news scritte da l'autore Mario Rossi quelle che hanno un'immagine e quelle che magari non sono più vecchie di un mese. Tutto questo lo faccio a interfaccia di amministrazione, ottengo la pagina con i miei risultati. Ultimo punto forte di Drupal è la gestione di ruoli e permessi. Quindi se ho progetti dove ho bisogno di gestire con una grande granularità i permessi che devo associare ai ruoli anche questa cosa Drupal me la mette a disposizione a livello di interfaccia. Qui ho messo un esempio vedete un certo ruolo vedete i permessi che vengono suddivisi riga per riga, io non faccio altro che andare a selezionare i permessi che voglio aumentare per quel certo ruolo e lascio disattivati gli altri. Tutto questo senza installare moduli ce l'ho ancora. Ultimo aspetto comune ai CMS, quello della sicurezza. Partiamo al presupposto che nessun CMS è sicuro al 100% purtroppo e a buona parte di noi sarà capitato che una mattina si è svegliata ho trovato il proprio sito bucato o a kerato oppure avete sentito gli amici a cui è successo o peggio ancora, vi ha chiamato il cliente tutto arrabbiato e vi ha detto guarda che da oggi io non riesco a caricare più il mio sito questo vi capita sia che utilizzate WordPress sia che utilizzate Drupal indifferentemente però per entrambi CMS l'aspetto della sicurezza è davvero importante in effetti tutti e due hanno nominato un team di sicurezza che controlla costantemente il core e rilascia gli aggiornamenti di sicurezza su Drupal inoltre è stato studiato un metodo di rilascio dei moduli dove la community fa un ulteriore verifica al modulo per quanto riguarda l'aspetto di sicurezza quindi cerca di evitare ancora di più che i moduli vengono rilasciati vengono rilasciati con dei bug con questo non voglio assolutamente dire che i sistemi siano i due CMS Drupal e WordPress siano dei sistemi non sicuri anzi lo sono ma è quella di seguire ovviamente delle best practice per quanto riguarda la sicurezza quindi vi consiglio di mantenere aggiornato il core aggiornati plugin scegliete con cura i temi e i plugin che volete installare e affidatevi affonti affidabili quando caricate dei dati nel vostro server nel vostro hosting preferite sempre delle connessioni sicure fttp piuttosto che fttp o ancora meglio usate dei meccanismi di versioning tipo ssh pardon tipo git via ssh semplice questa ovviamente utilizzate password complesse però capita ancora di trovare password 1,2,3,4 sia per gli utenti del CMS sia per gli account che voi usate all'interno del vostro fornitore e non utilizzate e evitare di utilizzare admin come un utente dell'amministratore perché da lì vengono abbastanza attacchi diciamo infine anche questa cosa la potete verificare abbastanza semplicemente cercate di scegliere un hosting che vi dia un ambiente sicuro e sempre aggiornato ci sono ok, ci sono un sacco un sacco di siti WordPress e anche Drupal che stanno utilizzando ancora versione di PHP 5.6 o anche più indietro quindi magari cercate di aggiornare alla versione 7 perché dall'anno scorso PHP 5.6 non è più sopportato le versioni precedenti da qualche anno non vedono aggiornamenti di sicurezza quindi tutto questo per dirvi i sistemi, i 2 CMS sono entrambi sicuri però dobbiamo doperarci per aggiornare tutto quello che è necessario mentre ci si lavora, quindi un po' di consapevolezza sempre relativamente alla sicurezza questa è una caratteristica di WordPress molto forte e da cui Drupal ha preso spunto negli ultimi periodi sappiamo tutti che WordPress free permette di aggiornare tra major version senza grossi problemi abbiamo potuto aggiornare dalla versione 4, alla versione 5 quasi automaticamente la cura che avevamo era dell'introduzione di Gutenberg a quel tempo e la stessa cosa vale per gli aggiornamenti dei moduli e pardoni i plugin voi potete entrare sempre da interfaccia aggiornare i plugin senza scrivere alcuna riga di codice in Drupal invece l'aggiornamento di moduli è un po' più macchinoso c'è la versione quella diciamo old style dove voi dovete scaricarvi un modulo dal sito dovete caricarlo nel server dove avete il sito e poi dovete lanciare uno script per aggiornare il database questa cosa crea sempre un po' di brivido dietro la schiena perché non si sa mai cosa succede oppure da sempre Drupal da un'altra via che è quella un po' più techy vi permette di usare una shell che si chiama Drash che è molto potente con dei comandi atomici per aggiornare i moduli e poi anche un sacco di altre cose tipo? si, si, si, si, è una cli è come il cli esatto quindi tornando anche all'aspetto dell'aggiornamento tra major release Drupal è anche un po' più complicato perché nel 2015 ha ristrutturato completamente il codice quando ha rilasciato la versione 8 perché come vi ho detto è una versione che è stata riscritta su base symphony e è stato integrato con poser all'interno di Drupal e è stato cambiato completamente anche il sistema che gestice il templating con passati a twig quindi il passaggio da versioni precedenti a la 8 era una cosa piuttosto tecnica non era così semplice come l'ho stato fare il passaggio da 4 a 5 però la riscrittura l'hanno fatta tenendo in conto proprio di questa cosa prendendo spunto da WordPress ora l'aggiornamento tra versione 8 e futura versione 9 che sta per uscire sarà molto molto più semplice quasi automatica come abbiamo visto succedere per WordPress lo stesso vale per i plugin per i moduli sta per uscire la prossima versione di Drupal e ci sarà la possibilità di aggiornare i moduli in maniera automatica proprio come si fa con WordPress quindi sta diventando sempre più semplice quindi dicevamo prima complessità curva di apprendimento stanno cercando di abbassarla prendendo spunto quindi in chiusura e tornando alla nostra domanda iniziale è meglio Drupal o è meglio WordPress abbiamo un po' capito che Drupal e WordPress sono due strumenti che ci permettono di raggiungere i nostri scopi in maniera diversa i CMS migliore è quello che si è adatta meglio alle funzionalità che dobbiamo sviluppare e a livello tecnico delle persone che lo utilizzeranno la risorsa insustituibile dei CMS è la community sono le persone che sono all'interno della community quindi la condivisione come vi dicevo all'inizio con quello arcobaleno all'interno della community è molto importante ma ancora più importante la condivisione tra le diverse community spero questa sera di aver portato un po' di cross pollination anche qui e di avervi presentato Drupal in maniera che abbiate voglia di provarlo grazie