際際滷

際際滷Share a Scribd company logo
#CDays14  Roma - 23, 24 e 25 Settembre 2014
VS04  TFS: Quale
source control
Gian Maria Ricci
alkampfer@nablasoft.com - @alkampfer
http://www.codewrecks.com/
http://www.getlatestversion.it/
http://blogs.ugidotnet.org/rgm
#CDays14  Roma - 23, 24 e 25 Settembre 2014
Grazie a
Sponsor
#CDays14  Roma - 23, 24 e 25 Settembre 2014
Tfs e git, perch辿?
 Richiesta di avere un source control distribuito
 Diffusione capillare e supporto su tutti i sistemi / IDE / strumenti
 Stabile, manutenuto ed in continua evoluzione
 Apertura verso lopen source
 Lavoro offline
 Easy Branching
 Integrato con TFS al pari (quasi) di TFVC
#CDays14  Roma - 23, 24 e 25 Settembre 2014
Non esiste Microsoft Git
#CDays14  Roma - 23, 24 e 25 Settembre 2014
Cosa scelgo?
#CDays14  Roma - 23, 24 e 25 Settembre 2014
Quando scegliere
 Un Team Project pu嘆 utilizzare solamente TFVC oppure Git
 In approcci con 束Single Team Project損 questo significa scegliere il source
control allinizio
  comunque possibile creare un nuovo Team Project e 束convertire損 il
vecchio codice
 Passare da un centralizzato ad un distribuito o viceversa comporta
comunque riorganizzare/istruire/cambiare
#CDays14  Roma - 23, 24 e 25 Settembre 2014
VCS  Paradigmi di base
Pro Contro
Check-in
Check-out
 Codebase molto grandi
 Security granulare
 Controllo attivit utenti
 Meno intuitivo
 Favorisce luso di lock
 Sempre connesso
 Editing offline
 Cross tool
 Intuitivo per chi viene
da SVN
 Meno performante per
codebase molto larghe
 No check-out lock
 Completamente offline
 Clone completo
 First Class Branching
 
 Pi湛 complesso
 Non performante per
grandi file binari
 Necessita di pi湛
disciplina
#CDays14  Roma - 23, 24 e 25 Settembre 2014
TFVC > Git / Git > TFVC
Git TFVC
#CDays14  Roma - 23, 24 e 25 Settembre 2014
Debbo reimparare tutto?
Supporto Nativo in
Visual Studio
Confort Zone
#CDays14  Roma - 23, 24 e 25 Settembre 2014
demo
Primi passi con Git e Visual Studio
#CDays14  Roma - 23, 24 e 25 Settembre 2014
Andando in profondit
Visual Studio ha un
buon supporto git,
che 竪 in continua
evoluzione,
ma git 竪 complesso
竪 va 束masticato損
bene per non farsi
male
#CDays14  Roma - 23, 24 e 25 Settembre 2014
Alcune considerazioni
Git Pro
Supporto IDE multiple
Multi sistema
Stack Overflow
Branching
Offline
Well Known Workflow
Git Contro
Strumenti eterogenei
Necessit di pi湛 training
Complicazione History
Strutturazione repository
Tfvc Pro
Semplice
Repository Lineare
Sopporta repo mal strutturati
Tfvc Contro
Scarso supporto branch
Nessun supporto offline
Flussi di lavoro semplici
#CDays14  Roma - 23, 24 e 25 Settembre 2014
Cattive analogie TFVC <-> Git
 Git 竪 simile a TFVC, solamente che si ha un repository locale ed uno (o
piu server remoti)
 Git pull 竪 lanalogo di Get Latest Version (falso)
 Git push 竪 lanalogo di Check-in (falsissimo)
 Git va approcciato come uno strumento completamente nuovo senza
nessun paradigma con VCS centralizzati
#CDays14  Roma - 23, 24 e 25 Settembre 2014
Ognuno ha un repository
Tutti i repository sono
paritari
Nello scenario pi湛 semplice
un repository 竪 considerato
il Principale
#CDays14  Roma - 23, 24 e 25 Settembre 2014
Git no quando?
Quando dovreste evitare di usare git
#CDays14  Roma - 23, 24 e 25 Settembre 2014
Siete confortevoli con il VCS attuale
#CDays14  Roma - 23, 24 e 25 Settembre 2014
La struttura cartelle non 竪 ben
organizzata
#CDays14  Roma - 23, 24 e 25 Settembre 2014
Il team ha poco training su VCS
#CDays14  Roma - 23, 24 e 25 Settembre 2014
Git si quando?
Quali sono i segnali che fanno capire che potreste avere bisogno di Git
#CDays14  Roma - 23, 24 e 25 Settembre 2014
Necessit di lavo offline locale
#CDays14  Roma - 23, 24 e 25 Settembre 2014
Avete abusato del branching
#CDays14  Roma - 23, 24 e 25 Settembre 2014
Il VCS attuale vi va stretto
#CDays14  Roma - 23, 24 e 25 Settembre 2014
Usate tecnologie eterogenee
#CDays14  Roma - 23, 24 e 25 Settembre 2014
Vale la pena provarlo?
Perch辿 potrebbe essere utile iniziare a 束familiarizzare損 con Git
#CDays14  Roma - 23, 24 e 25 Settembre 2014
Github e open source
#CDays14  Roma - 23, 24 e 25 Settembre 2014
Supporto a scenari misti
TFVC
SVN
Git-tf
Git svn
#CDays14  Roma - 23, 24 e 25 Settembre 2014
Git come 束ponte損 tra mondi
Team Foundation Server / Service
Team Project
Git TFVC
WI Build 
3rd party
Local
Repo
Remote
Remote
SVNGit Svn
Git Tf
TFVC
#CDays14  Roma - 23, 24 e 25 Settembre 2014
Come switchare
Credo che Git sia lo strumento giusto, ma come introdurlo?
#CDays14  Roma - 23, 24 e 25 Settembre 2014
Evitare switch immediati
#CDays14  Roma - 23, 24 e 25 Settembre 2014
Git-tf per acquisire familiarit
Usare Git in locale
mantenendo il
centralizzato
#CDays14  Roma - 23, 24 e 25 Settembre 2014
Training e progetti pilota
#CDays14  Roma - 23, 24 e 25 Settembre 2014
Decidere una strategia (es GitFlow)
#CDays14  Roma - 23, 24 e 25 Settembre 2014
Gitflow
 http://nvie.com/posts/a-successful-git-branching-model/
#CDays14  Roma - 23, 24 e 25 Settembre 2014
Flussi di sviluppo avanzati
 https://www.atlassian.com/git/tutorials/comparing-workflows
 Git permette molti flussi di lavoro differenti
  fortemente consigliato esaminarli attentamente prima di introdurre
git nel proprio team
 Usate (se possibile) piccoli progetti reali per comparare i flussi ed
acquisire familiarit
#CDays14  Roma - 23, 24 e 25 Settembre 2014
Git 101
Una serie di informazioni 束minimali損 per capire meglio perch辿 Git 竪
differente da TFVC
#CDays14  Roma - 23, 24 e 25 Settembre 2014
Un utile paradigma
Git crea snapshot di una cartella
#CDays14  Roma - 23, 24 e 25 Settembre 2014
Una sequenza di snapshot
Commits
Ogni commit
rappresenta un
immagine della
cartella
#CDays14  Roma - 23, 24 e 25 Settembre 2014
Contenuto di un commit
2ab56.. ae14f.. 24d36.. 3abe5..
Foo.txt
Bar.txt
42.cs
Ptr.vcproj
Foo.txt
Bar.txt
42.cs
Ptr.vcproj
Foo.txt
Bar.txt
42.cs
Ptr.vcproj
Foo.txt
Bar.txt
42.cs
Ptr.vcproj
ID = SHA1
Bar.txt
42.cs
Foo.txt
Ptr.vcproj
Foo.txt
Bar.txt
#CDays14  Roma - 23, 24 e 25 Settembre 2014
Che commit 竪 attivo ora?
802992c ab352fc b426dca 364ba23
HEAD
In ogni momento il
puntatore HEAD identifica il
commit che rappresenta il
contenuto attuale della
cartella
#CDays14  Roma - 23, 24 e 25 Settembre 2014
Cosa 竪 un commit
802992c ab352fc b426dca
HEAD
Modifiche
locali Staging Area
a536dbc
#CDays14  Roma - 23, 24 e 25 Settembre 2014
Cosa 竪 una branch (e qui iniziamo a
divertirci veramente)
802992c ab352fc b426dca
Modifiche
locali Staging Area
a536dbc
HEAD master
#CDays14  Roma - 23, 24 e 25 Settembre 2014
La branch 束master損 竪 un puntatore
802992c ab352fc b426dca a536dbc
HEAD master
Spostare la HEAD significa
束riprstinare損 uno snapshot
#CDays14  Roma - 23, 24 e 25 Settembre 2014
Detatched HEAD
802992c ab352fc b426dca a536dbc
HEAD master
Una Detached HEAD 竪
simile ad un 束get specific
version損
Da una specific version in
TFVC non potete fare un
changeset
Capitan Ovvio
#CDays14  Roma - 23, 24 e 25 Settembre 2014
Ma ... se  Metto un altro puntatore?
802992c ab352fc b426dca
Modifiche
locali Staging Area
a536dbc
masterHEAD test
#CDays14  Roma - 23, 24 e 25 Settembre 2014
Con pi湛 puntatori ho pi湛 versioni
802992c ab352fc b426dca
Modifiche
locali Staging Area
a536dbc
master HEAD test
abd34ea
testmaster
#CDays14  Roma - 23, 24 e 25 Settembre 2014
Un repository Git 竪 un Directed
Acyclic Graph
802992c ab352fc B426dca
abd34ea
a536dbc
test
HEADmaster
#CDays14  Roma - 23, 24 e 25 Settembre 2014
Conflitti
Cosa accade con alberi incompatibili
#CDays14  Roma - 23, 24 e 25 Settembre 2014
Ogni sviluppatore ha una sua master
802992c ab352fc B426dca 12ab456
802992c ab352fc B426dca ef3456
Gli sviluppatori hanno
aggiornato la master al
b426dca Ognuno ha fatto una
modifica
master
master
#CDays14  Roma - 23, 24 e 25 Settembre 2014
Come si condivide il codice?
802992c ab352fc B426dca 12ab456
802992c ab352fc B426dca ef3456
802992c ab352fc B426dca ef3456
Inviare le
modifiche allorigin
significa spostare i
commit binari
ef3456
master
master
master
#CDays14  Roma - 23, 24 e 25 Settembre 2014
Come si condivide il codice?
802992c ab352fc B426dca 12ab456
802992c ab352fc B426dca ef3456
802992c ab352fc B426dca ef3456
Non potete inviare
modifiche se i grafi
sono incompatibili
12ab456
master
#CDays14  Roma - 23, 24 e 25 Settembre 2014
Gestire il conflitto - fetch
802992c ab352fc B426dca
12ab456
ef3456
802992c ab352fc B426dca ef3456
Il primo passo 竪
fare un Fetch dal
server
master
origin/master
master
#CDays14  Roma - 23, 24 e 25 Settembre 2014
Gestire il conflitto - merge
802992c ab352fc B426dca
12ab456
ef3456
802992c ab352fc B426dca ef3456
Localmente si
effettua una merge
tra le branch
master
origin/master
fe34bd
master
#CDays14  Roma - 23, 24 e 25 Settembre 2014
802992c ab352fc B426dca
12ab456
Ef3456
Gestire il conflitto  invio al server
802992c ab352fc B426dca
12ab456
Ef3456
Ora si pu嘆 tentare
un nuovo push al
server
master
fe34bdEf3456
origin/master
fe34bd
12ab456
master
fe34bd
#CDays14  Roma - 23, 24 e 25 Settembre 2014
Rebase
Perch辿 non si vive di solo pull
#CDays14  Roma - 23, 24 e 25 Settembre 2014
Gestire il conflitto - fetch
802992c ab352fc B426dca
12ab456
ef3456
802992c ab352fc B426dca ef3456
Il primo passo 竪
fare un Fetch dal
server
master
origin/master
master
#CDays14  Roma - 23, 24 e 25 Settembre 2014
Gestire il conflitto  and rebase
802992c ab352fc B426dca
12ab456
ef3456
802992c ab352fc B426dca ef3456
master
origin/master
master
12ab456
eb54af2
#CDays14  Roma - 23, 24 e 25 Settembre 2014
Q&A
Tutto il materiale di questa sessione su
http://www.communitydays.it/
Lascia il feedback su questa sessione dal sito,
potrai essere estratto per i nostri premi!
Seguici su
Twitter @CommunityDaysIT
Facebook http://facebook.com/cdaysit
#CDays14

More Related Content

TFS - Quale source control

  • 1. #CDays14 Roma - 23, 24 e 25 Settembre 2014 VS04 TFS: Quale source control Gian Maria Ricci alkampfer@nablasoft.com - @alkampfer http://www.codewrecks.com/ http://www.getlatestversion.it/ http://blogs.ugidotnet.org/rgm
  • 2. #CDays14 Roma - 23, 24 e 25 Settembre 2014 Grazie a Sponsor
  • 3. #CDays14 Roma - 23, 24 e 25 Settembre 2014 Tfs e git, perch辿? Richiesta di avere un source control distribuito Diffusione capillare e supporto su tutti i sistemi / IDE / strumenti Stabile, manutenuto ed in continua evoluzione Apertura verso lopen source Lavoro offline Easy Branching Integrato con TFS al pari (quasi) di TFVC
  • 4. #CDays14 Roma - 23, 24 e 25 Settembre 2014 Non esiste Microsoft Git
  • 5. #CDays14 Roma - 23, 24 e 25 Settembre 2014 Cosa scelgo?
  • 6. #CDays14 Roma - 23, 24 e 25 Settembre 2014 Quando scegliere Un Team Project pu嘆 utilizzare solamente TFVC oppure Git In approcci con 束Single Team Project損 questo significa scegliere il source control allinizio comunque possibile creare un nuovo Team Project e 束convertire損 il vecchio codice Passare da un centralizzato ad un distribuito o viceversa comporta comunque riorganizzare/istruire/cambiare
  • 7. #CDays14 Roma - 23, 24 e 25 Settembre 2014 VCS Paradigmi di base Pro Contro Check-in Check-out Codebase molto grandi Security granulare Controllo attivit utenti Meno intuitivo Favorisce luso di lock Sempre connesso Editing offline Cross tool Intuitivo per chi viene da SVN Meno performante per codebase molto larghe No check-out lock Completamente offline Clone completo First Class Branching Pi湛 complesso Non performante per grandi file binari Necessita di pi湛 disciplina
  • 8. #CDays14 Roma - 23, 24 e 25 Settembre 2014 TFVC > Git / Git > TFVC Git TFVC
  • 9. #CDays14 Roma - 23, 24 e 25 Settembre 2014 Debbo reimparare tutto? Supporto Nativo in Visual Studio Confort Zone
  • 10. #CDays14 Roma - 23, 24 e 25 Settembre 2014 demo Primi passi con Git e Visual Studio
  • 11. #CDays14 Roma - 23, 24 e 25 Settembre 2014 Andando in profondit Visual Studio ha un buon supporto git, che 竪 in continua evoluzione, ma git 竪 complesso 竪 va 束masticato損 bene per non farsi male
  • 12. #CDays14 Roma - 23, 24 e 25 Settembre 2014 Alcune considerazioni Git Pro Supporto IDE multiple Multi sistema Stack Overflow Branching Offline Well Known Workflow Git Contro Strumenti eterogenei Necessit di pi湛 training Complicazione History Strutturazione repository Tfvc Pro Semplice Repository Lineare Sopporta repo mal strutturati Tfvc Contro Scarso supporto branch Nessun supporto offline Flussi di lavoro semplici
  • 13. #CDays14 Roma - 23, 24 e 25 Settembre 2014 Cattive analogie TFVC <-> Git Git 竪 simile a TFVC, solamente che si ha un repository locale ed uno (o piu server remoti) Git pull 竪 lanalogo di Get Latest Version (falso) Git push 竪 lanalogo di Check-in (falsissimo) Git va approcciato come uno strumento completamente nuovo senza nessun paradigma con VCS centralizzati
  • 14. #CDays14 Roma - 23, 24 e 25 Settembre 2014 Ognuno ha un repository Tutti i repository sono paritari Nello scenario pi湛 semplice un repository 竪 considerato il Principale
  • 15. #CDays14 Roma - 23, 24 e 25 Settembre 2014 Git no quando? Quando dovreste evitare di usare git
  • 16. #CDays14 Roma - 23, 24 e 25 Settembre 2014 Siete confortevoli con il VCS attuale
  • 17. #CDays14 Roma - 23, 24 e 25 Settembre 2014 La struttura cartelle non 竪 ben organizzata
  • 18. #CDays14 Roma - 23, 24 e 25 Settembre 2014 Il team ha poco training su VCS
  • 19. #CDays14 Roma - 23, 24 e 25 Settembre 2014 Git si quando? Quali sono i segnali che fanno capire che potreste avere bisogno di Git
  • 20. #CDays14 Roma - 23, 24 e 25 Settembre 2014 Necessit di lavo offline locale
  • 21. #CDays14 Roma - 23, 24 e 25 Settembre 2014 Avete abusato del branching
  • 22. #CDays14 Roma - 23, 24 e 25 Settembre 2014 Il VCS attuale vi va stretto
  • 23. #CDays14 Roma - 23, 24 e 25 Settembre 2014 Usate tecnologie eterogenee
  • 24. #CDays14 Roma - 23, 24 e 25 Settembre 2014 Vale la pena provarlo? Perch辿 potrebbe essere utile iniziare a 束familiarizzare損 con Git
  • 25. #CDays14 Roma - 23, 24 e 25 Settembre 2014 Github e open source
  • 26. #CDays14 Roma - 23, 24 e 25 Settembre 2014 Supporto a scenari misti TFVC SVN Git-tf Git svn
  • 27. #CDays14 Roma - 23, 24 e 25 Settembre 2014 Git come 束ponte損 tra mondi Team Foundation Server / Service Team Project Git TFVC WI Build 3rd party Local Repo Remote Remote SVNGit Svn Git Tf TFVC
  • 28. #CDays14 Roma - 23, 24 e 25 Settembre 2014 Come switchare Credo che Git sia lo strumento giusto, ma come introdurlo?
  • 29. #CDays14 Roma - 23, 24 e 25 Settembre 2014 Evitare switch immediati
  • 30. #CDays14 Roma - 23, 24 e 25 Settembre 2014 Git-tf per acquisire familiarit Usare Git in locale mantenendo il centralizzato
  • 31. #CDays14 Roma - 23, 24 e 25 Settembre 2014 Training e progetti pilota
  • 32. #CDays14 Roma - 23, 24 e 25 Settembre 2014 Decidere una strategia (es GitFlow)
  • 33. #CDays14 Roma - 23, 24 e 25 Settembre 2014 Gitflow http://nvie.com/posts/a-successful-git-branching-model/
  • 34. #CDays14 Roma - 23, 24 e 25 Settembre 2014 Flussi di sviluppo avanzati https://www.atlassian.com/git/tutorials/comparing-workflows Git permette molti flussi di lavoro differenti fortemente consigliato esaminarli attentamente prima di introdurre git nel proprio team Usate (se possibile) piccoli progetti reali per comparare i flussi ed acquisire familiarit
  • 35. #CDays14 Roma - 23, 24 e 25 Settembre 2014 Git 101 Una serie di informazioni 束minimali損 per capire meglio perch辿 Git 竪 differente da TFVC
  • 36. #CDays14 Roma - 23, 24 e 25 Settembre 2014 Un utile paradigma Git crea snapshot di una cartella
  • 37. #CDays14 Roma - 23, 24 e 25 Settembre 2014 Una sequenza di snapshot Commits Ogni commit rappresenta un immagine della cartella
  • 38. #CDays14 Roma - 23, 24 e 25 Settembre 2014 Contenuto di un commit 2ab56.. ae14f.. 24d36.. 3abe5.. Foo.txt Bar.txt 42.cs Ptr.vcproj Foo.txt Bar.txt 42.cs Ptr.vcproj Foo.txt Bar.txt 42.cs Ptr.vcproj Foo.txt Bar.txt 42.cs Ptr.vcproj ID = SHA1 Bar.txt 42.cs Foo.txt Ptr.vcproj Foo.txt Bar.txt
  • 39. #CDays14 Roma - 23, 24 e 25 Settembre 2014 Che commit 竪 attivo ora? 802992c ab352fc b426dca 364ba23 HEAD In ogni momento il puntatore HEAD identifica il commit che rappresenta il contenuto attuale della cartella
  • 40. #CDays14 Roma - 23, 24 e 25 Settembre 2014 Cosa 竪 un commit 802992c ab352fc b426dca HEAD Modifiche locali Staging Area a536dbc
  • 41. #CDays14 Roma - 23, 24 e 25 Settembre 2014 Cosa 竪 una branch (e qui iniziamo a divertirci veramente) 802992c ab352fc b426dca Modifiche locali Staging Area a536dbc HEAD master
  • 42. #CDays14 Roma - 23, 24 e 25 Settembre 2014 La branch 束master損 竪 un puntatore 802992c ab352fc b426dca a536dbc HEAD master Spostare la HEAD significa 束riprstinare損 uno snapshot
  • 43. #CDays14 Roma - 23, 24 e 25 Settembre 2014 Detatched HEAD 802992c ab352fc b426dca a536dbc HEAD master Una Detached HEAD 竪 simile ad un 束get specific version損 Da una specific version in TFVC non potete fare un changeset Capitan Ovvio
  • 44. #CDays14 Roma - 23, 24 e 25 Settembre 2014 Ma ... se Metto un altro puntatore? 802992c ab352fc b426dca Modifiche locali Staging Area a536dbc masterHEAD test
  • 45. #CDays14 Roma - 23, 24 e 25 Settembre 2014 Con pi湛 puntatori ho pi湛 versioni 802992c ab352fc b426dca Modifiche locali Staging Area a536dbc master HEAD test abd34ea testmaster
  • 46. #CDays14 Roma - 23, 24 e 25 Settembre 2014 Un repository Git 竪 un Directed Acyclic Graph 802992c ab352fc B426dca abd34ea a536dbc test HEADmaster
  • 47. #CDays14 Roma - 23, 24 e 25 Settembre 2014 Conflitti Cosa accade con alberi incompatibili
  • 48. #CDays14 Roma - 23, 24 e 25 Settembre 2014 Ogni sviluppatore ha una sua master 802992c ab352fc B426dca 12ab456 802992c ab352fc B426dca ef3456 Gli sviluppatori hanno aggiornato la master al b426dca Ognuno ha fatto una modifica master master
  • 49. #CDays14 Roma - 23, 24 e 25 Settembre 2014 Come si condivide il codice? 802992c ab352fc B426dca 12ab456 802992c ab352fc B426dca ef3456 802992c ab352fc B426dca ef3456 Inviare le modifiche allorigin significa spostare i commit binari ef3456 master master master
  • 50. #CDays14 Roma - 23, 24 e 25 Settembre 2014 Come si condivide il codice? 802992c ab352fc B426dca 12ab456 802992c ab352fc B426dca ef3456 802992c ab352fc B426dca ef3456 Non potete inviare modifiche se i grafi sono incompatibili 12ab456 master
  • 51. #CDays14 Roma - 23, 24 e 25 Settembre 2014 Gestire il conflitto - fetch 802992c ab352fc B426dca 12ab456 ef3456 802992c ab352fc B426dca ef3456 Il primo passo 竪 fare un Fetch dal server master origin/master master
  • 52. #CDays14 Roma - 23, 24 e 25 Settembre 2014 Gestire il conflitto - merge 802992c ab352fc B426dca 12ab456 ef3456 802992c ab352fc B426dca ef3456 Localmente si effettua una merge tra le branch master origin/master fe34bd master
  • 53. #CDays14 Roma - 23, 24 e 25 Settembre 2014 802992c ab352fc B426dca 12ab456 Ef3456 Gestire il conflitto invio al server 802992c ab352fc B426dca 12ab456 Ef3456 Ora si pu嘆 tentare un nuovo push al server master fe34bdEf3456 origin/master fe34bd 12ab456 master fe34bd
  • 54. #CDays14 Roma - 23, 24 e 25 Settembre 2014 Rebase Perch辿 non si vive di solo pull
  • 55. #CDays14 Roma - 23, 24 e 25 Settembre 2014 Gestire il conflitto - fetch 802992c ab352fc B426dca 12ab456 ef3456 802992c ab352fc B426dca ef3456 Il primo passo 竪 fare un Fetch dal server master origin/master master
  • 56. #CDays14 Roma - 23, 24 e 25 Settembre 2014 Gestire il conflitto and rebase 802992c ab352fc B426dca 12ab456 ef3456 802992c ab352fc B426dca ef3456 master origin/master master 12ab456 eb54af2
  • 57. #CDays14 Roma - 23, 24 e 25 Settembre 2014 Q&A Tutto il materiale di questa sessione su http://www.communitydays.it/ Lascia il feedback su questa sessione dal sito, potrai essere estratto per i nostri premi! Seguici su Twitter @CommunityDaysIT Facebook http://facebook.com/cdaysit #CDays14

Editor's Notes

  1. 際際滷 da mostrare prima di iniziare la sessione non rimuovere!
  2. Ultima slide, obbligatoria