Al via! Rilascio del prodotto e procedure della community
difficile
Rilasciare il proprio prodotto non deve essere solo rendere disponibile un po' di codice per il download. Prima di rilasciare pubblicamente un prodotto e caricarlo su plone.org, meglio assicurarsi di essere davvero pronti per questo passo! Ecco qualche suggerimento su come procedere per aiutare la community di Plone a trovare il proprio prodotto, ad imparare ed iniziare ad usarlo e a capire come aiutare a migliorarlo.
Mettersi in contatto con altri sviluppatori di prodotti add-on
Questa può essere un ottimo modo per trovare consigli, aiuto, supporto ed entusiasmo! Gli sviluppatori Plone si trovano sulla loro mailing list dedicata: product-developers mailing list. Unisciti anche tu!
Condividi il codice nel Plone Collective
Ogni prodotto Plone dovrebbe avere un repository SVN pubblico, preferibilmente nel Plone Collective, a meno che non ci sia una ragione particolare per metterlo da qualche altra parte. Senza un repository SVN pubblico la Plone community non potrà aiutare a testare il prodotto o contribuire al suo sviluppo. Il Collective è il luogo più "accessibile" per il codice nella community. Assicurarsi sempre di aver "taggato" tutte le versioni nel Collective (ovvero, copiare il codice nella directory "tags"), e non modificare o cancellare mai qualcosa che è stato taggato - alcune persone potrebbero utilizzarlo per accedere a quel codice in zc.buildouts!
Pubblicare la scheda del proprio prodotto su Plone.org
Ogni prodotto add-on per Plone dovrebbe avere una propria voce in plone.org/products con informazioni accurate e aggiornate sulla versione corrente e su quelle passate. Non c'è nessun bisogno, ovviamente, di pubblicare una scheda del prodotto in questa sezione prima che questo venga rilasciato. Dato che la community di Plone tende a standardizzare verso l'uso di zc.buildout, è importantissimo non rimuovere o rinominare nessuna versione che si è creata su plone.org!
Il Plone Software Center (che gestisce plone.org/products) offre anche alcune funzioni utilissime per aiutare a mantenere e migliorare il proprio codice. È quindi importante sfruttare le seguenti risorse:
- Issue tracker: ogni prodotto dovrebbe avere un proprio issue tracker, ovvero un luogo in cui poter segnalare eventuali bug e problemi; dovrebbe trovarsi preferibilmente su Plone.org/products almeno che non ci sia una particolare ragione per metterlo da qualche altra parte. Ciò aiuta gli utenti del proprio prodotto a segnalare i problemi e a scoprire quando sono stati risolti.
- Roadmap: i prodotti in uso dovrebbero avere una roadmap per i miglioramenti futuri e per proposte.
Suggerimento: la maggior parte degli utenti apprezza molto il poter vedere un prodotto in azione prima di decidere effettivamente di usarlo. Se è appropriato e possibile, è sempre bene includere nella descrizione del prodotto un paio di URL che mostrano il prodotto in azione.
Consultare http://plone.org/documentation/tutorial/plone-software-center per altri suggerimenti su come sfruttare al meglio il Plone Software Center.
Se il proprio codice è distribuito come egg, assicurarsi di rilasciare ogni versione nel Python Package Index (alias PyPI; conosciuto anche come Cheese Shop) per mettere a disposizione il proprio codice per il zc.buildout con solo qualche riga di configurazione.
Documentazione
I prodotti che si occupano di funzionalità dedicate agli utenti finali di Plone dovrebbero fornire anche documentazione per utenti finali, possibilmente su plone.org, in modo che sia accessibile anche da chi non può entrare nel filesystem.
- Ogni prodotto dovrebbe avere un documento INSTALL o README che descriva chiaramente come installare e disinstallare il prodotto ed elenchi tutte le dipendenze.
- Per alcuni prodotti dovrebbe essere anche fornita documentazione per integratori su come customizzarli o estenderli.
- Il prodotto dovrebbe includere una licenza open source (preferibilmente GPL), credits ed appropriati numeri di versione.
- Dovrebbe essere mantenuto un file HISTORY.txt che elenchi i cambiamenti importanti apportati ad ogni versione, ovvero una chiara lista dei bug risolti, nuove funzioni, migliorie.
Coinvolgere la Community
L'aspetto più importante di Plone è la sua forte, varia e disponibile comunità di utenti e sviluppatori. I prodotti per Plone di maggior successo sono progetti che hanno coinvolto l'intera community; ciò aiuterà ogni sviluppatore a migliorare sempre più. È questo lo spirito di ogni community open source, entità che sono in genere sostenute da capitale umano e reputazione. È quindi anche importante farsi conoscere e guadagnare la fiducia degli altri membri, in modo che dall'altra parte la community sia sempre disposta ad aiutare e collaborare ai propri progetti.
- È sempre bene annunciare la realizzazione di nuovi prodotti sulla mailling list degli sviluppatori e degli utenti Plone.
- Il luogo migliore in cui chiedere aiuto per lo sviluppo di un prodotto è la lista degli sviluppatori Plone.
Consulta http://plone.org/support/lists
Continuare a coordinare il progetto
Una volta che un prodotto è stato rilasciato, è bene che il suo sviluppatore rimanga sempre il coordinatore del progetto, in modo da organizzarne i futuri sviluppi, continuare il suo miglioramento e dare continuo supporto agli utenti. Ciò significa:
- Indicare il proprio indirizzo email nella pagina del Plone Software Center relativa al proprio prodotto
- Rispondere sempre ai report dei bug e consultare continuativamente il bug tracker
- Trovare un nuovo coordinatore del progetto se si decide di abbandonarlo
