Coderetreat 2013 @cowo42 (Osimo - AN)

25
Global Day of Code Retreat 2013 #gdcr13 Sabato 14 Dicembre 2013 @cowo42 Osimo

Transcript of Coderetreat 2013 @cowo42 (Osimo - AN)

Page 1: Coderetreat 2013 @cowo42 (Osimo - AN)

Global Day of Code Retreat 2013

#gdcr13Sabato 14 Dicembre 2013

@cowo42 Osimo

Page 2: Coderetreat 2013 @cowo42 (Osimo - AN)

Non siamo soli :)

Page 3: Coderetreat 2013 @cowo42 (Osimo - AN)
Page 4: Coderetreat 2013 @cowo42 (Osimo - AN)

Nessuna Pressione

Page 5: Coderetreat 2013 @cowo42 (Osimo - AN)

Si può sperimentare

Page 6: Coderetreat 2013 @cowo42 (Osimo - AN)

Come si svolge una sessione

Page 7: Coderetreat 2013 @cowo42 (Osimo - AN)

Come sarà organizzata la giornata

● 3 sessioni dalle 10 alle 13

● pranzo dalle 13 alle 14:30

● 2 sessioni fino alle 17

Page 8: Coderetreat 2013 @cowo42 (Osimo - AN)

Simple Design

● Passa tutti i suoi test

● Esprime chiaramente gli

intenti

● Non contiene duplicazione

● Non ha parti superflue

Page 9: Coderetreat 2013 @cowo42 (Osimo - AN)

Pair Programming

Page 10: Coderetreat 2013 @cowo42 (Osimo - AN)

10 Scrivi un test20 Guardalo fallire30 Scrivi il codice più semplice per farlo passare40 RefactoringGOTO 10 //ToDo refactoring

Page 11: Coderetreat 2013 @cowo42 (Osimo - AN)

Alla fine di ogni sessione si cancella tutto il codice scritto...

Page 12: Coderetreat 2013 @cowo42 (Osimo - AN)

...e si scambia la coppia*

* immagini trovate su google non adatte al contesto

Page 13: Coderetreat 2013 @cowo42 (Osimo - AN)

Il Game Of Life

Page 14: Coderetreat 2013 @cowo42 (Osimo - AN)

Il GAME OF LIFE è una griglia

bidimensionale infinita di celle

quadrate. Ciascuna cella può

essere VIVA o MORTA.

Page 15: Coderetreat 2013 @cowo42 (Osimo - AN)

Ad ogni STEP nel tempo ciascuna cella

intragisce con le8 CELLE VICINE

seguendo 3 REGOLE

Page 16: Coderetreat 2013 @cowo42 (Osimo - AN)

1. Ogni cella VIVA con MENO DI DUE VICINI VIVI MUORE di

solitudine

Page 17: Coderetreat 2013 @cowo42 (Osimo - AN)

2. Ogni cella VIVA con PIU’ DI TRE VICINI VIVI MUORE per

sovraffollamento.

Page 18: Coderetreat 2013 @cowo42 (Osimo - AN)

3. Ogni cella MORTA con ESATTAMENTE TRE VICINI VIVI

NASCE grazie al loro calore.

Page 19: Coderetreat 2013 @cowo42 (Osimo - AN)

Evoluzione della Vitaregola 1 regola 2 regola 3

Page 20: Coderetreat 2013 @cowo42 (Osimo - AN)

Evoluzione della Vitaregola 1 regola 3regola 2

Page 21: Coderetreat 2013 @cowo42 (Osimo - AN)

Evoluzione della Vitaregola 2regola 1 regola 3

Page 22: Coderetreat 2013 @cowo42 (Osimo - AN)

Grazie a

@cowo42 che ci ospita

@ricfrank da cui è partita l’organizzazione

@ftassi che ha avuto l’idea di organizzare questa giornata

@gabrielelana che mi ha passato le slide dei coderetreat passati, essenziali per il copia e incolla :)

Page 23: Coderetreat 2013 @cowo42 (Osimo - AN)

Variazioni

• Evita di utilizzare primitive• Non utilizzare il ramo else nei flussi condizionali• Tell Don’t Ask Estremo• 5 righe di codice per metodo• Ping Pong Pair Programming• Modella partendo da concetti centrali diversi

(GRIGLIA GIOCO CELLA...)

Page 24: Coderetreat 2013 @cowo42 (Osimo - AN)

Variazioni

• Non utilizzare if• Prova ad indovinare il risultato di un test• Non usare gli array• Usa solo “interaction tests”• Usa solo “state based tests”• Usa solo metodi che ritornano void• Solo immutabili

Page 25: Coderetreat 2013 @cowo42 (Osimo - AN)

Variazioni

• Non parlare con il compagno di pair• TDD come andrebbe fatto• Non usare il mouse• Usa solo refactoring automatico• Arduino con led fisici