L'avvento del programmatore sociale

527 views

Published on

Slides di una breve conferenza che ho tenuto a scuola. Ritengo che lo stereotipo del programmatore brutto, scontrorso e antisociale sia in declino, ma perché ciò si realizzi davvero occorre affinare nuove abilità, le abilità sociali. Sia Online che Offline

Basato in parte sul lavoro seguente
http://www.slideshare.net/mastorey/msr-2012-keynote-storey-slideshare

Published in: Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
527
On SlideShare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
3
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

L'avvento del programmatore sociale

  1. 1. Il programmatore sociale Social network e Ingegneria del software prof. Marcello Missiroli Aprile 2014, ITIS Corni
  2. 2. Il programmatore, oggi In linea di massima, non è che il programmatore abbia una grande considerazione sociale Nel pensiero comune, un programmatore è solitamente un concetto fortemente stereotipato..
  3. 3. Come questo...
  4. 4. …o questo!
  5. 5. Per fortuna... Questo sta cambiando, per fortuna. Per tanti motivi..
  6. 6. Come, per esempio,... ● I progetti software raggiungono una dimensione tale per cui è IMPOSSIBILE sviluppare senza comunicare ● L'arrivo di Internet ci permette di comunicare e gestire le informazioni con grande facilità senza limiti di tempo e di spazio ● I Social media ci permettono di interagire in modo semplice e gradevole
  7. 7. Tutto questo porta  al... Programmatore sociale!
  8. 8. Cosa serve? ● Strumenti adeguati ● Metodologie moderne ● Sviluppare abilità non tecnologiche ● (e, ovviamente, essere bravi a programmare)
  9. 9. Oltre le attivià di sviluppo e  manutenzione…
  10. 10. appaiono ecosystemi software  e communità specializzate
  11. 11. "Noi costruiamo i nostri strumenti, e dopo gli strumenti forgiano noi", Leggi dei Media di Marshall McLuhan "Noi costruiamo i nostri strumenti, e dopo gli strumenti forgiano noi", Leggi dei Media di Marshall McLuhan http://www.youtube.com/watch?v=A7GvQdDQv8g
  12. 12. Quali sono le tecniche etecniche e strumentistrumenti che portano il maggiore cambiamento? Quali sono le tecniche etecniche e strumentistrumenti che portano il maggiore cambiamento?
  13. 13. Nuove tecniche dello sviluppo Social Media Pair programming Controllo Versione Inglese Metodi agili Abilità Sociali Tool Avanzati
  14. 14. Tool Integrated development environments: Text editor: Tool Avanzati
  15. 15. Pair programming Pair programming Programmare in coppia produce codice molto più corretto. Anche se non sembra, si produce più codice e quindi conviene anche economicamente
  16. 16. Controllo versione Controllo Versione Permettono di programmare in remoto, in parallelo, “resistendo” agli errori
  17. 17. Abilità sociali           Dovrete PARLARE e confrontarvi con la gente Essere gentili, gradevoli e non testardi vi permetterà di lavorare meglio Saper comunicare (verbalmente e per iscritto) sarà il vostro punto forte Abilità Sociali
  18. 18. Inglese           L'inglese è la lingua di Internet. E della globalizzazione. Specie nell'informatica e nell'ambito scientifico. Non potete ignorarlo. Punto. Inglese
  19. 19. Metodi agili Rivoluzionano il modo di costuire il software, “rovesciando” il modo tradizionale e proponendo tecniche innovative Metodi agili
  20. 20. “Architettura della participazione” Tim O’Reilly “Architettura della participazione” Tim O’Reilly Social Media
  21. 21. Qual'è il ruolo dei mediaruolo dei media nello sviluppo del software? Qual'è il ruolo dei mediaruolo dei media nello sviluppo del software?
  22. 22. I social media nello sviluppo del software Wiki, social network... Tagging Microblogging Siti di domande e risposte Social Coding Blogging Commenti al sorgente
  23. 23. Commenti al sorgente
  24. 24. Tagging – Categorizazione (problematiche comune) – Organizzazione – Modo di lavoro del team Tagging
  25. 25. Microblogging I programmatori twittano spesso fatti e considerazioni sulla programmazione. Integrati negli IDE? MicroBlogging
  26. 26. Blogging Determining requirements through blogs [Park and Maurer, CHASE 2009] How developers blog: high-level concept discussion and requirements [Pagano and Maalej, MSR 2011] Blogs play a role in documenting APIs [Treude and Parnin, Web2SE 2011] Blogging
  27. 27. Siti di domande e risposte Più del 92% delle domande di Stackoverflow ottengono una risposta, con un tempo medio di risposta di 11 minuti
  28. 28. Social Coding  Permette trasparenza Costruisce una reputazione Gestione dei profili Autopromozione Social Coding
  29. 29. Wiki etc...Wiki etc... • Wikis utili per documentare, brainstorming, organizzare il lavoro! • Crowdsourcing della codifica (TopCoder) e del test (Approccio al test A/B di Google) • Utente finale icoinvolto nel progetto • Portali delle comunità software Wiki, social network...
  30. 30. Come si fa? Non si può imparare tutto in una volta, naturalmente...”nessuno nasce imparato”. Oltre ad affinare le vostre abilità sul linguaggio, dovete affinare anche il resto. Per partire, scegliete una tecnica e uno strumento social e provate a usarlo per un mese.
  31. 31. Grazie per l'attenzione! Gran parte di queste dispense (soprattutto la parte grafica) derivano da questo lavoro di M.S. Storey: http://www.slideshare.net/mastore y/msr-2012-keynote-storey- slideshare Per tutto il resto, vale la licenza CC- BY-SA 3.0

×