Software built on pride and love of subject is superior to software built for profit. – Ravi Simhambhatla
Hack.Developers è un code sprint molto particolare e vista la sua natura collaborativa ed open-source,
nonché l’ampiezza delle challenge proposte, si prevede che i lavori dei team partecipanti non si
concluderanno nell’arco delle 48 ore di sfida.
Stante che la partecipazione ai due giorni dell’evento in una delle sedi è obbligatoria, i team
potranno continuare il loro lavoro nei giorni seguenti per poi completare l’upload dei progetti.
Scopo dell’hackathon è dare modo a una comunità di sviluppatori di lavorare sul codice Open Source della Pubblica Amministrazione ed integrarlo con altri servizi, per renderlo utile a quante più persone possibili. Non vuole essere una gara fine a sé stessa, ma punto di partenza per lo sviluppo aperto e collaborativo del software che alimenta il Sistema Operativo del paese. Per riconoscere il lavoro di sviluppatori particolarmente meritevoli, e rendere l’evento più interessante, abbiamo pensato ad alcuni premi da distribuire ai contributi migliori.
Sono previste due fasi di premiazione per l’evento, come specificato più in basso. Il montepremi sarà del valore di circa 10.000€, e verrà conferito in buoni d’acquisto per corsi Coursera.
VALUTAZIONE DELLE PULL REQUEST
Hack.Developers.Italia 2017 è una competizione di squadra. Ogni squadra si forma in modo indipendente,
e non ha né un numero minimo né un numero massimo di partecipanti (ma i premi in palio saranno
distribuiti a massimo per 3 partecipanti per squadra).
Il lavoro valutato sarà unicamente quello ricevuto tramite “Pull Request” a un repository ufficiale di
Developers Italia sulla piattaforma Github: https://github.com/italia.
Per essere considerata valida ai fini della premiazione, gli sviluppatori
dovranno altresì compilare un modulo online
prima della scadenza, in cui vengono elencate le Pull Request che si intendono sottoporre a
valutazione da parte della giuria.
Le challenge previste sono quelle elencate nella pagina “Challenge” del sito. Nel caso si voglia proporre una nuova challenge, comunque relativa allo sviluppo e integrazione dei progetti previsti, è possibile farlo, ma questa deve essere approvata dal Team Digitale. Per proporla è sufficiente scrivere nel canale #new-challenges su Slack ed attendere la risposta di un componente del Team Digitale.
Oltre alla premiazione dal Team Digitale trasversale a tutte le sedi, enunciata qui in basso, alcune sedi individualmente mettono in palio alcuni premi.
Per ulteriori informazioni è possibile consultare la pagina FAQ del sito.
METODI DI PREMIAZIONE
Premio “Fast Rabbit”:
Questo premio è pensato per valorizzare le contribuzioni che si completano durante i 2 giorni di Hackathon.
- Entro le ore 16:00 di Domenica 8/10, ciascun team invia la propria “submission”, che contiene il nome del team, i membri del team, e l’elenco delle PR effettuate nei 2 giorni dal team. Questo è il link per il modulo per la submission: https://developersitalia.bobuild.com/submit
- Gli organizzatori di ciascuna sede
selezionano un certo numero di team tra coloro che hanno effettuato la submission per la sfilata,
secondo una valutazione del lavoro nei 2 giorni. Questi i numeri dei team che verranno selezionati,
in base al numero di partecipanti:
- 1-15 partecipanti nella sede: 2-3 team in sfilata
- 16-30 partecipanti nella sede: 3-5 team in sfilata
- 31-50 partecipanti nella sede: 6-8 team in sfilata
- 51-70 partecipanti nella sede: 8-10 team in sfilata
- 71-90 partecipanti nella sede: 10-12 team in sfilata
- I team selezionati effettuano la sfilata in cui raccontano in 120 secondi i progetti svolti.
- Dopo la sfilata, si effettua, per ogni sede, una votazione a cui possono prendere parte tutti i presenti nella sede: partecipanti, host, mentor ecc. Per la votazione suggeriamo questo strumento di poll online: https://www.polleverywhere.com/
- In base alla votazione, i primi N progetti
vengono segnalati all’organizzazione centrale:
- 1-20 partecipanti nella sede: 1 team segnalati
- 21-40 partecipanti nella sede: 2 team segnalati
- 41-60 partecipanti nella sede: 3 team segnalati
- 61-90 partecipanti nella sede: 4 team segnalati
- Nella settimana seguente Il Team Digitale e i maintainer dei progetti effettuano la valutazione delle PR segnalate secondo il criterio di valutazione sottostante.
- Lunedì 16 Ottobre, Il Team Digitale annuncia i 2 team vincitori dell’hackathon a livello nazionale. Vengono premiate fino a 3 persone per team con 5 corsi a testa. Il team vincitore può ovviamente essere composto da più di 3 persone, nel qual caso i beneficiari del premio saranno scelti internamente dai componenti del team.
Premio “Wise Turtle”:
Questo premio è pensato per valorizzare i team che scelgono di continuare l’attività di sviluppo nelle settimane successive all’hackathon, per intraprendere progetti più complessi.
- Il team che porta avanti una o più PR deve inviarle entro le 23:59 del 30 Ottobre 2017.
- Richiediamo che la PR venga aperta su github e segnalata tramite il modulo web: https://developersitalia.bobuild.com/submit
- Il canale Slack rimarrà attivo per tutto il mese, con il supporto dei maintainer dei progetti.
- Il Team Digitale valuterà, entro il 6 Novembre 2017, le submission inviate.
- Verranno premiati 5 team vincitori, assegnato un premio di 5 corsi a testa per ogni membro del team (massimo 3 persone per team). Il team vincitore può ovviamente essere composto da più di 3 persone, nel qual caso i beneficiari del premio saranno scelti internamente dai componenti del team in fase di submission.
SISTEMA DI VALUTAZIONE DELLE PULL REQUEST
Il sistema di valutazione è stato creato al fine di incentivare la qualità del lavoro invece che la quantità.
Per ognuna dei 7 progetti previsti (SPID, CIE, DAF, Security, Design, 18-app e ANPR) vengono individuati 3 giudici (tra i maintainer dei progetti e gli amministratori di Developers Italia).
Per ciascuna PR inviata dai team, I 3 giudici assegnano un punteggio calcolato come somma di punti per ciascun indicatore di qualità, secondo quanto previsto in questa tabella:
Indicatore di qualità | Range punteggio |
Funzionalità, completezza, complessità | 0 – 15 |
Documentazione | 0 – 5 |
Stile di codice / architettura | 0 – 7 |
Presenza di CI/Test automatizzati | 0 – 7 |
Il punteggio finale di ogni PR sarà la media dei punteggi assegnati dai 3 giudici.
- Per il Fast Rabbit il punteggio finale del team sarà la media dei punteggi delle PR inviate.
- Per il Wise Turtle, dopo la valutazione di tutte le PR candidate, di ogni Team verrà considerata la PR con il punteggio più alto, pertanto vinceranno i 5 Team che avranno portato la PR migliore.