• Non ci sono risultati.

Tecnologie e linguaggi per lo sviluppo di siti Web

4.1 I Content Management System (CMS)

4.1.2 Drupal, Joomla! e WordPress

Drupal. La storia di questo CMS ha inizio nel 2000 quando due studenti

dell’Università di Anversa, Dries Buytaert e Hans Snijder, crearono un piccolo sito interattivo interno per condividere file e notizie tra colleghi di studio [38]. Terminati gli studi, per non perdere i contatti, il sito fu pubblicato su Internet con il dominio drop.org. In seguito alla pubblicazione, dato il progressivo aumento del numero di utenti, iniziarono a sorgere discussioni sulle tematiche di autenticazione, moderazione e in generale sull’implementazione. Finché nel 2001 il fondatore decise di rendere open source la licenza del software alla base del funzionamento di drog.org, così che altre persone potessero sviluppare e implementare il suo progetto. La nuova versione open source del software fu chiamata Drupal, dalla traslitterazione in lingua inglese della parola belga “druppel” il cui significato è “drop”, “goccia”, elemento presente all’interno del logo.

Drupal è il più complesso dei tre CMS e questo è uno dei motivi per cui risulta il meno utilizzato. Di fatto iniziare a utilizzare Drupal non è immediato e l’iter di avvio all’uso può risultare complicato qualora l’utente abbia conoscenze e competenze informatiche limitate.

Drupal può essere utilizzato attraverso un server di proprietà, un Web Host oppure in locale sul proprio pc, simulando con un programma specifico un server all’interno del computer [49,53]. Prima di procedere all’utilizzo effettivo di Drupal è necessario creare e registrare un dominio per il proprio sito e disporre di uno spazio Web (all’interno del server in hosting o di uno di proprietà). Nel primo caso, a questo punto bisogna procedere con il download sul proprio pc del pacchetto Drupal, scaricabile dal sito ufficiale: è necessario successivamente caricare Drupal all’interno del server host. Una volta effettuate tutte queste operazioni, sarà possibile configurare il CMS e iniziare a creare il proprio sito. Qualora si voglia procedere all’uso di Drupal in locale sul pc, le operazioni da compiere per creare il proprio sito aumentano. In primo luogo è necessario installare sul proprio pc un software che lo “trasformi” in un server [53] rendendo possibile la

64

comunicazione con linguaggio PHP40, utilizzato dal programma per comunicare

con il server stesso, e procedere alla creazione di una base dati compatibile con il CMS, poiché al contrario di un Host Web che solitamente già lo predispone agli utenti, il pc non lo prevede. A questo punto si può procedere al download e all’installazione di Drupal, che può avvenire su sistemi Windows, Linux e MAC OS. Una volta configurato il sistema si può procedere all’impostazione del profilo utente per poi poter iniziare a creare un sito.

Come si può intuire, tutte queste operazioni posso risultare complicate a un utente medio anche qualora sia avvalga del supporto della community Drupal o di tutorial sul Web. Uno dei vantaggi di Drupal è infatti la grande community di sviluppatori e utilizzatori, che nel forum trovano un luogo di scambio di informazioni, assistenza e implementazione.

Anche grazie alle continue migliorie e contributi della community, se da un lato può risultare più complesso, Drupal offre però una maggior flessibilità e adattabilità alle esigenze degli utenti nonché un alto grado di personalizzazione, rendendolo uno strumento ideale anche per siti molto complessi. Infatti nel pacchetto software che viene scaricato dall’utente sono predisposti moltissimi “moduli”, ovvero le componenti e le funzionalità del sito che può quindi essere strutturato e organizzato in totale autonomia e senza nessun limite imposto. In conclusione è un CMS molto potente e permette di sviluppare siti anche molto complessi ma presuppone che l’utente abbia necessariamente un dominio registrato e uno spazio all’interno di un server, unico modo per poter usufruire del CMS. Per facilitare l’utente nell’acquisizione di spazi Web, Drupal propone alcuni servizi di hosting all’interno dei server di aziende terze affiliate.

Joomla!. Questo CMS open source nacque ufficialmente nel 2005 per opera di

un team di sviluppatori volontari [58]. Di fatto però Joomla! nasce sulla scia del CMS Mambo, creato dalla compagnia australiana Mirò nel 2001. A causa di incomprensioni tra azienda e sviluppatori, il CMS divenne un progetto

40 Il PHP, acronimo di Hypertext Preprocessor, è un linguaggio per la comunicazione con il server e altri programmi o con una base dati [8].

65

indipendente che portò alla prima versione di Joomla!. Data però la somiglianza con il software Mambo, il team di sviluppatori volontari creò un codice nuovo che portò nel 2008 all’uscita di Joomla! 1.5 [47].

Joomla! può essere utilizzato come CMS per un sito con dominio esistente oppure attraverso la piattaforma Joomla.com [57] da cui è possibile creare un sito Web gratuito.

Nel caso di un utente con un proprio dominio e di uno spazio Web (su server di proprietà o in hosting), per utilizzare Joomla! bisogna procedere al download del software sul proprio PC. In generale il procedimento è simile a quello di Drupal: è necessario inserire nel server il software di Joomla!, impostare i vari profili e procedere con la scelta dei moduli, funzionalità ed estensioni (i cosiddetti plug- in).

Attraverso la registrazione a Joomla.com [57] invece è possibile creare in pochi passi un sito Web gratuitamente, il cui dominio è però un sottodominio di Joomla.com (nomesito.joomla.com).

Una volta creato un profilo utente amministratore (a cui vengono associate le credenziali di accesso al CMS) si può procedere alla creazione del sito scegliendo i moduli, il templete, ovvero la struttura e la grafica che avrà il sito (all’interno di un portfolio a uso gratuito a disposizione dell’utente), la scelta del menù, ecc.

66

Questa possibilità offerta da Joomla.com è sicuramente utile qualora il sito da creare non necessiti di una struttura molto complessa o di particolari caratteristiche, poiché di fatto:

 il dominio è un sottodominio di Joomla.com  la scelta dei template è limitata a quelli proposti  le estensioni pre-installate sono cinque

 il template non è editabile  lo spazio di hosting è limitato

Entro questi limiti, è però uno strumento alla portata di tutti gli utenti poiché l’interfaccia on-line è molto semplice e intuitiva e tutti i passi per la realizzazione del sito sono guidati. Inoltre non è a carico dell’utente né l’istallazione del software né l’update tra le varie versioni, poiché ciò avviene in maniera automatica. Scegliendo di utilizzare il software Joomla! come CMS per il proprio sito Web, un utente sa che deve avere a disposizione un proprio dominio registrato e uno spazio in hosting e che l’installazione e l’aggiornamento devono essere effettuati personalmente. L’uso del software però comporta diversi vantaggi tra cui la possibilità di implementare il proprio sito con tutte le estensioni, non avere limitazioni nella scelta dei template e di poterli editare, con le dovute conoscenze dei linguaggi; inoltre l’esistenza della community di utilizzatori e sviluppatori e il forum, è un vantaggio in termini di supporto e assistenza.

WordPress. Di fatto non nacque come CMS, bensì come una piattaforma di

blogging. I suoi ideatori, Matte Mullenweg e Mike Little, lanciarono WordPress nel 2003, come estensione della piattaforma di self-publishing b2/cafelog (2001) [88]. Dalla versione WordPress 0.7 del 2003 all’attuale 4.7.2, le modifiche e migliorie al programma sono valse a renderlo non solo un CMS, ma anche il più usato al mondo. Per iniziare a utilizzare WordPress è necessario avere un proprio dominio e uno spazio su un server, proprio o tramite hosting.

Una volta completato il download sul proprio pc si può procede a caricare il programma sul server (qualora non si utilizzi uno spazio già di proprietà di WP, a impostare il profilo utente così da poter iniziare a costruire il sito.

67

WP rispetto agli altri due CMS, oltre al software, offre sulla piattaforma WordPress.com un’ampia gamma di servizi. Questa piattaforma offre agli utenti la possibilità di creare un proprio sito da zero, dall’emissione del dominio, alla acquisizione di uno spazio su un server, alla creazione effettiva del sito e all’elaborazione e gestione dei contenuti. WP propone quattro diversi piani pensati per soddisfare le esigenze di un range di utenti molto vasto, da chi ha la necessità di sviluppare un sito personale o un semplice blog, al professionista per uso lavorativo fino all’azienda. Come si può notare in Tabella 4, ogni prodotto si caratterizza per opportunità e limiti che vanno considerati caso per caso.

Tabella 4 Piani commerciali WordPress.com [87]

Data la flessibilità dell’offerta complessiva, la facilità e velocità con cui è possibile creare un sito e in generale la sua semplicità, i dati circa il suo utilizzo non sorprendono.

Inoltre data la sua diffusione, oltre alla community ufficiale di supporto, esistono sul Web diverse guide non ufficiali all’uso di WordPress, articoli e contributi di ogni genere inerenti il mondo di WP.

Piano Servizio Dominio Spazio su server WP

Templete Personalizzazione

“Gratuito” Gratuito Sottodominio di Wordpress.com 3 GB Gratuiti o a pagamento Molto limitata “Personal” A pagamento Personalizzato 6 GB Gratuiti o a pagamento Limitata “Premium” A pagamento Personalizzato 13 GB Gratuiti o a pagamento Avanzata “Business” A pagamento

68

Per quel che riguarda l’interfaccia utente, ovvero il pannello di amministrazione del proprio sito, è molto intuitiva e di semplice uso.

All’interno della colonna scura a sinistra è inserito il menù attraverso il quale si può gestire ogni singolo elemento e funzione del sito:

 realizzazione degli articoli, gestione e organizzazione in categorie, l’applicazione di tag, etc.

 realizzazione e gestione delle pagine Web

 gestione dei media attraverso la libreria (inteso come archivio multimediale dei file)

 gestione dei link esterni al sito e commenti  gestione dei commenti

 scelta, modifica e personalizzazione del tema

 installazione plug-in, ovvero funzionalità aggiuntive al sito  gestione utenti e creazione profili

 impostazioni generali sul sito come titolo, URL, lingua, etc.

Per creare le pagine WP predispone un editor visuale dove è possibile creare e modificare i contenuti semplicemente inserendo testi, immagini, ecc. (come si si stesse utilizzando un normale word processor) perciò quel che viene visto sull’editor è ciò che apparirà nel sito. Selezionando invece l’editor di testo, sarà possibile realizzare i contenuti utilizzando il codice HTML.

69

WordPress, attraverso una moltitudine di temi responsive e plug-in, consente di garantire l’accessibilità e usabilità dei siti. All’interno del portale di WordPress.org è possibile eseguire una ricerca dei temi avanzata, inserendo parole chiave o impostando dei filtri a seconda di ciò che si sta cercando. Ad esempio inserendo

“responsive” come termine chiave, vengono mostrati all’utente tutti i temi

ottimizzati per una fruizione del sito dai diversi schermi (pc, smartphone e tablet). Attraverso l’installazione di determinati plug-in è possibile migliorare la qualità del sito da un punto di vista di layout ma anche di organizzazione dei contenuti, inserendo strumenti di navigazione come menù laterali, creando classifiche sulla popolarità dei contenuti, gestendo i commenti e ponendo filtri anti-spam automatici, creando liste contatti, fotogallery e slideshow, ecc.

Sono installabili plug-in per l’accessibilità che predispongono nel sito barre strumenti per la gestione del contrasto, la grandezza dei font, l’inserimento di testi sostitutivi con le descrizioni dei vari contenuti multimediali, ecc. Inoltre possono essere inseriti i collegamenti ai Social Network al fine di rendere integrata la comunicazione tra sito Web e gli altri canali on-line, così come è possibile migliorare il posizionamento e la rintracciabilità sui motori di ricerca attraverso plug-in SEO41 [46]. Tutte queste operazioni volte al miglioramento del sito sono

realizzabili in pochi click e ad un costo limitato o nullo poiché molti plug-in sono gratuiti.

41 Search Engine Optimization (SEO), ovvero tutte quelle attività attraverso cui migliorare l’accessibilità e il traffico al sito dai motori di ricerca [46].

70

ArtStories.it: un esempio di sito Web realizzato con WordPress

Art Stories S.r.l. è una startup italiana fondata nel 2015 che utilizza WordPress per il suo sito aziendale.

Art Stories realizza app per bambini a tema artistico e culturale che hanno lo scopo di appassionare ed educare i bambini ai beni culturali e al patrimonio artistico italiano poiché saranno gli adulti che “se ne prenderanno cura domani”. Le app sono quattro e si rivolgono a bambini di età 5-10 anni [28] A seconda della tipologia si dividono in due categorie:

71

 Le Art Stories - Digital Guides: App del Castello Sforzesco e del Duomo di Milano

 Le Art Stories - Digital Game 4Fun: App Art Stories Città e MUBApp Esistono poi due app sviluppate “On Demand”: Palazzo Marino Kids, commissionata dal comune di Milano e ArtStories Faces creata per la partecipazione alla prima edizione dell’Europeana Labs Challenge 2016 e vincitrice del primo premio [39]42.

Le applicazioni di Art Stories sono sicuramente un esempio positivo di come i contenuti digitali possano rappresentare uno strumento ottimale per comunicare con i bambini educandoli attraverso attività divertenti che valorizzano la storia, l’arte e l’architettura. In soli due anni l’azienda ha lanciato, in un mercato molto competitivo, quattro prodotti di proprietà, uno in collaborazione e uno su commissione.

Queste app rappresentano anche uno strumento di supporto e di sviluppo dei flussi turistici culturali: le Digital Guides nascono infatti come vere e proprie guide turistiche per le famiglie in visita a Milano, create per altro in ottica Expo 2015. Nella brochure [29] viene esplicitata questa funzione di strumento completo offerto ai turisti in visita con i bambini, provvisto di indicazioni precise sui monumenti simbolo della città. Ma non solo: le applicazioni hanno l’obiettivo di creare curiosità nei bambini e far loro sviluppare quel senso di piacere per la scoperta ed esplorazione, tra dettagli e particolarità, tale da invogliare e incoraggiare la visita in quei luoghi che da casa o da scuola hanno visto prendere vita e raccontarsi attraverso la tecnologia. Perché la tecnologia, di fatto, è un mezzo, non il fine.

Le altre tipologie di app come le Art Stories 4Fun hanno l’obiettivo di comunicare ai bambini arte e cultura in un modo esplorativo, intrattenendoli in un modo educativo e divertente allo stesso tempo [44]. Dati la qualità e il successo di

42 Europeana è un portale Web la cui funzione è quella di grande archivio europeo di risorse digitali. L’Europeana Lab Challenge è una competizione on-line il cui scopo è individuare e premiare le migliori idee e contenuti di “riuso” del patrimonio culturale digitale.

72

queste app43, nel 2016, la Art Stories ha stretto una partnership con Alpitour per

l’estate: l’app ArtFaces è stata inserita nei programmi di animazione in un villaggio vacanze del club di prodotto “AlpiClub Famiglia” a FuerteVentura in Spagna [78]. L’app è fruibile dai tablet (forniti dall’azienda Clementoni) della struttura e messa a disposizione dei piccoli ospiti per l’uso autonomo e durante le attività di laboratorio organizzati ad hoc. Il progetto, come riportato in [27], ha lo scopo di arricchire qualitativamente l’offerta che Alpitour rivolge alle famiglie con bambini, ponendo attenzione ai loro bisogni e alle loro esigenze, garantendo attività ricreative di qualità culturale ma senza rinunciare all’intrattenimento e al divertimento anche in vacanza. Sicuramente tale scelta ha anche lo scopo di consolidare il posizionamento dell’impresa all’interno del mercato del turismo organizzato per famiglie e l’immagine e il valore del suo brand e del club prodotto “AlpiClub Famiglia”. Per quel che riguarda l’usabilità delle app, avendo come target i bambini sin dalla fase di ideazione, è evidente che risultino adatte alla fruizione.

Illustrazioni, ambienti, colori e testi sono creati da professionisti nei vari settori che, su misura del target d’età 5-10 anni, hanno inventato o ricostruito ambienti di buona qualità grafica ed estetica, storie e racconti appassionanti, ecc. Il linguaggio utilizzato è semplice e adatto al target e tutti gli elementi sono presentati in modo simpatico: palazzi, personaggi, elementi architettonici prendono vita e si presentano ai bambini raccontando la loro storia.

Una particolare attenzione è stata posta dagli sviluppatori al tema dell’accessibilità per soggetti con disabilità uditive poiché per ogni racconto è attivabile il testo scritto, garantendone così la piena fruizione anche da questa tipologia di utenti.

43 I download registrati (dati 2016) [27] sono oltre 60.000, le sessioni al mese sono 18.000 e in 150 paesi differenti con un gradimento medio di 5 stelle su 5

73

Figura 17 Anteprima app Art Stories - Castello Sforzesco [30]

Figura 15 Anteprime delle app di Art Stories – Città [31] Figura 18 Anteprima MUBApp [30]

74

4.2 JavaScript: breve introduzione

Un linguaggio molto utilizzato per realizzare pagine Web interattive e dinamiche è JavaScript, utilizzato anche dai CMS per molte funzioni e plug-in.

JavaScript è un linguaggio di scripting utilizzato per la realizzazione di effetti interattivi lato client, ovvero ottenuti senza inviare una richiesta al server, come invece accade normalmente in un’architettura client-server.

È un linguaggio molto versatile e può essere utilizzato per ottenere diversi risultati: alla base del JavaScript c’è la possibilità di far corrispondere ad un evento un’azione, ovvero, per esempio, far eseguire al programma delle funzioni al semplice occorrere del click del mouse. Queste funzioni hanno la possibilità di modificare il codice HTML (e CSS) visualizzato dall’utente, che vedrà quindi gli effetti delle proprie azioni direttamente nella visualizzazione della pagina tramite browser; altre funzioni possono invece rimanere nascoste all’utente modificando ugualmente alcuni parametri. Perché il browser interpreti il codice in JavaScript è necessario utilizzare nell’HTML il tag specifico: <script> </script>. All’interno del tag può essere inserito direttamente il codice JavaScript oppure si può collegare un file .js (estensione dei file JavaScript). Per rendere attivo un codice JavaScript è necessario creare anzitutto una funzione-azione che deve essere invocata nel codice HTML [50].

Alla base del linguaggio JavaScript ci sono i dati e le istruzioni, ovvero delle elaborazioni dei dati. Ogni dato può essere definito come una variabile a cui viene attribuito un nome (che lo definisce in modo univoco) e un valore. Una variabile è quindi una coppia nome-valore che viene utilizzata per memorizzare i dati. Perché una variabile possa essere utilizzata deve essere prima creata e dichiarata in questo modo [32]:

var nomevariabile= valore; I valori delle variabili possono essere:

 numeri interi o reali es. var nomevariabile = 10;

 valori booleani ovvero due valori definiti come vero (true) o come falso (false) es. var nomevariabile= true; oppure var nomevariabile= false;