Se volete creare un blog professionale, non esistono molte alternative: la soluzione è WordPress, nella versione self-hosted, ovvero quella che si scarica da wordpress.org e si installa sul proprio server. Esistono mercati di nicchia per particolari categorie, ma al momento attuale non c’è neanche bisogno di fare confronti o starci a pensare. Ho seguito il suo sviluppo e la sua espansione da quando è nato, mi piace il team che ci lavora e la sua filosofia (code is poetry).
WordPress è uno strumento diffusissimo, semplice da installare, configurare e gestire, dispone di migliaia di temi per personalizzare l’aspetto, migliaia di plugin per estendere le funzionalità, è diventato lo standard di fatto per gestire blog e anche siti con strutture complesse, e non si può sbagliare scegliendo di utilizzarlo.
Ma va bene per tutto? Ovviamente no. WordPress è specializzato a fare bene una cosa in particolare: gestire un blog, un magazine o un gruppo di blog.
Per blog si intende una raccolta di articoli caratterizzati da un ordine cronologico, con magazine definisco un blog esteso, caratterizzato da più utenti e sezioni, ma pur sempre caratterizzato da un ordine cronologico e da un aggiornamento costante.
WordPress offre anche strumenti per la gestione di cms e dati strutturati, e in molti casi può essere utilizzato anche per quello, ma non è una bacchetta magica che può risolvere ogni esigenza di pubblicazione online. Esistono plugin che permettono di utilizzarlo per fare qualunque cosa, ma il suo uso principale dovrebbe essere quello del blog o del magazine.
Vediamo i casi in cui conviene utilizzare altri strumenti, oppure affiancarli a WordPress.
Wiki
Se vi serve uno strumento in cui molte persone debbano collaborare e modificare continuamente le informazioni (come per esempio nella Wikipedia), quello che vi serve è uno strumento per gestire wiki: il mio preferito è dokuwiki, che va benissimo per piccoli team, è semplice da imparare e permette di settare un wiki in poche ore e iniziare a lavorarci produttivamente in pochissimo tempo.
Esistono anche strumenti più evoluti, adatti a gestire grandissime quantità di utenti e dati, come per esempio mediawiki (lo stesso utilizzato da Wikipedia).
So che esistono plugin e temi che permettono di utilizzare WordPress come un wiki, ma lo vedo una forzatura e non ne ho mai trovati di soddisfacenti.
Forum
Se avete bisogno di creare una comunità e discutere su vari argomenti, quello che serve è uno strumento per forum, come per esempio phpbb, vbulletin o bbpress.
Con questo strumenti ogni utente abilitato può aprire una discussione e tutti gli altri possono intervenire. Sono tutti dotati di ottimi strumenti di ricerca, che permettono di recuperare vecchie discussioni e informazioni.
Bbpress è basato sullo stesso nucleo di WordPress e i due strumenti si integrano bene: può essere utile se dovete aggiungere funzionalità di forum ad un WordPress già installato, o se volete integrare la base di utenti che già avete.
CMS
Se dovete creare siti non basati su un ordine cronologico, ma piuttosto su un insieme anche grande di pagine e sottopagine, magari con maschere di inserimento particolari, vi servirà un vero e proprio CMS (content management system) e probabilmente sarà più adatto uno strumento come Joomla o Drupal.
Anche in questo settore WordPress offre parecchi plugin, e a partire dalla versione 3 è possibile definire custom post, fields e taxonomies, ovvero in parole povere definire dati strutturati e predisporre maschere di inserimento, ma non lo vedo come lo strumento ideale se il CMS è particolarmente complesso. E’ sempre meglio utilizzare strumenti appositi.
Social networks
Se volete creare una community, sullo stile di Facebook ma concentrata su argomenti e nicchie specifiche, vi servirà uno strumento per la gestione di communities, come Pligg oppure Buddypress.
Buddypress è basato sullo stesso nucleo di WordPress (anzi è nato come plugin di WordPress per aggiungere funzionalità social a WordPress Multiuser).
Esistono anche soluzioni hosted, per le quali non dovete neanche preoccuparvi dell’installazione ma tutto quello che dovete fare è pagare un abbonamento per avereuna soluzione già pronta: per esempio Ning.
Online shops
Se il vostro obiettivo è vendere prodotti o servizi online, potete utilizzare plugin per i più diffusi strumenti di blog e cms, come per esempio wp ecommerce, Jigoshop, Shopp, o Cart66 per WordPress. Ma se lo shop è grande e articolato (o ha intenzione di diventarlo), anche qui conviene utilizzare strumenti specificatamente dedicati all’ecommerce come per esempio Prestashop o Magento.
Web applications
Se infine avete bisogno di creare delle web application particolari, le cui funzionalità non rientrano in alcun pacchetto standard, allora bisognerà rivolgersi a programmatori specializzati, che utilizzeranno dei frameworks, ovvero degli strumenti che offrono una serie di funzionalità di alto livello. I frameworks permettono di costruire l’applicazione modularmente, con costi e tempi minori rispetto a quelli di creare un’applicazione da zero utilizzando il linguaggio di programmazione puro e semplice.
l campo dei frameworks è vastissimo, ne esistono per la maggior parte dei linguaggi di programmazione, e per le più diverse esigenze. Fra i più utilizzati ci sono cakePhp, Simfony, CodeIgniter, Yii, Django, Ruby on Rails.
Considerazioni finali
Se volete sviluppare un progetto sul web, dovete avere ben chiaro il tipo di progetto. Se rientra in una categoria per la quale esistono già strumenti, conviene sicuramente utilizzarne uno, dedicando il proprio budget alla personalizzazione. Se invece non rientra in alcuna delle tipologie standard, allora dovrete farvi sviluppare una web application, con tempi e costi molto maggiori.
Gli errori più grossi che vedo commettere nel campo dei progetti web sono:
- Inventare l’acqua calda investendo soldi per sviluppare applicazioni che esistono già (e a meno che non abbiate budget di milioni di euro non potrete mai competere con gli strumenti già disponibili);
- utilizzare uno strumento per un compito che non è il suo.
Consiglio quindi di dedicare sempre il giusto tempo alla fase di analisi, per scegliere subito lo strumento adatto. Cambiare in corso d’opera potrebbe essere talmente costoso da rendere il progetto insostenibile.