Abbiamo riunito tutti gli RSS che parlano di Plone.

Vuoi aggiungere il tuo blog al planet? Invia una mail alla lista italiana.

Ultimo aggiornamento: 22/05/2015 20:30:10

18/05/2015

di Giacomo Spettoli 13:05:50

Il digital workplace basato su Plone Intranet è prossimo alla prima release

Di ritorno da 5 giorni di lavoro serrato sul progetto Plone Intranet, ecco cosa è già pronto e la roadmap per i prossimi mesi.

05/05/2015

di Maurizio Delmonte 10:03:00

Una cartolina dal Plone Open Garden 2015

Questo video è un enorme ringraziamento per aver partecipato al Plog: ci auguriamo di rivedervi a Sorrento l'anno prossimo!

04/05/2015

di Federico Guizzardi 22:00:00

Plone e Alta Affidabilità

Come realizzare un sito in Plone in Alta Affidabilità in concreto.

27/04/2015

di Giacomo Spettoli 06:14:00

Plone Open Garden 2015 - l'occasione giusta per discutere e pianificare

Il PLOG, alla sua 9a edizione consecutiva, è stato dichiarato un Plone Strategic Summit, con ben 5 giorni per discutere, pianificare e preparare il futuro di Plone nei prossimi 5 anni.

31/03/2015

di Maurizio Delmonte 12:17:01

Il Plone Open Garden è alle porte, prepariamoci per una settimana dedicata a Plone

Il PLOG si svolge a Sorrento dal 7 all'11 Aprile, e l'argomento principale per il 2015 è il Plone Strategic Summit.

04/01/2015

di Maurizio Delmonte 23:00:00

Plone Open Garden 2015: un evento da non perdere!

Torna il PLOG, di nuovo a Sorrento dal 7 all'11 aprile 2015. Quest'anno l'evento ospiterà il Plone Strategic Summit e la festa per i 10 anni di Abstract.

10/11/2014

di Maurizio Delmonte 08:05:00

Plone Conference 2014: resoconto da Bristol.

Abstract ha partecipato all'evento ospitato da Netsight a fine Ottobre 2014: talk di qualità, social intranet consortium ed energia comunitaria sono stati la cifra dell'incontro.

05/11/2014

di Maurizio Delmonte 11:48:00

La comunità dice la sua sul futuro di Plone: cinque domande su Plone 5

Quale è l'innovazione migliore che aspetti da Plone 5, come sviluppatore e come utente? Ascoltiamo le idee della community in questo breve video.

29/10/2014

di Luca Fabbri 10:05:00

7 interessanti prodotti Plone che potresti voler usare

Sapete tutti che cos'è paragon.plone.org?

Se non lo sapete ve lo dico in due parole: è la nuova idea per rivoluzionare la pagina dei prodotti di plone.org che è in via di dismissione.

Il problema di questa sezione del sito (non è la prima volta che affronto la cosa) è che non tutti gli sviluppatori di add-on la tenevano aggiornata con le release recenti dei loro prodotti.
Morale della storia: prodotti eccellenti, qui, non sono sempre disponibili.

L'idea di Plone Paragon è di sostituire questa pagina con una nuova versione dove i contenuti saranno revisionati da umani senzienti, una "commissione d'inchiesta" che si metterà a valutare i prodotti esistenti per trovare "i migliori 50" (Se vi chiedete "perché 50?" la risposta è: "e perché no?!").

Ci sono alcune regole di massima: chiunque può sottomettere il prodotto che preferisce ma la giuria considererà vari fattori, tra cui la documentazione, la compatibilità con Plone 5, l'uso di Dexterity e non ultimo, che sia un prodotto che porti gloria a Plone.

Se non avete ancora nominato il vostro add-on preferito e le nomination sono ancora aperte, vi invito a farlo! Io ne ho sottomessi almeno 5... ma non vi dirò quali (siamo già in par condicio). Sappiate che nessuno di questi è stato fatto da RedTurtle (forse anche con una punta di scaramanzia)!

Visti i criteri, da questa lista saranno quindi probabilmente assenti (o comunque non dovrebbero far parte dei vincitori) i prodotti:

  • instabili
  • con poca/assente documentazione
  • utili solo agli sviluppatori
  • non tradotti e non traducibili.

In pratica Plone Paragon vuole trovare i prodotti "cool", che rendono grande Plone... ma è altrettanto sicuro che altri prodotti "un-po'-meno-cool" non otterranno quindi la giusta visibilità!
Ci sono vari prodotti per sviluppatori o prodotti di nicchia che non ho nominato (e nessun altro lo ha fatto) ma che, a mio parere, vanno tenuti d'occhio e utilizzati.

Ecco la mia lista... chiamatela pure "Plone Anti Paragon"!

collective.auditlog

http://github.com/collective/collective.auditlog

Questo prodotto è in via di sviluppo e non ufficialmente rilasciato ma ricopre un caso molto interessante e spesso ricercato: mantenere un monitoraggio delle attività fatte su Plone.
Potrete tenere traccia di tutte le volte che un documento Plone...

  • è stato creato?
  • è stato modificato?
  • è stato spostato?
  • è stato eliminato?
  • ...

La lista delle operazioni sotto monitoraggio può essere estesa, mentre i dati sono salvati su un database esterno a Plone e c'è il supporto all'uso di plone.app.async (continuate a leggere).

collective.elasticsearch

https://github.com/collective/collective.elasticsearch

Un altro prodotto non rilasciato, ma dalle promesse interessanti.
Tutti noi ci troviamo bene ad usare le funzionalità di ricerca native di Plone, ma in casi particolarmente spinti è bene che la ricerca venga demandata a software che la fanno di mestiere.

L'uso di Solr come sostituto o integrazione della ricerca Plone è cosa nota, ma ultimamente c'è un prodotto che sta prendendo piede per alcune delle sue caratteristiche: Elasticsearch. Non per niente servizi emergenti come searchly.com utilizzano esattamente Elasticsearch e le sue API.

La promessa di collective.elasticsearch è quella di poter sostituire (o mantenere in accoppiata) il catalogo Plone, demandando l'indicizzazione ad un Elasticsearch in ascolto.

Se fosse così semplice, sarebbe un enorme salto in avanti... rimanete sintonizzati!

RedirectionTool

https://github.com/collective/Products.RedirectionTool

Questo è un vecchio prodotto, ma che definirei un "sempreverde".
Fa un lavoro semplice ma efficace: fornisce al redattore un'interfaccia Web sulla funzionalità di Plone nel gestire i collegamenti interrotti (che tecnicamente è gestita da plone.app.redirector).

Se non ve ne siete mai accorti, ecco una delle tante funzionalità di Plone: quando spostate un contenuto da una posizione a un'altra (compresa l'azione "rinomina"), i link alla posizione originale vengono automaticamente rediretti con il corretto HTTP status alla nuova posizione, così utenti (e motori di ricerca) sono felici.

Il RedirectionTool permette di manipolare manualmente questo database interno di Plone.
Se vi state chiedendo dove sia l'utilità, sappiate che può diventare un inseparabile amico del SEO:

  • può aiutare a gestire la migrazione di tecnologia. Avete migrato il vostro sito PHP a Plone? Quale modo più semplice di redirigere la pagina "/contatti.php" alla contact-info di Plone?
  • potete creare alias anche partendo da URL non esistenti. Non usate LinguaPlone nel vostro sito ma decidere che la chiamata a "/en" venga rediretta ad una pagina statica in lingua inglese
  • potete eliminare voci dal database, che altrimenti non è modificabile nemmeno da ZMI.

collective.configviews

https://github.com/collective/collective.configviews

Vi è mai capitato di sviluppare viste che richiedano configurazioni? Ad esempio: una speciale vista per le cartelle dove il numero di elementi per pagina debba essere configurabile.

In questo caso si ricade spesso nelle due seguenti soluzioni:

  • avere una configurazione globale nel sito
  • aggiungere la configurazione ai campi del contenuto su cui la vista va applicata.

Entrambi gli approcci hanno notevoli limiti, ma potete risolvere tutto usando collective.configviews.

Lo scopo del prodotto è semplicemente quello di fornire un form di configurazione per le viste, tramite la definizione di interfacce (attività ben nota ai developer Plone).

Semplice, eppure geniale.

sc.contentrules.groupbydate

https://github.com/collective/sc.contentrules.groupbydate

Plone non ha nessun problema nel mantenere migliaia di elementi all'interno di una cartella... ma così non è per gli utenti che poi devono lavorarci (maledetti umani)!

Questo prodotto aggiunge una nuova regola di contenuto a Plone, che automaticamente archivia i contenuti aggiunti in una cartella in sotto-cartelle (che, se non esistenti, vengono create) organizzandole nella universalmente riconosciuta struttura anno/mese/giorno.

Il prodotto è particolarmente adatto per le redazioni che pubblicano tante news ed eventi, e rende molto semplici le operazioni di pulizia (cancellare tutti i documenti dell'anno 2004 non sarà più un problema!).

plone.app.imagecropping

https://github.com/collective/plone.app.imagecropping

Di prodotti di manipolazione immagini in Plone ne abbiamo parecchi e personalmente li ho sempre guardati dall'alto in basso: io sono di quelli che non vogliono far fare al CMS cose che dovrebbero essere fatte da un programma specifico... se la foto caricata la vuoi "nero di seppia", fattela con Photoshop!

Eppure, quando per esigenze di un nostro cliente Andrea si è imbattuto in questo prodotto, ho fatto un'eccezione alla regola. Non ne avevo mai sentito parlare prima ma è davvero ben fatto!

La bellezza del prodotto non è che permette di fare il ritaglio delle immagini (sua funzionalità principale), ma che permette di fornire immagini diverse, partendo da operazioni di taglio differenti, per tutte le miniature di Plone.

plone.app.imagecropping preview

Non vi è mai successo di volere un'immagine diversa per le vostre news nella miniatura pubblicata in homepage?

plone.app.async

https://pypi.python.org/pypi/plone.app.async

Quando Plone deve fare operazioni estremamente pesanti a seguito di un'azione di un utente, possono sorgere problemi di prestazioni e di User Experience.
Per questo motivo negli ultimi anni vari prodotti hanno iniziato a fornire un supporto opzionale (ma di solito: consigliato) per plone.app.async.

Questo prodotto si occupa di gestire, tramite un'istanza Plone dedicata, le operazioni "lunghe", che vengono messe in coda ed eseguite in seguito.

A parte collective.auditlog citato sopra, un ottimo esempio di questo è dato da wildcard.media (presente nelle selezioni di Plone Paragon!) quando deve occuparsi del pesante lavoro di codifica dei video caricati; l'utente carica il video e se plone.app.aync è presente e configurato, le versioni del video per i vari dispositivi sono fatte in seguito permettendo all'utente di non dover aspettare parecchi minuti in attesa della fine del task.

Alternativa interessante e totalmente in via di sviluppo è quella fornita da collective.celery (ma sono già arrivato a 7, finiamola qui!).

Conclusioni

Se vi state chiedendo "perché 7 prodotti?", la risposta che posso darvi è... "e perché no?!".

Alla prossima!

07/10/2014

di Maurizio Delmonte 07:53:00

Università e CMS: quale scegliere in ateneo?

Redazioni decentralizzate con utenti poco esperti, integrazione con i sistemi informativi interni, gestione di siti simili per facoltà e dipartimenti solo alcuni dei problemi da risolvere.

07/10/2014

di Maurizio Delmonte 07:53:00

Gestire i contenuti online di un ateneo è più facile con un CMS adeguato.

Redazioni decentralizzate con utenti poco esperti, integrazione con i sistemi informativi interni, gestione di siti simili per facoltà e dipartimenti solo alcuni dei problemi da risolvere.

01/10/2014

di Maurizio Delmonte 07:16:19

23/09/2014

di abstract 07:48:00

Webinar 4 - Pregi e difetti dei pricipali CMS Open Source

Il quarto webinar Abstract del 2014 ha messo a confronto i principali CMS Open Source, evidenziandone pregi e difetti.

03/09/2014

di Luca Pisani 22:00:00

Con plone.api si semplifica lo sviluppo delle applicazioni Plone.

La documentazione di plone.api è ben strutturata e permette anche ai neofiti di sviluppare da subito applicazioni in Plone.

26/08/2014

di Luca Fabbri 12:20:00

Autenticazione tramite social network con Plone? E' facile!

In questo articolo introdurrò un prodotto Plone che ci ha reso possibile l'autenticazione e la profilazione di utenti usando il proprio social network preferito: pas.plugins.velruse.

Vedremo i motivi per cui il plugin è stato sviluppato e le alternative possibili.

Tanto Tempo Fa, In Un Web Lontano Lontano

Lo sapere cos'è questo?

Join form Plone

Se avete risposto "un form di iscrizione ad un sito" avete sbagliato. Oggigiorno la risposta migliore è "il metodo più veloce per far allontanare il visitatore dal vostro sito".

Non è certo una novità che gli utenti del Web:

  • Abbiano fretta. Devono veramente essere interessati al vostro servizio per voler investire tempo nell'attivare nuove credenziali. Chiedete ad un utente di iscriversi al vostro sito solo se strettamente necessario.
  • Siano allergici alla creazione di nuovi account. Tutti noi custodiamo gelosamente un numero minimo di credenziali (posta elettronica, social network, la propria banca, ...) ma diventa estremamente complesso gestire un numero sempre crescente di servizi che richiedono autenticazione e profilazione utenti.

I gestori di credenziali, quasi sempre integrati nei maggiori browser, possono aiutare ma sono tutto sommato dei palliativi. La cruda realtà è che molti utenti in presenza della richiesta di iscrizione passano oltre.

 

La richiesta di credenziali va quindi evitata in tutti i modi o, se proprio necessaria, va resa talmente semplice da diventare banale.

La password che non dimentichi mai

Eppure la soluzione perfetta esiste, ed è passata inosservata nelle righe qui sopra.
Ci sono alcuni servizi senza i quali l'utente medio del Web non riuscirebbe a vivere! In alcuni casi questi servizi giustificano l'accesso alla rete da parte di una certa categoria di utenti.

Sto parlando dei social network!

Quante persone conoscete che visitano il proprio profilo Facebook non meno di 10 volte al giorno? Non so voi, ma io parecchie!

Per questi utenti ricordarsi lo username e la password di Facebook non è un problema (e, come vedremo poi, molto spesso non è necessario ricordarsi nemmeno questi dati).

Badate bene: Facebook non è l'unico esempio. Magari esistono persone che non hanno un account su questo social network ma usano spasmodicamente Twitter. Cambia qualcosa? No!

"Io sono a-social! Non uso nessun social network! Di vedere le foto del tuo gattino non me ne può importare meno!"

Già... esistono anche queste categorie di utenti. Magari sono una nicchia ma non è detto siano un numero così esiguo da dover essere ignorato.
Volete forse dire che queste persone non leggono nemmeno la posta? Tutti noi non abbiamo forse un account Google, per usare uno dei suoi numerosi servizi quali YouTube, GooglePlus, GMail, ...?

"Io sono a-social e combatto Google, perché penso sia il Grande Fratello del futuro!"

Ok... ma non siete nemmeno interessati alla vostra vita lavorativa? Non tenete aggiornato il vostro curriculum su Linkedin?

"Io sono a-social e combatto Google, perché penso sia il Grande Fratello del futuro e non trovo Linkedin utile perché è il lavoro che cerca me, non il contrario."

La cosa qui inizia a farsi difficile. Questa categoria di utenti è data di solito dai programmatori... della sottospecie "Programmatore Che Si Crede Membro Di Anonymous".

Eppure anche tu, oh Hacker Che Vivi nell'Ombra, non utilizzi forse uno dei famosi servizi di hosting di codice come GitHub o Bitbucket per rendere pubblico il tuo lavoro che salverà il mondo (ovviamente, rilasciato sotto licenza GPL 3!)?

Ironia a parte, come avrete capito, lo scopo è trovare un servizio indispensabile all'utente e una password che questi non abbia problemi a ricordarsi.

OAuth (come lo spiegherei alla mia Mamma)

Che cosa hanno in comune tutti i servizi che ho citato sopra? Sono tutti OAuth provider.
Cos'è OAuth? E' uno standard per la condivisione di dati e credenziali fornite da un provider ad un altro servizio a seguito di una esplicita autorizzazione dell'utente.

Belle parole, ma passiamo ai fatti.
Diciamo solo che questa tecnologia è quella che può salvarci dal doversi ricordare nuovi account ancora ed ancora; sono in realtà certo che l'abbiate già usata, magari senza sapere quello che stavate veramente facendo.

Facciamo un esempio pratico: il noto quotidiano "La Repubblica" ha la sua controparte Web disponibile al sito repubblica.it.
Il sito ovviamente non richiede autenticazione di per sé ma gli articoli sono commentabili dagli utenti; se navigate un po' noterete che i commenti non sono pochi.
In questo caso la profilazione dell'utente è necessaria (anche per evitare problemi di tipo legale) ma credete forse che repubblica.it obblighi un'iscrizione al sito?

Cosa succede cliccando sull'area di aggiunta di un nuovo commento? Si apre una finestra di popup così composta:

Commentare sul sito

Sebbene sulla destra ci sia la possibilità di creare un nuovo account nel sistema interno del portale, state pur certi che il 95% degli utenti viene attirato dai famigliari pulsantoni colorati sulla sinistra e sceglierà il proprio social network/servizio preferito.

Autorizzazione Twitter

A questo punto (qui sopra ho selezionato Twitter) la pagina successiva non è più del sito repubblica.it, ma mi sono spostato su twitter.com.

E' quindi Twitter mi sta chiedendo:

  • di autenticarmi
  • di autorizzare il sito repubblica.it ad accedere ad alcuni dei miei dati

Il primo passo poi non è detto sia necessario. Se con il browser utilizzato si era già autenticati in Twitter (quanti di voi immettono tutti i giorni la password di Facebook/Twitter/Google ogni mattina? Scommetto pochi...) non ho bisogno di autenticarmi di nuovo ma solo di confermare la richiesta si autorizzazione.

A questo punto eccomi autenticato (usando Twitter) sul sito de "La Repubblica", pronto a commentare la notizia/il video, etc. Il tutto in modo molto semplice e trasparente.

Pronto a commentare su

E' molto importante notare come la mia password Twitter non è stata data al sito repubblica.it. Questo sito ha accesso ad alcuni miei dati (da qui la richiesta di autorizzazione) ma nulla più.

Lost in OAuth

Ma quello che fa "La Repubblica.it" è fattibile nel mio nuovo sito Web?

L'utilizzo di un OAuth provider come fonte di autenticazione nel proprio sito Web si compone in due fasi:

  • la creazione di un'app nel provider
  • il collegamento tra il provider e il nostro servizio Web (parlando OAuth/OAuth 2).

Creare una nuova app è tutto sommato semplice (anche se ogni provider ha ovviamente procedure differenti e le prime volte si potrebbe fare un po' di confusione, ma nulla che una ricerca su Google non possa sistemare)

A questo punto però il vostro nuovo e scintillante sito Web dovrà trovare una libreria che permetta di "parlare OAuth"... e qui a volte nasce la vera complessità perché ogni servizio è differente. Maggiore è il numero di servizi che volete supportare, maggiori saranno i grattacapi da affrontare.

E' prova di questo il fatto che esistano aziende quali Janrain che fanno la loro fortuna unificando le differenze di accesso dei vari social e fornendo un'interfaccia comune: lo sforzo a questo punto diventa quello di parlare col servizio offerto da Janrain che a sua volta astrae le differenze che andremmo ad affrontare.

Un servizio per dominarli tutti.

Autenticazione social con Plone

Dato che il form di iscrizione che ho mostrato all'inizio di questo articolo è quello di un sito Plone, vediamo come possiamo semplificare l'autenticazione nel nostro amato CMS utilizzando altri authentication provider.

Vi sono varie strade, vediamole tutte per darvi modo di trovare la vostra.

cs.auth.facebook e cs.auth.twitter

Codesyntax ha sviluppato una serie di plugin di autenticazione Plone (PAS plugin) per l'accesso ai due più noti social network:

Non c'è molto da aggiungere se Facebook e Twitter sono tutto quello che vi serve.

Se qualcuno di voi sta dicendo "Ehi! Ne mancano alcuni, per lo meno Google!" posso solo dirvi: avete ragione.
A questo punto il vostro sforzo sarebbe quello di scrivere un plugin dall'ipotetico nome "cs.auth.google" che ricopra questa mancanza... e così via fino ad aver ottenuto un supporto per tutti i social network che vi interessano.
Ma ci sono lati negativi:

  • lo sforzo potrebbe non essere irrisorio
  • avrete installato ben 2, 3 o più prodotti aggiuntivi Plone
  • ogni volta che "qualcosa" cambia in uno degli authentication provider dovrete correre ai ripari e verificare che tutto funzioni.

plonesocial.auth.rpx

Ma se, come ho detto sopra, esistono aziende che si sono fatte carico di gestire tutto questa complessità, non esiste un unico plugin Plone per gestirli tutti?

Ovviamente sì. plonesocial.auth.rpx permette l'autenticazione su tutti i maggiori social network usando un singolo prodotto Plone ma sfruttando i servizi offerti da Janrain!
Per di più lo abbiamo già usato con successo in passato.

I giochi sono fatti. O no?

Privacy?!

Per quanto parlare di privacy in un articolo che illustra come autenticarsi usando social network possa sembrare un controsenso, ci siamo trovati ad dover affrontare anche questo argomento.

Molti lo ignorano ma la Normativa Italiana ha regole molto precise sul trattamento dei dati personali per i siti delle pubbliche amministrazioni. Ci è stato chiesto di avere l'autenticazione con social network in un sito Plone di una pubblica amministrazione.

La nostra prima scelta è ricaduta ovviamente su plonesocial.auth.rpx per poi scoprire che non era utilizzabile.
Che uso fa Janrain dei dati degli utenti (poiché Janrain è un tramite è ovvio che sia in possesso di alcuni dati degli utenti... a ri-ecco il Grande Fratello)?

Per aumentare la complessità della cosa era poi presente la richiesta di potersi autenticare usando anche FedERa, un sistema di autenticazione per i cittadini della Regione Emilia Romagna.
Janrain ovviamente non sa nulla di cosa sia FedERa.

A questo punto si è anche valutata l'implementazione di tutti i plugin PAS che al momento Plone non supportava (Google +, FedERa, ...) ma Andrew aveva già usato un'ottima alternativa  per l'uso di OAuth.

Velruse

Esiste un software Python per il framework Pyramid che replica le funzionalità offerte da Janrain senza però basarsi su servizi altrui: Velruse.

Velruse è Open Source, ed in questo modo il discorso privacy viene ampiamente superato, ma soprattutto è pluggabile.
Il prodotto offre di per sé un numero enorme di possibili provider ma rende semplice l'integrazione con nuove fonte dati... come lo è FedERa!

pas.plugins.velruse

Da qui il passo finale è stato davvero semplice. Abbiamo sviluppato un nuovo plugin PAS il cui scopo fosse quello di comunicare con un servizio Pyramid/Velruse (gestito dall'Ente stesso) per ottenere i dati degli utenti.

E' Velruse che si occupa di comunicare con i vari social network (FedERa incluso) nascondendo le complessità sottostanti. Il risultato finale è comunque un servizio di autenticazione social sullo stile di quanto ho mostrato per repubblica.it.
Plone ottiene i dati in modo uniforme: utenti del sito già profilati e con vari metadati disponibili (email, nome, ritratto, ...).

Durante le prime esperienze con Velruse (Velruse 1.0) abbiamo trovato alcune carenze minori: la foto dell'utente, sebbene disponibile, non veniva raccolta così come altri metadati come la località, l'email era assente da Linkedin, ...

Ma non stavamo parlando di un progetto Open Source? E allora perché non contribuire?! Dopo un paio di modifiche accettate nel progetto originale, la versione 1.1 ha risolto tutti i nostri problemi.

Login social completo

Per maggiori informazioni sul progetto vi rimando alla presentazione di Stefano.

La realizzazione di pas.plugins.velruse non sarebbe stata possibile senza il lavoro di (in ordine di importanza):

  • Ben Bangert - creatore di Velruse
  • Andrew - per aver scoperto ed utilizzato per primo questo prodotto dandoci le dritte iniziali
  • Mauro - per aver realizzato il plugin per FedERa ed averci supportato nelle installazioni Pyramid
  • Ed infine io e Andrea, che abbiamo sfruttato il lavoro altrui ed ora ce ne prendiamo i meriti.

Mr Burns"Il lavoro di squadra ti fa avanzare un tantino, poi la persona evoluta fa quello scatto in più per la gloria personale"
- Charles Montgomery Burns

Autenticazione Social? E' facile!

Spero che questo articolo vi abbia aperto gli occhi su quanto possa essere sconsigliato oggigiorno utilizzare la profilazione utente "in stile classico" (per non dire "vecchio") e che le alternative per una semplice integrazione OAuth ci sono (per lo meno: con Python e Plone!).

PS: caro lettore, ora sono sicuro tu stia per commentare questo articolo per dirci quanto siamo stati bravi. Non ti sei accorto che per i commenti a questo blog puoi usare i tuoi social network preferiti?!
Perderesti tempo a commentare se fossi obbligato ad iscriversi al blog?

Pensaci... :)

L'immagine di Monty viene da Wikipedia, le schermate del sito repubblica.it sono state prese dal sito stesso.