Playbook SIG

Ambito di un SIG

TensorFlow ospita gruppi di interesse speciale (SIG) per concentrare la collaborazione su aree particolari. I SIG svolgono il loro lavoro in pubblico. Per partecipare e contribuire, rivedere il lavoro del gruppo ed entrare in contatto con il leader del SIG. Le politiche di adesione variano in base al SIG.

L'ambito ideale per un SIG rientra in un ambito ben definito, in cui la maggioranza della partecipazione proviene dalla comunità. Inoltre, dovrebbero esserci prove sufficienti che vi siano membri della comunità disposti a impegnarsi e a contribuire nel caso in cui il gruppo di interesse venga istituito.

Non tutti i SIG avranno lo stesso livello di energia, ampiezza di portata o modelli di governance, quindi aspettatevi una certa variabilità.

Consulta l'elenco completo dei SIG TensorFlow .

Non-goal: cosa non è un SIG

Lo scopo dei SIG è facilitare la collaborazione sul lavoro condiviso. Un SIG è quindi:

  • Non un forum di supporto : una mailing list e un SIG non sono la stessa cosa.
  • Non immediatamente necessario : all'inizio della vita di un progetto, potresti non sapere se hai condiviso lavoro o collaboratori.
  • Non manodopera gratuita : serve energia per crescere e coordinare il lavoro in modo collaborativo.

Il nostro approccio alla creazione di SIG sarà conservativo: grazie alla facilità di avviare progetti su GitHub, ci sono molte strade in cui la collaborazione può avvenire senza la necessità di un SIG.

Ciclo di vita del SIG

Ricerca e consultazione

I proponenti dei gruppi dovranno raccogliere prove per l'approvazione, come specificato di seguito. Alcune possibili strade da considerare sono:

  • Un problema ben definito o una serie di problemi che il gruppo vorrebbe risolvere.
  • Consultazione con i membri della comunità che potrebbero trarne beneficio, valutando sia il beneficio che la loro volontà di impegnarsi.
  • Per i progetti esistenti, prove provenienti da problemi e PR che dimostrano che i contributori sono interessati all'argomento.
  • Potenziali obiettivi da raggiungere per il gruppo.
  • Requisiti in termini di risorse per la gestione del gruppo.

Anche se la necessità di un SIG sembra evidente, la ricerca e la consultazione sono comunque importanti per il successo del gruppo.

Creazione del nuovo gruppo

Il nuovo gruppo dovrebbe seguire il processo di noleggio riportato di seguito. In particolare dovrà dimostrare:

  • Uno scopo chiaro e un vantaggio per TensorFlow (intorno a un sottoprogetto o a un'area applicativa)
  • Due o più contributori disposti a fungere da leader del gruppo, esistenza di altri contributori e prova della domanda per il gruppo
  • Risorse inizialmente richieste (di solito, mailing list e videoconferenze regolari).

L'approvazione del gruppo sarà data da una decisione del TF Community Team, definito come manutentore del progetto tensorflow/community. Il team consulterà le altre parti interessate, se necessario.

Prima di entrare nelle parti formali del processo, è consigliabile consultare il team della community di TensorFlow, community-team@tensorflow.org. È molto probabile che saranno necessarie conversazione e iterazione prima che la richiesta SIG sia pronta.

La richiesta formale per il nuovo gruppo viene effettuata presentando uno statuto come PR a tensorflow/community e includendo la richiesta nei commenti sul PR (vedi modello di seguito). Dopo l'approvazione, le PR del gruppo verranno unificate e verranno create le risorse necessarie.

Richiesta di modello per il nuovo SIG

Questo modello sarà disponibile nel repository della community: SIG-request-template.md .

Noleggio

Ciascun gruppo sarà costituito con uno statuto e sarà disciplinato dal codice di condotta TensorFlow. Gli archivi del gruppo saranno pubblici. L'iscrizione può essere aperta a tutti senza approvazione oppure disponibile su richiesta, in attesa dell'approvazione dell'amministratore del gruppo.

Lo statuto deve nominare un amministratore. Oltre a un amministratore, il gruppo deve includere almeno una persona come leader (potrebbe essere la stessa persona), che fungerà da punto di contatto per il coordinamento, come richiesto, con il team della comunità TensorFlow.

Questa carta sarà pubblicata inizialmente nella mailing list del gruppo. Il repository della comunità nell'organizzazione TensorFlow GitHub archivierà tali documenti e policy ( ad esempio da Kubernetes ). Man mano che un gruppo evolve le proprie pratiche e convenzioni, ci aspettiamo che le documenti all'interno della parte pertinente del repository della comunità.

Collaborazione e inclusione

Sebbene non sia obbligatorio, il gruppo dovrebbe scegliere di avvalersi della collaborazione tramite teleconferenze programmate o canali di chat per condurre riunioni. Qualsiasi incontro di questo tipo dovrebbe essere pubblicizzato sulla mailing list e le note successivamente pubblicate sulla mailing list. Riunioni regolari aiutano a promuovere la responsabilità e il progresso in un SIG.

I membri del team della community TensorFlow monitoreranno e incoraggeranno in modo proattivo il gruppo alla discussione e all'azione appropriata.

Lancio

Attività richieste:

  • Notifica i gruppi di discussione generali di TensorFlow ( discute@ , sviluppatori@ ).
  • Aggiunta di SIG alle pagine della community sul sito Web TensorFlow.

Attività facoltative:

  • Creazione di un post sul blog per la community del blog TensorFlow.

Salute e cessazione dei SIG

Il team della community di TensorFlow farà tutto il possibile per garantire la salute dei SIG. Di tanto in tanto verrà richiesto al responsabile del SIG di fornire un rapporto sul lavoro del SIG, che verrà utilizzato per informare la comunità TensorFlow più ampia dell'attività del gruppo.

Se un SIG non ha più uno scopo utile o una comunità interessata, può essere archiviato e cessare di funzionare. Il team della comunità TF si riserva il diritto di archiviare tali SIG inattivi, al fine di preservare l'integrità del progetto in generale, sebbene sia un risultato meno preferibile. Un SIG può anche scegliere di sciogliersi se riconosce di aver raggiunto la fine della sua vita utile.