Nani e Giganti: Drupal e l'Open Source
di Federico Scotti
"Siamo come nani sulle spalle di giganti, così che possiamo vedere più cose di loro e più lontane, non certo per l'altezza del nostro corpo, ma perché siamo sollevati e portati in alto dalla statura dei giganti." (Francis Bacon)
Questa similitudine, tra Cinque e Seicento, poteva essere una chiave di lettura del progresso della scienza e più in generale del valore del passato rispetto alle conquiste scientifico-culturali del presente. Oggi può essere un punto di partenza suggestivo per valutare e interpretare ciò che per noi ha rappresentato una rivoluzione nell'ambito dell'informatica, ossia l'avvento del software libero, comunemente chiamato Open Source.
E' interessante sottolineare come lo sviluppo e il diffondersi dell' open source sia stato strettamente correlato alla nascita e diffusione di Internet, che ha rappresentato e rappresenta uno straordinario volano per la collaborazione e il confronto di idee, tecniche e obiettivi tra sviluppatori, analisti e appassionati sparsi in ogni angolo del globo.
Ma cosa significa Open Source? Quale innovazione ha portato nell' ambito dell' informatica?
A mio avviso la grande rivoluzione apportata dai software liberi non sta tanto nel carattere gratuito dell'utilizzo di questi software, (che chiaramente è qualcosa che non può che far piacere, soprattutto in momenti di crisi economica dove l'attenzione agli investimenti è più forte) quanto nel focalizzarsi sul carattere collaborativo dello sviluppo tecnologico nell'ambito dell'informatica.
Collaborare significa anche socializzare, rendere partecipi gli altri delle nostre conquiste e delle nostre scoperte, piccole o grandi che siano. L' Open Source ha dato a chiunque gli strumenti per proporre, suggerire, realizzare le proprie idee in un contesto vivace e stimolante.
Riprendendo la similitudine di Bacone possiamo dire che attraverso l'Open source ognuno di noi acquisisce un doppio ruolo, quello di Gigante e quello di nano.
Avvalendoci dei contributi altrui partiamo da una posizione privilegiata (possiamo vedere più lontano sulle spalle della comunità che ci sorregge) e a nostra volta possiamo essere giganti per altri che si appoggeranno alle nostre idee e alle nostre conquiste per portare avanti obiettivi di crescita comuni.
I Software Open Source nascono quindi con l'esplicita volontà dei loro autori per essere liberamente utilizzati, studiati, modificati e di conseguenza migliorati da altri programmatori indipendenti. Attorno ad ogni progetto di software Open Source nascono quindi comunità di sviluppatori che si occupano di curarne le evoluzioni e di migliorarlo costantemente.
Ognuno di noi può quindi contribuire, anche in piccolissima parte, a un progetto Open Source, nell'ottica appunto di essere un gigante per qualcun' altro.
Lo spirito collaborativo e socializzante dell'Open Source alimentato dal canale di comunicazione Internet ha come conseguenza diretta una maggiore complessità e articolazione dei propri progetti. E' evidente infatti che progetti (chiusi) che si basano su un ristretto cerchio di sviluppatori 'correranno' meno velocemente di progetti aperti al contributo di chiunque.
Uno dei più importanti casi di successo dell Open Source è sicuramente il sistema operativo Linux, che ad oggi, soprattutto in ambito server, rappresenta l'ambiente d'elezione per progetti informatici di classe Enterprise. Altri esempi di software open source, sicuramente molto noti e diffusi presso il grande pubblico sono il browser web Firefox e la suite per la produttività personale Open Office, che permette di realizzare ed elaborare fogli di calcolo, produrre presentazioni, elaborare testi e immagini e tanto altro.
A mio avviso possiamo identificare tre parole chiave per contraddistinguere le peculiarità dei prodotti software oggetto di progetti open source: Stabilità, Sicurezza, Scalabilità. Queste caratteristiche derivano ancora una volta in modo in modo diretto dall'aspetto collaborativo e socializzante dell' Open Sorce.
Aprire il codice sorgente di un software a tutti non significa, come si potrebbe pensare ad una prima considerazione, renderlo meno sicuro di un codice di cui solo a pochi è nota l'architettura. Proprio perchè è aperto a tutti il codice open source può essere migliorato e reso più sicuro grazie allo sguardo attento di più persone. Vale la regola che più occhi vedono meglio di uno solo.
Così vale per il tema della stabilità dei sistemi open source così come per la loro scalabilità.
Una nota sul concetto di scalabilità: un software si definisce più o meno scalabile se è stato progettato con l'idea che possa essere in un futuro espanso con nuove funzionalità.
Essere scalabile, soprattutto in ambito web, rappresenta oggi un must per i software che vogliono affermarsi sul mercato. E' chiaro che è più facile realizzare un software scalabile se questo si nutre delle esperienze e delle idee di più persone.
Per i software Open source vale una regola che non sempre è vera per i software commerciali dove valgono di più le regole del marketing e che spesso sopravvivono a lungo anche se non sono veramente efficienti:
Se non funzioni bene, se non offri qualcosa in più degli altri non evolvi, se non evolvi muori.
Questa sorta di 'spietata legge di sopravvivenza naturale' è, se vogliamo, una sorta di 'garanzia di qualità' dei software open source che nascono, si evolvono e crescono. Se sono sopravvissuti alla spietata falce della selezione naturale della comunità informatica, hanno qualcosa da dire e si affermano nei propri specifici ambiti.
Drupal, è appunto un software libero Open Source nato nel 2001 dalla mente geniale di Dries Buytaert. Dal 2001 ad oggi Drupal è stato in continua evoluzione e ha attraversato diversi stadi di perfezionamento e potenziamento attraverso il rilascio di nuove versioni frutto del lavoro della sua comunità informatica che di giorno in giorno si arricchisce di nuovi adepti.
Ma cos'è Drupal?
Drupal è un sistema di gestione dei contenuti (Content Management System o abbreviato CMS) orientato al web, ha cioè il suo ambiente di utilizzo naturale la rete internet.
Un sistema per la gestione dei contenuti o CMS è un software che permette di facilitare la gestione e la produzione di contenuti di un sito web permettendo a chi non possiede le conoscenze tecniche di amministrare e gestire il proprio sito web in modo autonomo, semplice e intuitivo.
Attraverso l'utilizzo di Drupal la gestione di un sito web diventa un'attività alla portata di tutti avvicinando persone e aziende 'non addette ai lavori' ad attività prima appannaggio di una ristretta cerchia di tecnici che dovevano possedere competenze ben specifiche.
Con Drupal quindi le aziende diventano davvero proprietarie del proprio sito web non dovendo più delegare all'esterno l'attività di gestione dei contenuti e possono sfruttare appieno le potenzialità del mezzo internet come canale di comunicazione diretto e non più filtrato dai costi e dalle latenze di outsourcing a volte molto costosi.
Drupal diventa il mezzo per proiettare in modo semplice e pratico l'azienda in rete senza la mediazione di terze parti.
A questo punto, qualcuno potrebbe chiedersi:
“Drupal è un CMS e mi permette di gestire autonomamente il mio sito web, ma cosa lo rende 'speciale' ?”
In effetti la domanda è assolutamente legittima, soprattutto per chi ha già avuto a che fare con altri CMS (ad esempio WordPress o Joomla).
Questa domanda trova una prima risposta nella duplice natura di Drupal: Drupal, oltre ad essere un potente CMS è anche un CMF: ossia è un content management Framework.
E' un ambiente operativo che permette di estendere in qualsiasi direzione le funzionalità del software.
Per questo motivo si dice spesso che Drupal è un CMS modulare, ossia porta con sé la possibilità di aggiungere nuove e anche molto specifiche funzionalità all'installazione base.
Ogni funzionalità è appunto un modulo che si può aggiungere alla installazione base permettendo così di rendere il sistema anche molto specifico in grado di rispondere ad esigenze molto particolari.
Esistono migliaia di moduli disponibili per estendere le funzionalità di Drupal, scaricabili gratuitamente dal sito web ufficiale drupal.org.
La comunità di sviluppatori che gravita attorno al progetto Drupal rende disponibili decine di nuovi moduli ogni settimana, rendendo abbastanza difficile la domanda:
'Ho bisogno di questa funzionalità ma non trovo il modulo che fa per me!'.
E' chiaramente possibile che capiti un caso del genere, a cui si dà risposta, proprio grazie all'architettura di Drupal estremamente flessibile e scalabile, attraverso la scrittura del modulo che possa rispondere anche all'esigenza più esotica e al segmento di utilizzo più di nicchia.
Ma quali siti web si possono realizzare con Drupal, quali sono le esigenze aziendali o di business sul web che Drupal è in grado di soddisfare?
Questa è forse la domanda che più frequentemente ci viene posta durante i corsi su Drupal che SinerVis organizza.
E' una domanda che acquisice tanto più valore quanto più è particolare il progetto che l'azienda deve portare sul web.
La risposta è che qualsiasi tipo di sito web può essere realizzato con Drupal, ma soprattutto, elemento questo credo molto importante, qualsiasi modello di business può essere tradotto nella logica di funzionamento di Drupal.
Pensiamo a qualsiasi sito web vogliamo realizzare e con Drupal lo possiamo realizzare.
Ad oggi sono migliaia i siti web realizzati con Drupal, ognuno con la sua particolare specificità e ognuno rispondente a segmenti particolari di mercato, ognuno con le sue regole e logiche di business.
E' proprio il carattere astratto di Drupal come strumento per realizzare siti web e applicazioni che permette questo: a differenza di altri CMS strettamente orientati a realizzare un tipo specifico di sito web (es. Blog o E-commerce) Drupal partendo da un livello più astratto può implementare con facilità logiche di business differenti.
Drupal può 'trasformarsi' ad esempio per un sito in un motore di e-commerce e per un altro sito in un sistema di e-learning per le scuole.
Ma la vocazione più spiccata di Drupal è sicuramente quella alla socializzazione attraverso il web, che fa parte, se vogliamo, del patrimonio genetico di questo software in quanto software Open Source.
Il carattere socializzante, in piena ottica web 2.0 è presente già nel nucleo di Drupal, attaverso i moduli che permettono il commento dei contenuti e la loro votazione, oppure attraverso i moduli che permettono di inserire sul sito sondaggi o questionari di gradimento.
E' possibile poi arricchire queste funzionalità base con moduli più specifici e più fortemente legati all'amplificazione e la diffusione dei propri contenuti attraverso l'integrazione del proprio sito web con i siti di social newtwork più famosi, uno fra tutti, Facebook.
Drupal permette quindi di estendere il valore della propria comunicazione sul web in maniera virale e trasversale con l'ausilio di moduli che mirano a rafforzare il concetto di contenuti del web come apertura alla collaborazione e alla socializzazione.
Se poi vogliamo guardare al futuro del web, il cosiddetto web 3.0, Drupal si trova già in pole position attraverso una serie di moduli che permettono l'attuazione di un concetto di web semantico mediante l'analisi dei significati dei contenuti che permette un' esperienza di navigazione dell'utente assolutamente coinvolgente.
Il sito web permette di costruire un percorso di navigazione per l'utente basato su tracce di significato che coinvolgono contemporaneamente testi, video e immagini.
Il beneficio immediato per le aziende che adottano e adotteranno siti web basati sulla semantica dei contenuti è un'ulteriore avvicinamento ai bisogni dell'utente, offrendo una navigazione e una fruizione dei contenuti non più statica ma in grado di mantenere sempre alto l'interesse del visitatore.
Insomma, l'imprescindibile orientamento alla socializzazione degli utenti attraverso internet che i siti web necessariamente oggi devono avere per poter disegnare strategie di successo è perfettamente rappresentato e incarnato da questo cms polimorfico e multifunzionale che rappresenta ad oggi, a mio modo di vedere, uno degli esempi più eclatanti di successo di un progetto open source.
Il successo di Drupal è stato ulteriormente rafforzato dalla scelta da parte dell'Amministrazione Obama di utilizzare Drupal per i siti web governativi, in primis il sito web della casa bianca.
L'obiettivo di Obama era quello di avvicinare la gente alle attività governo americano e questo obiettivo poteva essere realizzato attraverso uno strumento che permette appunto una fortissima interazione fra utenti e sito web.
Questa logica può essere considerata valida per tutte le aziende che vogliono abbandonare un modello antiquato di presenza sul web e vogliono invece orientarsi verso soluzioni più innovative, al passo con i tempi e, soprattutto, vogliono essere sempre attente alle esigenze di ciò che l'utente ha bisogno di trovare nei siti web che naviga.
"Siamo come nani sulle spalle di giganti, così che possiamo vedere più cose di loro e più lontane, non certo per l'altezza del nostro corpo, ma perché siamo sollevati e portati in alto dalla statura dei giganti."
Richiedi informazioni
Valuta il tuo livello di preparazione
Metti alla prova il tuo grado di conoscenze informatiche per scegliere
il corso più adatto al tuo livello di preparazione.
Azienda associata con
Alcuni dei nostri corsi
Informatica di base
- Microsoft Office - Avanzato
- Statistica con Excel
- Che cosa è la certificazione Eipass?
- Tecnico Hardware & Sistemistica
- Microsoft Office - Base
Workshop
- Fotoritocco professionale con Photoshop CS5 (Workshop di 2 giorni)
- Adobe Photoshop CS5 base (Workshop di 1 giorno)
- Il mestiere del Web designer (Workshop di 2 giorni)
- Rendering con 3d Studio Max (Workshop di 2 giorni)
- Introduzione alla programmazione Android (Workshop di 2 giorni)
- Introduzione ad HTML5 (Workshop di 1 giorno)
Area Web
- Web Design
- Web Design con Drupal
- Adobe Flash CS5
- Photoshop Web Oriented
- Web Developer & Architect
- Adobe Dreamweaver CS5
- Adobe Fireworks CS3
- PHP & MYSQL
- Framework.NET
- Visual Studio C#
- Linguaggio ASP.NET
- Linguaggio VB.NET
- JavaScript
- Web Design Creativo
- Linguaggio XML
- HTML e CSS
Area Sistemistica
Area Grafica
- Grafica Pubblicitaria
- Grafica Pubblicitaria Avanzato
- Progettista e disegnatore Autodesk AutoCAD 2011
- Autodesk AutoCAD 2011 - Avanzato
- Interior Design
- Fotografia Digitale
- Quark Xpress
- Autodesk Maya
- Autodesk 3d Studio Max 2011
- ArchiCAD : modellazione 3d
- Progettazione e Realizzazione di Titoli Multimediali
- Adobe Photoshop CS5
- Fotografia Digitale: creatività e nuove tecniche
- Adobe InDesign CS5
- Adobe Illustrator CS5
Area Programmazione
- PHP
- Java
- Perl
- Visual Basic
- Linguaggio VBA
- Excel & VBA - Avanzato
- Access, VBA & SQL
- Linguaggio UML
- Linguaggio C
- Linguaggio C++
Area database
- Oracle PL/SQL
- SQL Server
- MYSQL: Gestione Database
- PostegreSQL
- Access: Gestione Database
- Access progettazione database
- Oracle: Amministrazione Database
- Oracle: Performance & Tuning
Percorsi speciali per aziende
- Gestione Elettronica dei Documenti
- Web Marketing: Sviluppo di una strategia di successo in rete
- Linux - Sicurezza Informatica
- Coaching Aziendale
- Web Marketing: tecniche SEO e indicizzazione dei progetti Web
Area Drupal
- Drupal: CCK e Views
- Drupal ottimizzazione performances
- Drupal configurazioni Enterprise
- Drupal ottimizzazioni SEO
- Drupal Gardens



