Massimo Aprile
www.massimoaprile.com
Chi sono? Zanardi
Salve. Il tipo ritratto a fianco è Massimo Zanardi, personaggio creato dal geniale Andrea Pazienza. Cosa c'entra con questo sito? Nulla, a parte che Zanardi è il mio nickname.
Io sono nella vita reale Massimo Aprile e questo sito
conterrà vari CMS e altro software open source, ovvero degli strumenti
per EDITARE DA VOI pagine web.
Lo scopo di questo sito è puramente didattico, in quanto il
sottoscritto tiene dei corsi, su base volontaria, per poter creare siti
web, rivolti a chi ha una preparazione scarsa o nulla in informatica,
per fornire ottime possibilità di occupazione rivolte a persone o
categorie particolarmente disagiate (giovani che non studiano nè
lavorano, anziani che hanno perso il lavoro, esodati e cassaintegrati,
diversamente abili, ex detenuti, migranti, etc...) a titolo
completamente GRATUITO, senza alcun finanziamento privato e pubblico e
senza alcuna remunerazione per il docente a parte un contributo per le
spese di manutenzione del dominio: a tal proposito, se qualche
visitatore mi volesse elargire una piccola offerta per sostenere e
finanziare questo progetto, ogni contributo, per quanto piccolo, sarà
gradito. Inviate dunque un'offerta tramite paypal allla mia email.
Un CMS (Content Management System, Sistema di gestione dei contenuti),
è un particolare software che viene solitamente installato su un server
web, che è una macchina che fornisce servizi web, e ce ne sono tante a
disposizione, alcune anche gratis.
Questo software, il CMS, serve per creare dei siti web anche molto
complessi, senza conoscere linguaggi di programmazione, codici
particolari o altro: i contenuti vengono facilmente aggiunti mediante
un editor on line (tipo quelli che trovate disponibili nei blog e sui
social network), come anche la grafica (templates o themes), facilmente
disponibili gratuitamente e ancora più facilmente installabile sul CMS.
Ovviamente
ci sarà anche un blog, un forum, news e altre cose che lascio decidere
a voi. Mi auguro che da persone adulte e vaccinate vi comportate bene,
perchè nè io nè il mio gentile provider siamo
responsabili dei contenuti che voi inserirete ( il link serve solo a
una doverosa pubblicità, perchè è un'ottimo provider, sia come costi
che come accessibilità).
Lezione 1: i CMS
Definizione
Per iniziare, diamo una definizione di CMS:
Un Content Management System, in acronimo CMS, (in italiano sistema di gestione dei contenuti), è uno strumento software, installato su un server web, il cui compito è facilitare la gestione dei contenuti di siti web, svincolando il webmaster da conoscenze tecniche specifiche di programmazione Web.
Tipologia
Esistono CMS specializzati, cioè appositamente progettati per un tipo preciso di contenuti, e si dividono in:
- CMS - orientati alla gestione di contenuti: siti, portali... (Content): Es: Joomla, Drupal...
- BMS - orientati alla gestione di blog: Es: Wordpress, Nucleus...
- FMS - orientati alla gestione di forum: Es: PHPbb, Mybb...
- LMS - orientati alla gestione di siti orientati alla didattica (Learning): Es: Moodle, Docebo...
- EMS - orientati alla gestione di siti orientati al commercio on line (Ecommerce): Es: Prestashop, ZenCart...
- WMS - orientati alla gestione di siti wiki, che sono dei particolari siti dove chiunque può editare, volendo anche senza autenticarsi: Es: Mediawiki (il software con il quale è fatta wikipedia), Docuwiki...
- IMS - Orientati alla gestione di siti contenenti immagini (Images), : Es: Coppermine, ZenPhoto...
- GMS - Orientati alla gestione di Guestbook, (libro visitatori): Es: Lazarus...
- MMS - Orientati alla gestione di siti contenenti Musica: Es: Kplaylist, PGenerator...
- PsMS - Orientati alla gestione di sondaggi (Pool&Surveys): Es: Piwik, LimeSurvey...
- RMS - Orientati alla gestione di aggregatori di notizie (RSS): Es: Gregarius...
- PmMS - Orientati alla gestione di siti di gestione di progetti, da usare in ambito aziendale, per raccogliere documenti, organigrammi, un pò quello che fa ad es. il Microsoft Project (Project Management): Es: Feng Office...
- SMS - Orientati alla gestione di siti destinati a divenire dei Social network :E(come facebook o twitter). Es: Jcow, Sharetronix....
- CsMS - Orientati alla gestione di siti che si occupano di fornire supporto alla clientela o ai fornitori, attraverso sistemi di ticketing (brevi messaggi gestibili da cliente a supporter) (Customer Support): Es: OsTicket...
- OMS - Orientati a altri scopi (Others): Es: SEO Panel orientato all'ottimizzazione delle ricerche in motori di ricerca come Google o Bing (Search Engine Optimization), oppure IMM orientato alla gestione centralizzata di contenuti multimediali, Oscailt orientato a creare reti antagoniste tipo Indymedia...
Cenni storici
I Content Management System sono nati negli Stati Uniti
furono inizialmente sviluppati per uso interno in reti private
(INTRANET), da alcune aziende pubbliche o private, come Università,
Enti di ricerca, Imprese, Case editrici, che producevano notevoli
quantità di documenti e pubblicazioni.
Nel 1995 la CNET,
una famosa rete americana che pubblicava online notizie e blog
riguardanti elettronica di consumo e nuove tecnologie, rese pubblici
gli studi e i prodotti sviluppati internamente, distribuendoli
gratuitamente con l'etichetta Comics.
La compagnia
cominciò a mettere a disposizione il proprio software come sistema di
gestione dei contenuti via web. Per la prima volta un utente poteva
creare il proprio sito direttamente dal Web, usando l'interfaccia CNET.
Nel 1998, la Pencom Web Works, una compagnia di consulenza aziendale, introdusse il server di trasformazione dati (DTS-Data Transformation Services) Metaphoria, che permetteva agli sviluppatori del linguaggio Java
di scrivere applicazioni che si potevano collegare ai contenuti, e
permettevano di distribuire tali contenuti su canali diversi. In altre
parole: questo software permetteva di scrivere pagine web senza
conoscere i relativi linguaggi di prograIl prodotto non ebbe successo,
ma il concetto che era stato introdotto costituì le basi di ciò che è
diventato il CMS odierno.
Caratteristiche
Tecnicamente, un CMS è un'applicazione lato server che si appoggia su un database preesistente per lo stoccaggio dei contenuti; l'applicazione è suddivisa in due parti:
- una sezione di amministrazione (back end), che serve ad organizzare e supervisionare la produzione dei contenuti. A questa sezione si accede generalmente con username e password e coloro che vi operano sono i vari amministratori, editori, redattori, sottoscrittori del sito.L'amministratore del CMS gestisce dal proprio terminale, tramite un pannello di interfaccia e controllo, i contenuti da inserire o modificare.
- una sezione applicativa (front end), che l'utente web usa per fruire dei contenuti e delle applicazioni del sito. Questa sezione, generalmente liberamente visibile senza inserire username e password, è l'insieme le pagine web che visualizza il visitatore del sito.
I CMS possono essere realizzati tramite programmazione in vari linguaggi web tra cui il più diffuso è il PHP, e il database più diffuso su cui si appoggiano è il MySQL: questo perchè rende il CMS multipiattaforma,
ovvero che può funzionare su vari sistemi operativi, e non solo su
piattaforme proprietarie, e inoltre rende il CMS gratuito e liberamente
usufruibile, modificabile e sviluppabile da tutti, nel pieno spirito di
condivisione del software, ma non solo, che è alla base delle licenze
libere, dette Open Source, come la GPL, Creative Commons, che
permettono non solo di rendere il software gratuito (non
necessariamente...), ma anche di poter esser liberamente modificato, a
patto che qualsiasi modifica sia resa disponibile a tutti, e che non
sia sottoposta a varie forme di proprietà intellettuale, tipo diritti
d'autore, brevetti, etc...
Tuttavia, esistono CMS scritti in altri
linguaggi di programmazione (Perl, Python, Ruby, Java) ugualmente
liberi e gratuiti perchè i linguaggi stessi sono anch'essi open source,
quindi sottoposti al vincolo che ogni prodotto di questi linguaggi deve
essere anch'esso open source, o che si appoggiano ad altri sistemi di
DB ugualmente Open Source (PostgresSQL, MySQLi).
Viceversa, alcuni CMS sono proprietari, nel senso che non sono
gratuiti, e il loro codice è blindato, ovvero è modificabile solo dagli
sviluppatori di quell'azienda, e alcuni non sono neanche
multipiattaforma, perchè i linguaggi con cui sono scritti (ASP.net, C++
della Microsoft, ObjectiveC della Apple) sono proprietari delle
rispettive aziende, così anche i Database sui quali si appoggiano
(MSSQL, ADODB della Microsoft, Oracle...). Per usare questi CMS occorre
spesso acquistare una licenza, spesso molto onerosa, fino a un migliaio
di Euro.
Problema di gestione dei contenuti
In un approccio sistematizzato al problema della gestione dell'informazione si affrontano le seguenti fasi:
- Identificazione degli utenti di back-end e dei relativi ruoli di produzione o fruizione dell'informazione, di controllo e coordinamento;
- Assegnazione di responsabilità e permessi a differenti categorie di utenti per distinti tipi di contenuti (in un progetto complesso il prodotto finito non è frutto del lavoro del singolo, che pertanto non ha possibilità o esigenza di intervenire in tutti gli ambiti);
- Definizione delle attività di flusso di lavoro, cioè formalizzazione di un percorso per l'assemblaggio del prodotto finale che, in quanto frutto di produzione frammentaria, deve acquisire la sua unitarietà sottostando a opportune procedure di supervisione. Più prosaicamente, per poter rendere efficiente la comunicazione tra i vari livelli della gerarchia, è necessaria un'infrastruttura di messaggistica, con la quale i gestori del contenuto possono ricevere notifica degli avvenuti aggiornamenti;
- Tracciamento e gestione delle versioni del contenuto;
- Pubblicazione del contenuto;
- Definizione del palinsesto editoriale.