Utente:Valerio Bozzolan/Requisiti software
Guida per i progetti di sviluppo software sostenuti, finanziati o commissionati da Wikimedia Italia.
Preambolo
Wikimedia Italia gestisce centinaia e centinana di software e ringrazia chi seguirà queste indicazioni per rimanere collaborativi con il resto della comunità, prendendosi cura del proprio progetto.
In breve
I professionisti che collaborano per aiutare i volontari dei progetti Wikimedia e Wikimedia Italia sono incoraggiati a contribuire con spirito sociale e collaborativo in linea con il movimento per il software libero:
- #Pubblicazione del codice sorgente su GitLab o GitHub
- #Documentazione del progetto incoraggiando correzioni e ampliamenti puntando ad un pubblico senza particolari conoscenze pregresse sul tema. Sezioni suggerite per il file
README.md
:- About: cos'è il progetto, come nasce, come si struttura, ecc.
- Contribute: come si suggerisce di contribuire al progetto
- Contact: chi sono i referenti del progetto e chi contattare in futuro quando terminerà il progetto
- License: crediti ai contributori e nota sulla #Licenza libera
Pubblicazione
Si richiede che l'autore si prenda cura della pubblicazione e archiviazione del codice sorgente e della documentazione correlata in almeno una piattaforma sociale facilmente accessibile pubblicamente come GitLab, Phabricator, Gerrit, GitWeb, SourceHut, GitHub.
Controllo versione
Si richiede che il codice sorgente sia sotto controllo versione, suggerendo fortemente git, dato che è lo standard de facto.
Suggerimenti:
Non saranno accettabili strumenti di controllo versione proprietari o strumenti di controllo versione ormai in disuso. Altri strumenti di controllo versione liberi sono Subversion, Bazaar o Mercurial ma si richiede di motivare la loro adozione.
Documentazione
Si richiede che il progetto abbia una curata documentazione che permetta e faciliti le persone a comprendere lo scopo del progetto, la sua struttura, come contribuire, chi poter contattare in caso di bisogno e la licenza.
Sezioni suggerite per il file README.md
:
- About
- Contribute
- Contact
- License
La documentazione va bene anche in formato Markdown direttamente nel repository, o qualsiasi altro formato o piattaforma libera che ne incoraggi l'ampliamento o la traduzione.
La lingua preferita per i commenti nel codice sorgente e per la documentazione tecnica è l'inglese.
La lingua preferita per la documentazione utente è l'italiano.
Licenza libera
Il progetto software deve incoraggiare modifica e condivisione, anche nei materiali multimediali.
Quando si è gli autori e si deve scegliere una nuova licenza, si può usare questo prospetto:
- software lato-server: GNU AGPL v3+ (adatta a mantenere il server libero)
- software generico: GNU GPL v3+ (adatta a mantenere il software libero)
- piccolo script: licenza ISC (licenza molto semplice e molto permissiva)
- materiale multimediale creativo: CC BY-SA (adatta a Wikipedia e a mantenere il materiale libero)
- materiale poco creativo: CC BY (adatta a Wikipedia e a diffondere il materiale con i giusti crediti all'autore)
- dataset: CC 0 (adatta a Wikidata e a Wikipedia)