PDA

Visualizza la versione completa : Il CMS ideale


Arthens
23-10-2006, 15:06
No, non voglio fare pubblicità ad un particolare CMS ne parlare dei vari CMS esistenti, mi chiedevo solo quali sono le caratteristiche che ognuno di noi cerca in un CMS, quali sono opzionali e quali irrinunciabili.

Chiederei a tutti di evitare riferimenti a CMS esistenti perchè lo scopo non è questo. Vorrei evitare che qualcuno utilizzasse questa discussione per far pubblicità al proprio CMS preferito.


Premetto che ho volutamente tralasciato caratteristiche quali velocità, capacità di gestire grandi carichi di traffico ecc. perchè le considero scontate. Chi non le vorrebbe?


Parto io.
Il CMS ideale dovrebbe avere assolutamente queste caratteristiche:
[list=1]
modularità estrema: sogno un CMS che fornisca solo il CORE ed un set degli strumenti necessari (sistema di templating, caching, accesso al database ecc) lasciando poi all'utente la possibilità di costruire il sistema (inteso come installazione dei moduli esistenti, non per forza la scrittura di propri moduli) in base alle proprie esigenze.
Non mi piacciono infatti i cms che li installi e ti trovi già statistiche, referal, autolink, forum, blog, gallery ecc... sicuramente sono una semplificazione per chi è novello o ha poco tempo, ma il rischio è di avere un sistema troppo pesante e difficilmente flessibile.

Ad esempio mi è capitato di provare un CMS famoso (nn faccio nomi) e abbastanza buono ma con già integrato il forum, mentre io volevo utilizzare un'altra board più potente.
Si poteva sostituire certo, ma perdendo molte caratteristiche del CMS. A questo punto preferisco che nn ci sia un forum integrato ma che sia fornito uno strumento che permetta una buona integrazione con i vari tipi di forum.

CORE solido: mi sembra di notare che molti CMS perdano troppo tempo dietro allo sviluppo dei vari moduli a volte trascurando le funzioni di sistema. A mio avviso grave, perchè i moduli li si può sostituire se servono più opzioni, mentre sostituire/modificare file di sistema non è una bella cosa.

API (Application programming interface) chiare ed efficienti: non mi è mai capitato di poter fare tutto con i moduli già esistenti, per questo ritengo fondamentale avere degli strumenti per integreare perfettamente i moduli che scrivo con quelli di sistema. Molti CMS purtroppo non hanno uno standard chiaro e/o poca documentazione a riguardo

granularità dei permessi: questa è una cosa a cui non potrei assolutamente rinunciare. Finchè parliamo di piccoli siti autogestiti o gestiti con amici i permessi sono secondari. Ma se invece parliamo di siti con prospettive di crescita importanti in cui si prevede di assegnare le singole sezioni a persone diverse la granularità dei permessi è fondamentale.
Trovo assurdo infatti che alcuni CMS la demandino ai moduli.

Bridge ed integrazioni: Il CMS ideale dovrebbe potersi integrare facilmente ALMENO con i maggiori forum e gallery della rete (ma vale per molti altri progetti). Per portali grossi a mio avviso è fondamentale potersi basare su realtà consolidate (es. vbulletin, phpbb, coppermine, gallery2 ecc.) invece che sui soli moduli del CMS stesso (quasi sempre carenti di funzioni rispetto a progetti citati)
[/list=1]

Altre caratteristiche che vorrei ma a cui sarei disposto a rinunciare per avere quelle di cui sopra:
[list=1]
Un sistema di templating MOLTO flessibile: ciò che non mi piace dei CMS è che molto spesso solo guardando un sito è possibile capire che CMS usa perchè l'impostazione della pagina è sempre la stessa. Sicuramente è colpa anche dei webmaster, ma spesso alcune scelte sono delle limitazioni dei sistema di tample integrati

Tanti moduli tra cui scegliere: almeno per le funzioni base (news, categorie, links, download) vorrei poter installare (e non trovare già installati) dei moduli già pronti, altrimenti richiede troppo tempo lo sviluppo

essere un Framework oltre che un CMS: come ho detto prima a me interessa poter sviluppare i miei moduli, se il CMS mi fornisce degli strumenti che velocizzino e semplifichino questo procedimento tanto di guadagnato

Una community attiva: l'ho messo tra le cose non necessarie perchè sviluppando da personalmente molti moduli riesco quasi sempre a sopperire a questa eventuale mancanza, ma in ogni caso è un fattore molto importante che va considerato al momento della scelta.

Sistema di caching: nell'eventualità che il nostro progetto abbia MOLTO successo potrebbe essere fondamentale, se c'è è meglio per evitarsi futuri grattacapi
[/list=1]


Queste sono le caratteristiche che al momento mi vengono in mente, probabilmente ne aggiungerò in futuro. Ovviamente queste caratteristiche sono legate all'uso che ne faccio io ed è normale che molti non le condivideranno, almeno in parte.


Voi cosa cercate? :)

daniele_dll
23-10-2006, 16:39
direi che questo è il minimo, è non c'è bisogno di rinunciare a nulla (parlo per esperienza)

piuttosto un'altra cosa secondo me fondamentale è:
- documentazione ben scritta
- supporto per lavorare in ambienti distribuiti (cluster), quindi possibilità di salvare TUTTI i files nel db
- supporto per lavorare con un sistema MASTER/SLAVE con i db
- caching, sia delle variabili interne sfruttando software come apc, eaccelerator e memcached oltre al caching dell'output (sia quello integrale sia il semicaching che mette in cache solo l'output dei moduli, blocchi e quant'altro)

Altre funzionalità secondo me importanti, anche se non fondamentali:
- Stackable Authentication, ovvero la possibilità di creare un'elenco di sistemi di autenticazione attivi che devono essere usati in modo da poter integrare a pieno il CMS con qualsiasi sistema ... ovviamente la gestione dei permessi è in toto gestita dal cms, ma l'autenticazione viene gestita dal modulo specifico che al primo login si occupa di creare un'utente fittizzio a cui assegnare permessi, settaggi, log e quant'altro

Poi ci sono anche altre cose, ma sono veramente da folli :D

ringo_mato
23-10-2006, 18:19
secondo me ci potrebbe essere pure la semplicità dello sviluppo dei moduli
non deve occorrere una laurea per scrivere un modulo

:ciauz:

Arthens
23-10-2006, 23:29
Originariamente inviato da daniele_dll
direi che questo è il minimo, è non c'è bisogno di rinunciare a nulla (parlo per esperienza)

purtroppo molti CMS blasonati mi hanno deluso su uno o più di questi punti, siam d'accordo che dovrebbero essere il minimo ma a me sembra che troppo spesso vengano dimenticati


Originariamente inviato da daniele_dll
- supporto per lavorare in ambienti distribuiti (cluster), quindi possibilità di salvare TUTTI i files nel db
- supporto per lavorare con un sistema MASTER/SLAVE con i db

Questo dipende molto dal progetto... ovviamente se c'è questo supporto è meglio, ma se sappiamo che il nostro progetto non arriverà mai a grandezze tali da richiedere tale struttura possiamo anche rinunciarvi.
Diciamo che queste 2 voci le aggiungerei alla mia lista ma con un bel "dipende dal progetto"



Originariamente inviato da ringo_mato
secondo me ci potrebbe essere pure la semplicità dello sviluppo dei moduli
non deve occorrere una laurea per scrivere un modulo

:ciauz:

Si e no.
Sicuramente tra 2 metodi che permettono di raggiungere lo stesso risultato (in termini di integrabilità, chiarezza del codice, manutentibilità ecc) è migliore quello più semplice, ma se invece si chiede di sacrificare la "potenza" a favore della semplicità non sono d'accordo.
O meglio, non è ciò che cerco io.

daniele_dll
24-10-2006, 09:03
Originariamente inviato da Arthens
purtroppo molti CMS blasonati mi hanno deluso su uno o più di questi punti, siam d'accordo che dovrebbero essere il minimo ma a me sembra che troppo spesso vengano dimenticati



Questo dipende molto dal progetto... ovviamente se c'è questo supporto è meglio, ma se sappiamo che il nostro progetto non arriverà mai a grandezze tali da richiedere tale struttura possiamo anche rinunciarvi.
Diciamo che queste 2 voci le aggiungerei alla mia lista ma con un bel "dipende dal progetto"




Si e no.
Sicuramente tra 2 metodi che permettono di raggiungere lo stesso risultato (in termini di integrabilità, chiarezza del codice, manutentibilità ecc) è migliore quello più semplice, ma se invece si chiede di sacrificare la "potenza" a favore della semplicità non sono d'accordo.
O meglio, non è ciò che cerco io.

Il discorso è moltooo semplice: non c'è un motivo se non l'ignoranza/incapacità da parte dello sviluppatore per realizzare un software (in questo caso un cms) che rispetti delle specifiche

Se tu progetti un CMS che deve rispettare delle date specifiche allora quelle devono essere rispettate e per specifiche intendo non tanto le linee guida ma bensì un progetto completo che tratti le funzionalità implementate una ad una ... le api esposte dal framework ... e quindi in questo caso anche le api esposte dal gestore dei moduli e dalle interfacce usate per i moduli

Anche se purtroppo queste cose molto spesso vengono dimenticate da chi realizza software di questo genere, sono a dir poco vitali :\

rookie
26-10-2006, 11:37
uso da 1 settimana un cms(non vi dico quale) ed ho trovato due punti critici, dal punto di vista sia del webmaster che dell'utente.
Il primo e' che il layout(o template) alle volte e' macchinoso da gestire e poco flessibile, vi aiuto dicendo che il "mio" cms ha disponibili dei template a pagamento, visto quanto sono incasinati da farsi.
Il secondo problema e' questo: la documentazione di solito e' limitata all'osso -anche se ben approfondita e curata; si tiene conto solo di chi lo installera' e fara' da admin. Il contributo in contenuti pero' viene dato anche da gente che -alle volte- e' scarsamente alfabetizzata informaticamente(digital divide?), quindi vedrei un po' piu' di enfasi nel prendersi cura del registered user mettendogli a disposizione delle schermate molto didascaliche e scritte -se possibile- non in computerese, magari affiancate da schermate di help molto esaustive

Loading