Utente:Valerio Bozzolan/Requisiti software

Da Wikimedia Italia.
< Utente:Valerio Bozzolan
Versione del 5 ott 2021 alle 08:43 di Valerio Bozzolan (Discussione | contributi) (→‎Licenza libera: commenti e integro Licenza ISC suggerita da Lorenzo Stucchi)
Jump to navigation Jump to search
Questa è una bozza. Gli utenti registrati sono invitati a migliorare questa pagina in qualsiasi momento.

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 mantenere il materiale libero)
  • materiale poco creativo: CC BY (adatta a diffondere il materiale con i giusti crediti all'autore)
  • dataset: CC 0 (adatta a Wikidata)