Opinioni

Vorresti usare Umbraco come CMS? Non te lo consiglio!

ottobre 20, 2011 by Giuseppe Maldarizzi | 2 Commenti

State pensando di utilizzare un CMS in .NET? Volete utilizzare Umbraco per creare il vostro sito dinamico? Non ve lo consiglio e vi spiego il perchè.

Anni fa, durante un lavoro di analisi sui CMS .NET open-source, ho avuto l'occasione di analizzare Umbraco e dopo averlo installato, dopo appena 10 minuti, l'ho subito escluso dalla lista dei possibili cms da usare per eventuali clienti. Nelle ultime settimane lo stiamo utilizzando per la creazione di un grosso portale e le mie considerazioni fatte negli anni scorso non sono affatto cambiate, anzi si sono rinforzate!

IT IS NOT CMS FRIENDLY!

Al contrario di quanto dicono, è un CMS complicato da utilizzare, è più indirizzato a sviluppatori .NET e non agli utenti finali. Muoversi nel backoffice non è affatto semplice e capire quale è l'iter da seguire per creare le pagine diventa dispensioso in termini di tempo se non te lo spiega qualcun'altro. E' da tenere molto in considerazione la formazione informatica dell'utente finale che più delle volte è un libero professionista che fa tutt'altro di mestiere.

Infatti Umbraco ti obbliga ad eseguire diversi passaggi prima di creare una semplice pagina:

- bisogna creare come prima cosa un Document Type ossia un documento dove andare ad inserire tutte le proprietà da rendere dinamiche e che devono essere ereditate dalla pagine;
- poi associare ad esso uno o più templates (una master page in sostanza) dove inserire il codice html (o meglio aspx);
- poi bisognerà creare un contenuto che utilizzi quel document type e quel template che rappresenterà la nostra pagina;
- se vi serve una dropdown list con dei dati da far selezionare all'utente dovrete creare un nuovo Data type partendo da una drop down già esistente.

E' vero che queste operazioni si dovrebbero fare una sola volta ma bisogna tener presente che se io cancello un data type già collegato ad un documento e quindi usato come contenuto... si spacca tutto! Quindi occhio agli aggiornamenti!

Attenzione a non confondersi! Umbraco non lavora con file e cartelle! I contenuti sono solo nodi annidati da una relazione padre-figlio nel database. Quindi da non confondere le icone delle cartelle con delle vere e proprie cartelle fisiche.

E i css?
Non esiste un editor interno, i css vengono gestiti come files esterni da collegare ai templates.

E le immagini?
Non si ha modo di importarle senza l'ausilio di plugin (che neanche funzionano bene). Esiste una gestione delle immagini nella cartella Media ma qui conviene inserire solo le immagini che possono essere condivise dagli utenti ed inserite tramite gli html editor.

E il multi-lingua?
Gestione pessima che non permette di collegare semplicemente un traduttore automatico e non ci sono plugin ad hoc per farlo. Io ho creato un event handler che ad ogni pubblicazione duplica il contenuto nelle altre lingue facendolo tradurre prima a Bing translator tramite un web service.

La parte positiva è la gestione di multi-domini che permette di assegnare ad una singola root di contenuti il dominio corrispondente con gli alias hostname. Ma anche qui attenti a due cose:

- se volete gestirvi le diverse lingue sullo stesso dominio (tipo www.miosito.it/en/) diventa complesso farlo funzionare e complicato gestirlo nel caso di grossi progetti. Purtroppo tutti i consigli trovati sul forum non mi sono serviti, non sono riuscito a farlo funzionare; meglio lavorare su diversi domini (www.miosito.com) o terzi livelli (english.miosito.it);
- prima di cancellare un nodo dove c'è un dominio assegnato, ricordatevi di rimuovere prima il dominio (sempre tramite alias hostname) e procedere poi con la cancellazione, altrimenti il sistema va in tilt e non vi permetterà di utilizzare quel dominio su altri nodi. Per risolvere bisogna andare a ripulire il dato sul database.

NON E' UN VERO OPEN SOURCE!

"Ma come, ci sono i sorgenti" direste voi!

Vero, ma il fatto di rilasciare i sorgenti per me non vuol dire essere "open". Infatti, se:

- non c'è molta documentazione valida, sia per utenti che per gli sviluppatori;
- non c'è una community organizzata che sa dare risposte concrete ai suoi utenti (c'è un forum dove ci sono tante domande e poche risposte).
- la maggior parte dei plugin utili (o meglio, packages) sono compilati e non rilasciano i sorgenti (a meno che non paghi...);
- i video tutorial più interessanti (umbraco-tv) sono a pagamento (19 € al mese) e non fanno altro che mostrarti come funziona il cms;
- il supporto costa un bel pò (si arriva finoa 2000 €)

...per me, questo NON E' OPEN SOURCE!

D'altronde, sono rari i prodotti Microsoft che hanno una bella community dietro paragonabile a Wordpress o Joomla e sarà per questo che il settore web del colosso di Redmond è più orientato ai professionisti.

Dimenticavo: se cercate argomenti in italiano, gli sviluppatori della community di umbracoitalia.org sono momentaneamente assenti o non pervenuti!

POCHI PLUGIN (PACKAGES) E TANTI PROBLEMI!

Scordatevi tutti i plugin presenti su Wordpress, qui la lista è molto più limitata. E non pensate che basti installarli per farli funzionare: i packages di Umbraco "potrebbero" essere installati on-fly dalla sezione Developer, peccato che il più delle volte il sistema non funziona e vi lascia la sua bella schermata gialla di errore.

Come fare allora?
Bisogna scaricare il plugin in locale dal repository e provare ad installarlo, incrociando tutte le dita, piedi inclusi. Perchè potrebbe andarti anche bene ma molte volte non riesce a salvarti tutti i files nelle cartelle giuste e, salvandoteli solo in parte, ti impedisce di reinstallarlo!

Per risolvere?
Se non è un problema sistemistico di permessi, armarsi di pazienza, tanta pazienza, e cercare nei forum come metterlo a posto!

PREGI?

Unico aspetto interessante per me è l'utilizzo di Script RAZOR.

Razor è un implementazione di Microsoft che permette di scrivere in un solo script sia la parte di design (html) e sia la parte di code-behind (c#); questo in Umbraco evita di creare diverse User Controls per ogni minima implementazione dinamica scrivendo semplici script.

Al primo avvio, Umbraco si carica in cache tutta la struttura nodi e contenuti attraverso un file xml. Questo da un punto di vista può essere un vantaggio poichè si può continuare a lavorare sui contenuti nel back-office senza rallentare le prestazioni nel front-end (la cache scade solo in caso di pubblicazione dei contenuti) ma da altro canto se le informazioni gestite sono tante il file xml di cache diventa troppo pesante poichè include tutti, html area comprese, i dati presenti nel database e la loro relazione.

In conclusione posso dire che è un CMS adatto agli sviluppatori con un bel background tecnico sulle tecnologie .NET ed è da utlizzare solo nel caso di semplici applicativi. In caso di grandi applicativi assicuratevi di avere una buona struttura sistemistica con hosting dedicato perchè ad ogni crash dovrete essere in grado di agire su files, cartelle e su configurazione IIS.

Ovviamente queste sono solo mie opinioni e considerazioni scaturite dopo alcune settimane di lavoro con Umbraco, quindi prendetele come tali e che nessuno si offenda!

Prima che me lo chiedete: io ci lavoro non per mia scelta, per questo progetto e cliente avrei preferito fare un CMS ad hoc dato che le variabili sono molteplici. Ma questa è la dura vita del programmatore!

Libri consigliati per approfondire l'argomento

2 Commenti
marzo 16. 2012 17.23
Alessio
Ciao giuseppe. Daccordo che come dici queste sono tue opinioni personali, ma forse su alcune cose per non conoscenza di umbraco hai un tantino esagerato.
Primo: tutto quello che dici tu sull'usabilita del back office è vera solo per gli sviluppatori. Bisogna essere esperti per utilizzarlo, ma d'altronde nasce come framework enterprise non come cms, tanto più che si sta pensando di astrarre il core rispetto all'interfaccia di gestione per utilizzarlo anche solo come framework puro.

Editor CSS: setting--> stylesheet.

immagini: media --> create... e ptrei continuare sulla parte di backoffice, ma capisco che a prima vista aprire un cms vuoto può spaventare se uno  è abituato a joomla..

community? hai mai provato a fare una domanda nel forum? i tempi di risposta in genere viaggiano nell'ordine di qualche ora..che per un forum è un risultato spaziale..
per la comunità italiana è giovane...sta crescendo, ma come tu mi insegni una comunità si deve autoalimentare.
i plugin sono scritti dai contributor non dal core..quindi la scelta di rendere o meno disponibile i sorgenti dipende da loro.

Infine per la complessità dei prodotti realizzati fidati, ad oggi l'xml è ancora il modo più veloce per gestire grandi quantità di informazioni...Ho alcuni portali con migliaia di nodi pubblicati e tempi di risposta pagina sotto al secondo..

Mi spiace che tu non apprezzi il prodotto...ma vedrai che se continuerai ad usarlo ed entrerai un po' più nelle logiche, non potrai puù farne a meno...per qualsiasi cosa ci troviamo su umbraco italia!!

A presto
Alessio



Alessio
marzo 19. 2012 10.07
FactoryLab
Ciao Alessio ho risposto al tuo commento con un nuovo post factorylab.debugger.it/.../...n-CMS-Friendly-.aspx  Grazie mille per le tue osservazioni.

Aggiungi commento


(Visualizza la tua icona Gravatar)

  Country flag