SlideShare une entreprise Scribd logo
1  sur  48
Télécharger pour lire hors ligne
Sviluppo di Software

   Esperienze, Consigli ed Idee
          Alex Martelli

http://www.aleax.it/itbes_sseci.pdf



©2009 Google -- aleax@google.com
C'è la Pallottola d'Argento?
...un singolo modo di far fuori tutti i mostri?




                     2
NON Parlo Di...
            gestione strategica/esecutiva
(per nulla)
   business plan, finanza, visione strategica...
(poco o nulla) project management
   pianificazione, tempistiche, budget, ...
(appena appena) tecnologie/metodi/strumenti
   linguaggi, sistemi operativi, framework...
do per scontato un certo livello di quot;Agilitáquot;:
   nè un rigido Waterfall,
   nè un Caos totale!-)


                     3
Agile vs Waterfall vs Chaos
Waterfall: mira, mira, mira, mira, FUOCO!
Chaos: fuoco!, fuoco!, fuoco!, OOPS, ...
Agile: mira, fuoco!, aggiusta; mira, fuoco!,
aggiusta; ...
  i progetti SW di successo devono avere
  una qualche misura di questa agilità;
  le quot;metodologie agiliquot; cercano di cogliere
  sistematicamente gli aspetti che
  funzionano, e applicarli con disciplina,
  adottando tecniche di codifica, test &c
  appropriate ad esigenze reali e concrete

                    4
Agilita` Strategica
        ...traditional approaches to strategy
        often collapse in the face of
        rapidly and unpredictably changing
        industries ... because they over-
        emphasize the degree to which it
        is possible to predict ...

        ... change is the striking feature of
        contemporary business ... the key
                                 managing
        strategic challenge is
        that change.


         5
E Allora di Che Parlo?
comunico le mie esperienze (a Google e
prima, da sviluppatore, tech lead, manager:
non aneddoti ma quot;il succoquot;)
   su UN buon modo di organizzare, fare e
   gestire lo sviluppo software
   ne esistono anche altri, eh!-)
attacco alcune tesi molto popolari
   e raccomando libri che le difendono!-)
quot;tips & tricksquot; (buoni x molti, molti casi...)
il tutto arrangiato quot;dialetticamentequot;...;-)

                     6
Chi É un Manager?




        7
Il quot;Livelloquot; A Cui Parlo

           Shu
      (quot;Imparaquot;)


           Ha
     (quot;Distaccaquot;)




            Ri
    (quot;Trascendiquot;)
                    8
Un modo di imparare...
...è con buoni libri -- ce ne sono tanti...!




                       9
Ars longa, vita brevis...
piú ottimi libri, che tempo per leggerli!-)




                      10
Ovviamente il + importante...




        ... é quot;Il Principequot;!-)
                  11
Un'Opinione Diffusa
   “Once you have four or more
  people in your group, you can’t
 perform technical work and still
   be a great manager.” (Wk 6)


 “Managers are not usually part
     of the teams that they
 manage ... leadership just doesn’t
  have much place here.” (Ch 23)

               12
E un Dissenso da Essa
               “Tech leads split their time
               between development tasks
               and management tasks, not
               working exclusively in either
              realm.” (T.15: Let a tech lead)

A Google, distinguiamo quot;tech leadquot; (ingegnere
responsabile di UN progetto) da quot;uber tech
leadquot; e quot;tech lead/managerquot; (quot;highly
technical managersquot; == HTM), ma tutti questi
gruppi soddisfano questa definizione.
                        13
Un modo di essere un HTM
supponiamo che un manager M sia
tecnicamente almeno un pari degli
sviluppatori (progetto, codifica, debugging...)
M può nutrire reciproca fiducia, interazione
e rispetto con gli sviluppatori usando se
stesso come quot;risorsa tecnica 'Jolly'quot;
  non per i compiti + quot;divertentiquot;, ma
  per quelli urgenti che richiedono un altro
  paio di mani emisferi cerebrali subito,
  che siano divertenti o (meglio!-) pallosi
a 'sto punto di solito arrivano le obiezioni...
                     14
Non Può Andare, Perché...
Se segui criticamente, potresti avere una o
piu` di queste obiezioni:
1. e la Legge di Brooks?
2. ma come trovi il tempo!?
3. si trascura il quot;veroquot; lavoro da manager!
4. ma un manager non deve sempre delegare?
5. si spreca talento tecnico!
6. troppe interruzioni, non si può mai
   raggiungere la quot;zonaquot; (o quot;flowquot;)!
7. ...aggiungi le tue obiezioni personali...:-)

                      15
1. La Legge di Brooks
                  quot;Aggiungere programmmatori a
                  un progetto software in ritardo
                      lo ritarda anche di piúquot;
                   Si, ma: tutti scordano sempre di
                   citare anche l'inizio della frase:
                   quot;Sovrasemplificando in modo
                   oltraggioso, asseriamoquot;...!-)
                   poi, basta che non sia in ritardo...!-)
Si basa sul carico ulteriore sugli sviluppatori esistenti per
addestrare i nuovi + costo delle comunicazioni in piú.
Ma: l'HTM e` sempre sostanzialmente al corrente, e
comunica sempre, quindi: no overhead ☛ no Brooks’ Law
                              16
2. Come si trova il tempo?
 NON lavorando sempre piú ore la settimana
    mira a 40      
    accetta 50      
    60 é escluso   
(Nota: dico vero tempo di lavoro, al netto di
blogging, ciacole, spuntini, surfing, pranzi...!-)
  non col telecommuting (faccia-a-faccia é la
  forma + efficace di comunicazione, e la
  comunicazione é fra gli aspetti piú cruciali
  del lavoro di qualsiasi manager)
  il quot;time managementquot; funziona, se ben fatto

                        17
Working Long Hours
Productivity ($/hour)




                        Average Hours Worked per Week
                                      18
Time Management per ...
                    non é solo per sysadmin:
                      almeno l'80/90% é utile a
                      sviluppatori e HTM
                      specie se hanno anche
                      compiti operativi
                    Limoncelli presenta il nucleo:
                      http://video.google.com/videoplay?
                      docid=7278397109952382318
                    idee chiave: focus &
                    interruzioni, lista TODO unica e
                    come gestirla, crearsi buone
                    abitudini, come prioritizzare
Aggiungo qualche consiglio specifico per HTM...
                           19
Time Mgmt 101 per HTM
programma molti brevi meeting periodici
   se un meeting finisce presto, no problem
   si cancella in caso di emergenze
   gestire bene il meeting lo mantiene breve
   la puntualità risparmia tempo per tutti
      mai 2 meeting consecutivi!
   pensa sempre a chi dovrebbe esserci
      facile ma errato: quot;nel dubbio, invitaloquot;!-)
sii sempre pronto a cogliere le opportunità
   laptop, libri, Blackberry/PDA, QCFPT

                      20
Time Mgmt 102 per HTM
considera ogni compito specificamente
   deve davvero essere fatto?
   sono la persona giusta per farlo?
   quando sarebbe ottimale farlo?
non lasciare emergere le emergenze!
   un rammendo in tempo salva il calzino
riserva ~50% del tuo tempo quot;disponibilequot;
ogni settimana per cose non ancora urgenti
   un generale saggio mantiene una riserva
   compiti rimandabili in casi di emergenze
   non aspettare che diventino urgenti!-)
                   21
Estremamente Popolare:
                   decisamente non-specifico
                   (orientato ai manager, ma non
                   hi-tech)
                   ha molti veri e propri
                   entusiasti, un quot;movimentoquot;
                   http://www.davidco.com/
                   idee chiave: mente come
                   acqua, un singolo quot;in-basketquot;,
                   flusso strutturato, passi
                   d'azione, quot;regola dei 2 minutiquot;
non funziona appieno per me, ma per tanti altri sí!

                        22
3. Si trascura il vero lavoro
il vero lavoro del manager consiste in
questo: coltiva la fiducia, interessati alle
persone, aiuta le squadre a formarsi, segui
accuratamente tutti i tuoi progetti, aiuta le
persone a crescere, concentrati sugli scopi
da raggiungere e le loro priorità
scrivere unit-test, discutere un progetto, o
una terribile sessione di debug, aiutano a
svolgere ciascuno di questi compiti!
   e poi cosí anche noi ci divertiamo con un
   poco di hacking al posto giusto, no?-)

                    23
Gestire Professionisti
sviluppatori = alta professionalitá
   se i tuoi non l'hanno, é L'UNICO problema
   rilevante x la tua squadra (o squadre)!!!
   se lo sono, INVESTICI (SONO la risorsa +
   importante, senza eccezioni)
il tuo compito: puntali nella direzione giusta,
coltiva le squadre, aiutali a crescere, tieni
d'occhio progressi, blocchi e rischi, coordina
NON il tuo compito: il MICROmanagement!-)
...e la MOTIVAZIONE...?

                     24
Cosa Ci Motiva
                                     ...ma, non vengono
  Le idee di
                                   necessariamente dal
 Maslow sui
                                     basso verso l'alto!
bisogni umani
                    Transcendenza
sono valide...:
                  Autorealizzazione
                   Bisogni Estetici
                   Bisogni Cognitivi
                  Bisogno di Stima
              Bisogno di Appartenenza
                Bisogno di Sicurezza
                  Bisogni Fisiologici

                          25
Motivazioni sul Lavoro
         so cosa ci si aspetta da me
         strumenti, materiali, ecc
         spesso/di solito faccio cio`
         che so fare meglio
         ho stima, riconoscimenti
         il manager si cura di me
          quot; incoraggia a crescere
         le mie opinioni contano
         apprezzo la missione
         la qualita` e` importante

           26
Non sono denti d'ingranaggio
 impara tutto quel che puoi sulle specifiche,
 individuali forze e debolezze delle persone
   specie i TLs & sotto-mgr, ma non solo loro
 fa leva sulle loro forze
 fa scudo alle loro debolezze, ma anche:
   aiutali a crescere, rimuovere debolezze
      coaching, corsi, libri, pair progr., ...
      é una maratona, non i 100 metri piani!
 fare richieste irragionevoli puo quot;bruciarequot; le
 persone (attento al burnout!!!), ma...
   fare solo richieste ragionevoli non offre
   nessuna sfida (stretch goals)
                     27
É un gioco di squadra...!
                 Stellman, Greene, O'Reilly,
                 Berkun, Booch, Doctorow,
                  McConnell, Boehm, Fogel,
                  Martelli, Ambler, Oram...




            28
4. ma un mgr deve delegare
certo, ma, delegare cosa?
  delegare non toglie responsibilità
  resta sempre aggiornato su tutti i
  progetti che guidi o coordini!
  devi fidarti che gli sviluppatori facciano le
  cose giuste -- ma, devi anche far la tua
  parte, per permettergli di farle!
una volta che gli sviluppatori vedono che i
tuoi contributi tecnici sono eccellenti,
  e si fidano che gli darai il dovuto credito,
  ti vorranno coinvolto il + possibile!
                    29
La Fiducia...




      30
Fiducia: inizia a casa tua...!
per meritarti la fiducia altrui devi anzitutto
meritarti la tua propria...!-)
  This above all: to thine own self be true,
  And it must follow, as the night the day,
  Thou canst not then be false to any man
    = non raccontarti storielle consolatorie...!
    Non ti illudere, non dire che fu un sogno
     che le orecchie ti ingannarono; rifiuta
               queste vane speranze!
    (C. Kavafis, quot;Il Dio Abbandona Antonioquot;)

                     31
Fiducia: la base dell'economia




  The satisfaction we derive from being connected
  to others in the workplace grows out of a
  fundamental human desire for recognition.
                           32
La Fiducia...
é reciproca, e si costruisce col tempo
devi guadagnarti la fiducia degli sviluppatori
  capacità tecnica, esercitata regolarmente
  interesse vero in loro come individui
  dai sempre riconoscimenti e credito
loro devono guadagnarsi la fiducia tua
  capacità tecnica, integrità, focus
  ma: inizia sempre quot;fidandoti di defaultquot;!
    pre-req: assunzioni MOLTO selettive!-)


                    33
La fiducia: circolo virtuoso




             34
Ancora sulla Fiducia




         35
Fidati, ma verifica
→ delega, ma tieni d'occhio
quot;delegarequot; NON significa quot;abdicarequot;
  → resti pienamente responsabile se quel
  che hai delegato salta per aria
  → responsabilitá quot;unita e separataquot;
strumenti per quot;tenere d'occhioquot; al meglio:
  meeting quotidiani
  burndown charts & altri quot;info radiatorsquot;
  email automatica al commit di sorgenti
  brevi, regolari meeting 1-on-1

                   36
Chi decide?
in ultima analisi, TU -- ma puoi decidere di
accettare la decisione di qualcun altro!
  possono essere piú quot;sul pallonequot; di te
  o x una decisione a basso impatto che
  puó essere cambiate (se occorre) a basso
  costo -- chance di imparare, di crescere
  non occorre che quot;ti dimostriquot;: sei valutato,
  alla fin fine, sul successo del progetto, non
  sul tuo personale contributo al successo
  quindi, quot;fatti da partequot; piú spesso!☺


                    37
5. Spreco di talento tecnico?
non é uno spreco, é un leveraging!
in certe aziende il management é per chi
non ha piú nulla da contribuire sul piano
tecnico... ma non in quelle di successo!-)
quot;ma questo vale solo in fase di progettoquot;
  ma no, per nulla!
  quot;il diavolo sta nei dettagliquot;
  e dove c'é un diavolo da combattere, é lí
  che servono i migliori esorcisti!-)


                    38
6. Interruzioni e Flusso
v. Limoncelli sul quot;gestire le interruzioniquot;
ne restano comunque tante da quot;servirequot;...:
   tienti fuori dai quot;percorsi criticiquot; (o
   garantisci i routing alternativi)
   impara a capire cosa può aspettare 1 ora
   impara a quot;salvare qualcosa sullo stackquot;,
   dare immediata attenzione a qualcosa
   d'altro, pop dello stack e continua liscio
alla fine, é possibile che uno non sia proprio
fatto per quot;multitaskingquot; -- ma qualunque
manager deve farne sempre parecchio!-(
                    39
Consigli vari e assortiti




 you have to make a schedule... no programmer
 wants to... most are only doing it because their
 boss made them do it, halfheartedly, and nobody
 actually believes the schedule...

                        40
Pianificazione e Schedule
ascolta Joel: la tecnologia appropriata é una
spreadsheet (o whiteboard + post-it, o
cartoncini...), non diagrammi PERT/GANTT
  scegli compiti a grana molto fine (per
  combattere l'ottimismo degli sviluppatori, e il
  tuo personale!-), idealmente 2-3 giorni l'uno
  considera nella schedule le vacanze, i
  corsi, le malattie (combatti attivamente per
  evitare il burnout!)
ascolta Cohn: stima la dimensione, deriva la
durata (e, usa unità arbitrarie * velocità)

                         41
Strumenti appropriati
cosa deve essere uniforme nella quot;squadraquot;?
   stile del codice, nomi, spaziatura, idiomi
   linguaggi, OS, librerie, framework di test,
   controllo sorgenti, issue tracking
   ma NON necess. editor, debugger, IDE...
strumento + importante: un buon sistema di
controllo dei sorgenti (e script accessori
per: continuous build, automatic tests, ...)
subito dopo: sistema di issue-tracking ben
integrato col sistema di controllo sorgenti

                     42
Uffici o Open Space?
  DeMarco e Lister lottano per uffici
  monopersona e con porta chiudibile
  (Spolski pure, anche + intensamente)
    ...e la comunicazione?
  Cockburn: osmosi e correnti d'aria
    il problema dello quot;statusquot;
    quot;radical colocationquot;
    open-space? una-stanza-per-
    squadra? quot;caverne e piazzaquot;?
    quot;buoniquot; cubicoli? o che altro?
    e` un problema aperto... o tre!-)
              43
quot;Geometriaquot; di squadra
 zona di lavoro in stile quot;Caverne e Piazzaquot;
quot;Piazzaquot; (area
  di lavoro di
   squadra)

                               Aree di lavoro
                                   private
                                (quot;Cavernequot;)



                     44
E la pallottola d'argento?!
non c'é, ma tanti piccoli spilli tengono
lontani i mostri!-)




                     45
Applicare nuove conoscenze
affrontale sempre in modo critico
mettile alla prova dell'esperienza
  prova nuove cose e idee un po' alla volta
    il quot;Big Bangquot; non solo é rischioso (!),
    ma offusca percezione ed analisi
  usa soprattutto la tua esperienza, ma non
  solo -- usa anche la mia, la sua, la loro...
NB: vale x tutti quei libri, ecc... ma anche x
questo stesso intervento!-)

                    46
http://www.aleax.it/itbes_sseci.pdf




  Q?
                      A!
                 47
quot;Il Principequot;, N. Machiavelli
           quot;Behind Closed Doorsquot;, J. Rothman, E. Derby
                 quot;Peoplewarequot;, T. DeMarco, T. Lister
            quot;Agile & Iterative Developmentquot;, C. Larman
               quot;Ship It!quot;, J. Richardson, W. Gwaltney
             quot;Agile Estimating and Planningquot;, M. Cohn
                    quot;Object Solutionsquot;, G. Booch
             quot;Agile Software Developmentquot;, R. Martin
     quot;The Psychology of Computer Programmingquot;, G. Weinberg
               quot;The Limits of Softwarequot;, R. Britcher
                 quot;Dreaming in Codequot;, S. Rosenberg
                 quot;Project Managementquot;, S. Berkun
                   quot;Software Runawaysquot;, R. Glass
       quot;Working Effectively with Legacy Codequot;, M. Feathers
            quot;Mintzberg on Managementquot;, H. Mintzberg
   quot;FIT for Developing Softwarequot;, R. Mugridge, W. Cunningham
                     quot;Death Marchquot;, E. Yourdon
               quot;The Mythical Man-Monthquot;, F. Brooks
   quot;Time Management for System Administratorsquot;, T. Limoncelli
                      quot;The Art of Warquot;, Sun Zi
                quot;How to Lose a Battlequot;, B. Fawcett
                   quot;Getting Things Donequot;, D. Allen
                         quot;Trustquot;, F. Fukuyama
            quot;The Evolution of Cooperationquot;, R. Axelrod
                   quot;The Speed of Trustquot;, S. Covey
                 quot;The Origins of Virtuequot;, M. Ridley
          quot;Beautiful Teamsquot;, A. Stellman, J. Greene, et al.
         quot;Competing on the Edgequot;, S. Brown, K. Eisenhardt
     quot;The Elements of Great Managingquot;, R. Wagner, J. Harter
                   quot;Joel on Softwarequot;, J. Spolsky
quot;Agile Software Development: The Cooperative Gamequot;, A. Cockburn

                              48

Contenu connexe

Tendances

Time Management - Thomas Grones - edizeta
Time Management - Thomas Grones - edizetaTime Management - Thomas Grones - edizeta
Time Management - Thomas Grones - edizetaBtheONE Automotive
 
Corso la gestione del tempo (time management)
Corso la gestione del tempo (time management)Corso la gestione del tempo (time management)
Corso la gestione del tempo (time management)Olympos Group srl
 
Change Management - Cambiare in Azienda
Change Management - Cambiare in Azienda Change Management - Cambiare in Azienda
Change Management - Cambiare in Azienda Dott. Marco Randazzo
 
Time Management
Time ManagementTime Management
Time Managementcusci72
 
Oil - Time management
Oil - Time managementOil - Time management
Oil - Time managementguest822827
 
Priorità 1: il tempo
Priorità 1: il tempoPriorità 1: il tempo
Priorità 1: il tempoLuca Baiguini
 
COSA E' IL GTD E COME CI AIUTA NELLA GESTIONE DELLE NOSTRE ATTIVITA'
COSA E' IL GTD E COME CI AIUTA NELLA GESTIONE DELLE NOSTRE ATTIVITA'COSA E' IL GTD E COME CI AIUTA NELLA GESTIONE DELLE NOSTRE ATTIVITA'
COSA E' IL GTD E COME CI AIUTA NELLA GESTIONE DELLE NOSTRE ATTIVITA'Roberta Longoni
 
time management 1 - CAPIRE il proprio tempo
time management 1 - CAPIRE il proprio tempotime management 1 - CAPIRE il proprio tempo
time management 1 - CAPIRE il proprio tempoAlberto Garniga
 
time management 3 - VIVERE il proprio tempo
time management 3 - VIVERE il proprio tempotime management 3 - VIVERE il proprio tempo
time management 3 - VIVERE il proprio tempoAlberto Garniga
 
Cosa ho imparato trasformando software factory?
Cosa ho imparato trasformando software factory?Cosa ho imparato trasformando software factory?
Cosa ho imparato trasformando software factory?Matteo Emili
 
Time management - 20 consigli per imparare a gestire meglio il tuo tempo
Time management - 20 consigli per imparare a gestire meglio il tuo tempoTime management - 20 consigli per imparare a gestire meglio il tuo tempo
Time management - 20 consigli per imparare a gestire meglio il tuo tempoMatteo Steduto
 
time management 2 - PIANIFICARE il proprio tempo
time management 2 - PIANIFICARE il proprio tempotime management 2 - PIANIFICARE il proprio tempo
time management 2 - PIANIFICARE il proprio tempoAlberto Garniga
 
Sanypet Time Management
Sanypet Time ManagementSanypet Time Management
Sanypet Time ManagementLuigi Mengato
 
Pillole Di Formazione: Dai Tempo Al Tempo (completo)
Pillole Di Formazione: Dai Tempo Al Tempo (completo)Pillole Di Formazione: Dai Tempo Al Tempo (completo)
Pillole Di Formazione: Dai Tempo Al Tempo (completo)Luigi Mengato
 
Project Management, questo sconosciuto!
Project Management, questo sconosciuto!Project Management, questo sconosciuto!
Project Management, questo sconosciuto!Cristiano Ottavian
 
Alla ricerca del tempo perduto
Alla ricerca del tempo perdutoAlla ricerca del tempo perduto
Alla ricerca del tempo perdutoRoberta Longoni
 
Time Management (Performance Management)
Time Management (Performance Management)Time Management (Performance Management)
Time Management (Performance Management)Luigi Mengato
 

Tendances (20)

Time management
Time managementTime management
Time management
 
Time Management - Thomas Grones - edizeta
Time Management - Thomas Grones - edizetaTime Management - Thomas Grones - edizeta
Time Management - Thomas Grones - edizeta
 
Corso la gestione del tempo (time management)
Corso la gestione del tempo (time management)Corso la gestione del tempo (time management)
Corso la gestione del tempo (time management)
 
Change Management - Cambiare in Azienda
Change Management - Cambiare in Azienda Change Management - Cambiare in Azienda
Change Management - Cambiare in Azienda
 
Time Management
Time ManagementTime Management
Time Management
 
Oil - Time management
Oil - Time managementOil - Time management
Oil - Time management
 
Priorità 1: il tempo
Priorità 1: il tempoPriorità 1: il tempo
Priorità 1: il tempo
 
Focus managment 6 maggio
Focus managment 6 maggioFocus managment 6 maggio
Focus managment 6 maggio
 
COSA E' IL GTD E COME CI AIUTA NELLA GESTIONE DELLE NOSTRE ATTIVITA'
COSA E' IL GTD E COME CI AIUTA NELLA GESTIONE DELLE NOSTRE ATTIVITA'COSA E' IL GTD E COME CI AIUTA NELLA GESTIONE DELLE NOSTRE ATTIVITA'
COSA E' IL GTD E COME CI AIUTA NELLA GESTIONE DELLE NOSTRE ATTIVITA'
 
time management 1 - CAPIRE il proprio tempo
time management 1 - CAPIRE il proprio tempotime management 1 - CAPIRE il proprio tempo
time management 1 - CAPIRE il proprio tempo
 
time management 3 - VIVERE il proprio tempo
time management 3 - VIVERE il proprio tempotime management 3 - VIVERE il proprio tempo
time management 3 - VIVERE il proprio tempo
 
Cosa ho imparato trasformando software factory?
Cosa ho imparato trasformando software factory?Cosa ho imparato trasformando software factory?
Cosa ho imparato trasformando software factory?
 
Time management - 20 consigli per imparare a gestire meglio il tuo tempo
Time management - 20 consigli per imparare a gestire meglio il tuo tempoTime management - 20 consigli per imparare a gestire meglio il tuo tempo
Time management - 20 consigli per imparare a gestire meglio il tuo tempo
 
time management 2 - PIANIFICARE il proprio tempo
time management 2 - PIANIFICARE il proprio tempotime management 2 - PIANIFICARE il proprio tempo
time management 2 - PIANIFICARE il proprio tempo
 
Sanypet Time Management
Sanypet Time ManagementSanypet Time Management
Sanypet Time Management
 
Pillole Di Formazione: Dai Tempo Al Tempo (completo)
Pillole Di Formazione: Dai Tempo Al Tempo (completo)Pillole Di Formazione: Dai Tempo Al Tempo (completo)
Pillole Di Formazione: Dai Tempo Al Tempo (completo)
 
Project Management, questo sconosciuto!
Project Management, questo sconosciuto!Project Management, questo sconosciuto!
Project Management, questo sconosciuto!
 
Gestione del tempo
Gestione del tempoGestione del tempo
Gestione del tempo
 
Alla ricerca del tempo perduto
Alla ricerca del tempo perdutoAlla ricerca del tempo perduto
Alla ricerca del tempo perduto
 
Time Management (Performance Management)
Time Management (Performance Management)Time Management (Performance Management)
Time Management (Performance Management)
 

En vedette

Progetto letto-scrittura
Progetto letto-scritturaProgetto letto-scrittura
Progetto letto-scritturaimartini
 
Holiday Messaging for Restaurants - Best Practices Marketing Webinar
Holiday Messaging for Restaurants - Best Practices Marketing WebinarHoliday Messaging for Restaurants - Best Practices Marketing Webinar
Holiday Messaging for Restaurants - Best Practices Marketing WebinarFishbowl Marketing
 
Fishbowl holiday messaging trends and recommendations2012
Fishbowl holiday messaging trends and recommendations2012Fishbowl holiday messaging trends and recommendations2012
Fishbowl holiday messaging trends and recommendations2012Fishbowl Marketing
 
Cowboy programming e l'arte del copia/incolla
Cowboy programming e l'arte del copia/incollaCowboy programming e l'arte del copia/incolla
Cowboy programming e l'arte del copia/incollaBetter Software
 
Post holiday planning tips & strategies
Post holiday planning tips & strategiesPost holiday planning tips & strategies
Post holiday planning tips & strategiesFishbowl Marketing
 
Fishbowl Webinar Best Practices for Integrating Loyalty Programs & eClub
Fishbowl Webinar Best Practices for Integrating Loyalty Programs & eClubFishbowl Webinar Best Practices for Integrating Loyalty Programs & eClub
Fishbowl Webinar Best Practices for Integrating Loyalty Programs & eClubFishbowl Marketing
 
Mobile Travel @ Travel2010.be TravelMedia
Mobile Travel @ Travel2010.be TravelMedia Mobile Travel @ Travel2010.be TravelMedia
Mobile Travel @ Travel2010.be TravelMedia Sound of Data
 
Maximizing Resources with Crowdsourcing
Maximizing Resources with CrowdsourcingMaximizing Resources with Crowdsourcing
Maximizing Resources with CrowdsourcingMike Robert
 
Best Practice Webinar: Effective A/B Tests [Oct. 18, 2012]
Best Practice Webinar: Effective A/B Tests [Oct. 18, 2012]Best Practice Webinar: Effective A/B Tests [Oct. 18, 2012]
Best Practice Webinar: Effective A/B Tests [Oct. 18, 2012]Fishbowl Marketing
 
Better Software Feedback Partecipanti Edizione 2009
Better Software Feedback Partecipanti Edizione 2009Better Software Feedback Partecipanti Edizione 2009
Better Software Feedback Partecipanti Edizione 2009Better Software
 
CLEAR ID: The total identity theft protection solution
CLEAR ID: The total identity theft protection solutionCLEAR ID: The total identity theft protection solution
CLEAR ID: The total identity theft protection solutionChintana Herrin
 
Ccm belmeniet via_ivr
Ccm belmeniet via_ivrCcm belmeniet via_ivr
Ccm belmeniet via_ivrSound of Data
 
Mana Core Brand Identity Portfolio
Mana Core Brand Identity PortfolioMana Core Brand Identity Portfolio
Mana Core Brand Identity PortfolioWavenDean
 
Client Testimonials For Mana
Client Testimonials For ManaClient Testimonials For Mana
Client Testimonials For ManaWavenDean
 
Claiming & Managing Your Online Presence
Claiming & Managing Your Online PresenceClaiming & Managing Your Online Presence
Claiming & Managing Your Online PresenceFishbowl Marketing
 
Roberto Ghislandi - Web Marketing e Web2.0
Roberto Ghislandi - Web Marketing e Web2.0Roberto Ghislandi - Web Marketing e Web2.0
Roberto Ghislandi - Web Marketing e Web2.0Better Software
 
Lets ‘Talk Story’ About Branding Basics
Lets ‘Talk Story’ About Branding BasicsLets ‘Talk Story’ About Branding Basics
Lets ‘Talk Story’ About Branding BasicsWavenDean
 
The Fun Of A Program Manager
The Fun Of A Program ManagerThe Fun Of A Program Manager
The Fun Of A Program ManagerBetter Software
 
Webinar: The Playbook for Predictable Sales Growth: Understanding and Leverag...
Webinar: The Playbook for Predictable Sales Growth: Understanding and Leverag...Webinar: The Playbook for Predictable Sales Growth: Understanding and Leverag...
Webinar: The Playbook for Predictable Sales Growth: Understanding and Leverag...Fishbowl Marketing
 

En vedette (20)

Progetto letto-scrittura
Progetto letto-scritturaProgetto letto-scrittura
Progetto letto-scrittura
 
Holiday Messaging for Restaurants - Best Practices Marketing Webinar
Holiday Messaging for Restaurants - Best Practices Marketing WebinarHoliday Messaging for Restaurants - Best Practices Marketing Webinar
Holiday Messaging for Restaurants - Best Practices Marketing Webinar
 
Fishbowl holiday messaging trends and recommendations2012
Fishbowl holiday messaging trends and recommendations2012Fishbowl holiday messaging trends and recommendations2012
Fishbowl holiday messaging trends and recommendations2012
 
Cowboy programming e l'arte del copia/incolla
Cowboy programming e l'arte del copia/incollaCowboy programming e l'arte del copia/incolla
Cowboy programming e l'arte del copia/incolla
 
Post holiday planning tips & strategies
Post holiday planning tips & strategiesPost holiday planning tips & strategies
Post holiday planning tips & strategies
 
Fishbowl Webinar Best Practices for Integrating Loyalty Programs & eClub
Fishbowl Webinar Best Practices for Integrating Loyalty Programs & eClubFishbowl Webinar Best Practices for Integrating Loyalty Programs & eClub
Fishbowl Webinar Best Practices for Integrating Loyalty Programs & eClub
 
Dove l’utente è re
Dove l’utente è reDove l’utente è re
Dove l’utente è re
 
Mobile Travel @ Travel2010.be TravelMedia
Mobile Travel @ Travel2010.be TravelMedia Mobile Travel @ Travel2010.be TravelMedia
Mobile Travel @ Travel2010.be TravelMedia
 
Maximizing Resources with Crowdsourcing
Maximizing Resources with CrowdsourcingMaximizing Resources with Crowdsourcing
Maximizing Resources with Crowdsourcing
 
Best Practice Webinar: Effective A/B Tests [Oct. 18, 2012]
Best Practice Webinar: Effective A/B Tests [Oct. 18, 2012]Best Practice Webinar: Effective A/B Tests [Oct. 18, 2012]
Best Practice Webinar: Effective A/B Tests [Oct. 18, 2012]
 
Better Software Feedback Partecipanti Edizione 2009
Better Software Feedback Partecipanti Edizione 2009Better Software Feedback Partecipanti Edizione 2009
Better Software Feedback Partecipanti Edizione 2009
 
CLEAR ID: The total identity theft protection solution
CLEAR ID: The total identity theft protection solutionCLEAR ID: The total identity theft protection solution
CLEAR ID: The total identity theft protection solution
 
Ccm belmeniet via_ivr
Ccm belmeniet via_ivrCcm belmeniet via_ivr
Ccm belmeniet via_ivr
 
Mana Core Brand Identity Portfolio
Mana Core Brand Identity PortfolioMana Core Brand Identity Portfolio
Mana Core Brand Identity Portfolio
 
Client Testimonials For Mana
Client Testimonials For ManaClient Testimonials For Mana
Client Testimonials For Mana
 
Claiming & Managing Your Online Presence
Claiming & Managing Your Online PresenceClaiming & Managing Your Online Presence
Claiming & Managing Your Online Presence
 
Roberto Ghislandi - Web Marketing e Web2.0
Roberto Ghislandi - Web Marketing e Web2.0Roberto Ghislandi - Web Marketing e Web2.0
Roberto Ghislandi - Web Marketing e Web2.0
 
Lets ‘Talk Story’ About Branding Basics
Lets ‘Talk Story’ About Branding BasicsLets ‘Talk Story’ About Branding Basics
Lets ‘Talk Story’ About Branding Basics
 
The Fun Of A Program Manager
The Fun Of A Program ManagerThe Fun Of A Program Manager
The Fun Of A Program Manager
 
Webinar: The Playbook for Predictable Sales Growth: Understanding and Leverag...
Webinar: The Playbook for Predictable Sales Growth: Understanding and Leverag...Webinar: The Playbook for Predictable Sales Growth: Understanding and Leverag...
Webinar: The Playbook for Predictable Sales Growth: Understanding and Leverag...
 

Similaire à Alex Martelli - Sviluppo Software: Esperienze, Consigli e Idee

Mgmt lezione 1-il successo nella gestione dei progetti
Mgmt lezione 1-il successo nella gestione dei progettiMgmt lezione 1-il successo nella gestione dei progetti
Mgmt lezione 1-il successo nella gestione dei progettiLeonardo Pergolini
 
Intervento a TP Incisa - 13 nov 2009
Intervento a TP Incisa - 13 nov 2009Intervento a TP Incisa - 13 nov 2009
Intervento a TP Incisa - 13 nov 2009michfabi
 
Presentazione Palmiro Padova 2015
Presentazione Palmiro Padova 2015Presentazione Palmiro Padova 2015
Presentazione Palmiro Padova 2015tibicon sas
 
Presentazione Palmiro - Roma, 13 novembre 2015
Presentazione Palmiro - Roma, 13 novembre 2015Presentazione Palmiro - Roma, 13 novembre 2015
Presentazione Palmiro - Roma, 13 novembre 2015tibicon sas
 
Lean Web Solutions with WP [versione italiana]
Lean Web Solutions with WP [versione italiana]Lean Web Solutions with WP [versione italiana]
Lean Web Solutions with WP [versione italiana]Carlo Beschi
 
21 competenze trasversali che ogni dipendente dovrebbe avere
21 competenze trasversali che ogni dipendente dovrebbe avere21 competenze trasversali che ogni dipendente dovrebbe avere
21 competenze trasversali che ogni dipendente dovrebbe avereAltamira HRM
 
Il piccolo grande uomo del Project Management
Il piccolo grande uomo del Project ManagementIl piccolo grande uomo del Project Management
Il piccolo grande uomo del Project Managementeurekaservice
 
Andrea Romoli e Fabrizio Faraco - Business Agility ai tempi dello smartworkin...
Andrea Romoli e Fabrizio Faraco - Business Agility ai tempi dello smartworkin...Andrea Romoli e Fabrizio Faraco - Business Agility ai tempi dello smartworkin...
Andrea Romoli e Fabrizio Faraco - Business Agility ai tempi dello smartworkin...Stefano Saladino
 
Creatività applicata e innovazione nel business
Creatività applicata e innovazione nel businessCreatività applicata e innovazione nel business
Creatività applicata e innovazione nel businessRita Bonucchi
 
Digitalk: come costruire un team di crescita
Digitalk: come costruire un team di crescitaDigitalk: come costruire un team di crescita
Digitalk: come costruire un team di crescitaFederico Simonetti
 
"Palmiro e lo (s)management delle risorse umane" - Sassuolo (MO) 20.02.15
"Palmiro e lo (s)management delle risorse umane" - Sassuolo (MO) 20.02.15"Palmiro e lo (s)management delle risorse umane" - Sassuolo (MO) 20.02.15
"Palmiro e lo (s)management delle risorse umane" - Sassuolo (MO) 20.02.15tibicon sas
 
Reshaping enterrprise software
Reshaping enterrprise softwareReshaping enterrprise software
Reshaping enterrprise softwareAlberto Brandolini
 
Arriva il manager di rete di impresa
Arriva il manager di rete di impresaArriva il manager di rete di impresa
Arriva il manager di rete di impresaRodolfo Principi
 
Dimitri favre #noprojects - Modern software development focuses on Teams and...
Dimitri favre  #noprojects - Modern software development focuses on Teams and...Dimitri favre  #noprojects - Modern software development focuses on Teams and...
Dimitri favre #noprojects - Modern software development focuses on Teams and...Dimitri Favre
 
Smart working:da crisi ad opportunità
Smart working:da crisi ad opportunitàSmart working:da crisi ad opportunità
Smart working:da crisi ad opportunitàNoemi Taccarelli
 
Time management 21 o 22 giugno, roma
Time management   21 o 22 giugno, romaTime management   21 o 22 giugno, roma
Time management 21 o 22 giugno, romaAtmenRoma
 
Presentazione del libro "Palmiro e lo (s)management delle risorse umane - Tat...
Presentazione del libro "Palmiro e lo (s)management delle risorse umane - Tat...Presentazione del libro "Palmiro e lo (s)management delle risorse umane - Tat...
Presentazione del libro "Palmiro e lo (s)management delle risorse umane - Tat...tibicon sas
 

Similaire à Alex Martelli - Sviluppo Software: Esperienze, Consigli e Idee (20)

Mgmt lezione 1-il successo nella gestione dei progetti
Mgmt lezione 1-il successo nella gestione dei progettiMgmt lezione 1-il successo nella gestione dei progetti
Mgmt lezione 1-il successo nella gestione dei progetti
 
Intervento a TP Incisa - 13 nov 2009
Intervento a TP Incisa - 13 nov 2009Intervento a TP Incisa - 13 nov 2009
Intervento a TP Incisa - 13 nov 2009
 
#NoCoaching IAD 2022
#NoCoaching IAD 2022#NoCoaching IAD 2022
#NoCoaching IAD 2022
 
Presentazione Palmiro Padova 2015
Presentazione Palmiro Padova 2015Presentazione Palmiro Padova 2015
Presentazione Palmiro Padova 2015
 
Presentazione Palmiro - Roma, 13 novembre 2015
Presentazione Palmiro - Roma, 13 novembre 2015Presentazione Palmiro - Roma, 13 novembre 2015
Presentazione Palmiro - Roma, 13 novembre 2015
 
Lean Web Solutions with WP [versione italiana]
Lean Web Solutions with WP [versione italiana]Lean Web Solutions with WP [versione italiana]
Lean Web Solutions with WP [versione italiana]
 
21 competenze trasversali che ogni dipendente dovrebbe avere
21 competenze trasversali che ogni dipendente dovrebbe avere21 competenze trasversali che ogni dipendente dovrebbe avere
21 competenze trasversali che ogni dipendente dovrebbe avere
 
The big bang theory
The big bang theoryThe big bang theory
The big bang theory
 
Il piccolo grande uomo del Project Management
Il piccolo grande uomo del Project ManagementIl piccolo grande uomo del Project Management
Il piccolo grande uomo del Project Management
 
Andrea Romoli e Fabrizio Faraco - Business Agility ai tempi dello smartworkin...
Andrea Romoli e Fabrizio Faraco - Business Agility ai tempi dello smartworkin...Andrea Romoli e Fabrizio Faraco - Business Agility ai tempi dello smartworkin...
Andrea Romoli e Fabrizio Faraco - Business Agility ai tempi dello smartworkin...
 
Creatività applicata e innovazione nel business
Creatività applicata e innovazione nel businessCreatività applicata e innovazione nel business
Creatività applicata e innovazione nel business
 
Digitalk: come costruire un team di crescita
Digitalk: come costruire un team di crescitaDigitalk: come costruire un team di crescita
Digitalk: come costruire un team di crescita
 
"Palmiro e lo (s)management delle risorse umane" - Sassuolo (MO) 20.02.15
"Palmiro e lo (s)management delle risorse umane" - Sassuolo (MO) 20.02.15"Palmiro e lo (s)management delle risorse umane" - Sassuolo (MO) 20.02.15
"Palmiro e lo (s)management delle risorse umane" - Sassuolo (MO) 20.02.15
 
Reshaping enterrprise software
Reshaping enterrprise softwareReshaping enterrprise software
Reshaping enterrprise software
 
Arriva il manager di rete di impresa
Arriva il manager di rete di impresaArriva il manager di rete di impresa
Arriva il manager di rete di impresa
 
Dimitri favre #noprojects - Modern software development focuses on Teams and...
Dimitri favre  #noprojects - Modern software development focuses on Teams and...Dimitri favre  #noprojects - Modern software development focuses on Teams and...
Dimitri favre #noprojects - Modern software development focuses on Teams and...
 
Stefania Padoa
Stefania PadoaStefania Padoa
Stefania Padoa
 
Smart working:da crisi ad opportunità
Smart working:da crisi ad opportunitàSmart working:da crisi ad opportunità
Smart working:da crisi ad opportunità
 
Time management 21 o 22 giugno, roma
Time management   21 o 22 giugno, romaTime management   21 o 22 giugno, roma
Time management 21 o 22 giugno, roma
 
Presentazione del libro "Palmiro e lo (s)management delle risorse umane - Tat...
Presentazione del libro "Palmiro e lo (s)management delle risorse umane - Tat...Presentazione del libro "Palmiro e lo (s)management delle risorse umane - Tat...
Presentazione del libro "Palmiro e lo (s)management delle risorse umane - Tat...
 

Plus de Better Software

How can metrics help in improving our effectiveness?
How can metrics help in improving our effectiveness?How can metrics help in improving our effectiveness?
How can metrics help in improving our effectiveness?Better Software
 
Software Open Source in ambito industriale
Software Open Source in ambito industrialeSoftware Open Source in ambito industriale
Software Open Source in ambito industrialeBetter Software
 
web 2.0, copyright, diritti fondamentali
web 2.0, copyright, diritti fondamentaliweb 2.0, copyright, diritti fondamentali
web 2.0, copyright, diritti fondamentaliBetter Software
 
Quando il software si fa amare
Quando il software si fa amareQuando il software si fa amare
Quando il software si fa amareBetter Software
 
Il programmatore e le sue api
Il programmatore e le sue apiIl programmatore e le sue api
Il programmatore e le sue apiBetter Software
 
Better Software: Feedback Report 2010
Better Software: Feedback Report 2010Better Software: Feedback Report 2010
Better Software: Feedback Report 2010Better Software
 
Alcune lezioni che ho imparato negli ultimi due anni
Alcune lezioni che ho imparato negli ultimi due anniAlcune lezioni che ho imparato negli ultimi due anni
Alcune lezioni che ho imparato negli ultimi due anniBetter Software
 
Alla ricerca della user story perduta
Alla ricerca della user story perdutaAlla ricerca della user story perduta
Alla ricerca della user story perdutaBetter Software
 
Cavallini - L'importanza del software libero nei sistemi GIS
Cavallini - L'importanza del software libero nei sistemi GISCavallini - L'importanza del software libero nei sistemi GIS
Cavallini - L'importanza del software libero nei sistemi GISBetter Software
 
Cavallini - OpenSource e sistemi GIS
Cavallini - OpenSource e sistemi GISCavallini - OpenSource e sistemi GIS
Cavallini - OpenSource e sistemi GISBetter Software
 
Alessandro Salvatico - Ingres: il nuovo modello IT
Alessandro Salvatico - Ingres: il nuovo modello ITAlessandro Salvatico - Ingres: il nuovo modello IT
Alessandro Salvatico - Ingres: il nuovo modello ITBetter Software
 
Alessandro Salvatico - Sviluppare J2EE con INGRES
Alessandro Salvatico - Sviluppare J2EE con INGRESAlessandro Salvatico - Sviluppare J2EE con INGRES
Alessandro Salvatico - Sviluppare J2EE con INGRESBetter Software
 
Maurizio Mesenzani - Le competenze del Project Manager
Maurizio Mesenzani - Le competenze del Project ManagerMaurizio Mesenzani - Le competenze del Project Manager
Maurizio Mesenzani - Le competenze del Project ManagerBetter Software
 
Elio Tondo - Linux In Azienda
Elio Tondo - Linux In AziendaElio Tondo - Linux In Azienda
Elio Tondo - Linux In AziendaBetter Software
 
Massimiliano Zani - Applicazioni Mobile: tecnologie e Problematiche
Massimiliano Zani - Applicazioni Mobile: tecnologie e ProblematicheMassimiliano Zani - Applicazioni Mobile: tecnologie e Problematiche
Massimiliano Zani - Applicazioni Mobile: tecnologie e ProblematicheBetter Software
 
Antonio Bonanno - Il Cliente Agile
Antonio Bonanno - Il Cliente AgileAntonio Bonanno - Il Cliente Agile
Antonio Bonanno - Il Cliente AgileBetter Software
 
Casali + Giacoma - Design Motivazionale
Casali + Giacoma - Design MotivazionaleCasali + Giacoma - Design Motivazionale
Casali + Giacoma - Design MotivazionaleBetter Software
 

Plus de Better Software (20)

How can metrics help in improving our effectiveness?
How can metrics help in improving our effectiveness?How can metrics help in improving our effectiveness?
How can metrics help in improving our effectiveness?
 
Software Open Source in ambito industriale
Software Open Source in ambito industrialeSoftware Open Source in ambito industriale
Software Open Source in ambito industriale
 
Start small stay small
Start small stay smallStart small stay small
Start small stay small
 
web 2.0, copyright, diritti fondamentali
web 2.0, copyright, diritti fondamentaliweb 2.0, copyright, diritti fondamentali
web 2.0, copyright, diritti fondamentali
 
Quando il software si fa amare
Quando il software si fa amareQuando il software si fa amare
Quando il software si fa amare
 
Il programmatore e le sue api
Il programmatore e le sue apiIl programmatore e le sue api
Il programmatore e le sue api
 
Better Software: Feedback Report 2010
Better Software: Feedback Report 2010Better Software: Feedback Report 2010
Better Software: Feedback Report 2010
 
Alcune lezioni che ho imparato negli ultimi due anni
Alcune lezioni che ho imparato negli ultimi due anniAlcune lezioni che ho imparato negli ultimi due anni
Alcune lezioni che ho imparato negli ultimi due anni
 
Alla ricerca della user story perduta
Alla ricerca della user story perdutaAlla ricerca della user story perduta
Alla ricerca della user story perduta
 
Augmented reality e web
Augmented reality e webAugmented reality e web
Augmented reality e web
 
Cavallini - L'importanza del software libero nei sistemi GIS
Cavallini - L'importanza del software libero nei sistemi GISCavallini - L'importanza del software libero nei sistemi GIS
Cavallini - L'importanza del software libero nei sistemi GIS
 
Cavallini - OpenSource e sistemi GIS
Cavallini - OpenSource e sistemi GISCavallini - OpenSource e sistemi GIS
Cavallini - OpenSource e sistemi GIS
 
Alessandro Salvatico - Ingres: il nuovo modello IT
Alessandro Salvatico - Ingres: il nuovo modello ITAlessandro Salvatico - Ingres: il nuovo modello IT
Alessandro Salvatico - Ingres: il nuovo modello IT
 
Alessandro Salvatico - Sviluppare J2EE con INGRES
Alessandro Salvatico - Sviluppare J2EE con INGRESAlessandro Salvatico - Sviluppare J2EE con INGRES
Alessandro Salvatico - Sviluppare J2EE con INGRES
 
Maurizio Mesenzani - Le competenze del Project Manager
Maurizio Mesenzani - Le competenze del Project ManagerMaurizio Mesenzani - Le competenze del Project Manager
Maurizio Mesenzani - Le competenze del Project Manager
 
Elio Tondo - Linux In Azienda
Elio Tondo - Linux In AziendaElio Tondo - Linux In Azienda
Elio Tondo - Linux In Azienda
 
Massimiliano Zani - Applicazioni Mobile: tecnologie e Problematiche
Massimiliano Zani - Applicazioni Mobile: tecnologie e ProblematicheMassimiliano Zani - Applicazioni Mobile: tecnologie e Problematiche
Massimiliano Zani - Applicazioni Mobile: tecnologie e Problematiche
 
Claudio Cicali - Openid
Claudio Cicali - OpenidClaudio Cicali - Openid
Claudio Cicali - Openid
 
Antonio Bonanno - Il Cliente Agile
Antonio Bonanno - Il Cliente AgileAntonio Bonanno - Il Cliente Agile
Antonio Bonanno - Il Cliente Agile
 
Casali + Giacoma - Design Motivazionale
Casali + Giacoma - Design MotivazionaleCasali + Giacoma - Design Motivazionale
Casali + Giacoma - Design Motivazionale
 

Alex Martelli - Sviluppo Software: Esperienze, Consigli e Idee

  • 1. Sviluppo di Software Esperienze, Consigli ed Idee Alex Martelli http://www.aleax.it/itbes_sseci.pdf ©2009 Google -- aleax@google.com
  • 2. C'è la Pallottola d'Argento? ...un singolo modo di far fuori tutti i mostri? 2
  • 3. NON Parlo Di... gestione strategica/esecutiva (per nulla) business plan, finanza, visione strategica... (poco o nulla) project management pianificazione, tempistiche, budget, ... (appena appena) tecnologie/metodi/strumenti linguaggi, sistemi operativi, framework... do per scontato un certo livello di quot;Agilitáquot;: nè un rigido Waterfall, nè un Caos totale!-) 3
  • 4. Agile vs Waterfall vs Chaos Waterfall: mira, mira, mira, mira, FUOCO! Chaos: fuoco!, fuoco!, fuoco!, OOPS, ... Agile: mira, fuoco!, aggiusta; mira, fuoco!, aggiusta; ... i progetti SW di successo devono avere una qualche misura di questa agilità; le quot;metodologie agiliquot; cercano di cogliere sistematicamente gli aspetti che funzionano, e applicarli con disciplina, adottando tecniche di codifica, test &c appropriate ad esigenze reali e concrete 4
  • 5. Agilita` Strategica ...traditional approaches to strategy often collapse in the face of rapidly and unpredictably changing industries ... because they over- emphasize the degree to which it is possible to predict ... ... change is the striking feature of contemporary business ... the key managing strategic challenge is that change. 5
  • 6. E Allora di Che Parlo? comunico le mie esperienze (a Google e prima, da sviluppatore, tech lead, manager: non aneddoti ma quot;il succoquot;) su UN buon modo di organizzare, fare e gestire lo sviluppo software ne esistono anche altri, eh!-) attacco alcune tesi molto popolari e raccomando libri che le difendono!-) quot;tips & tricksquot; (buoni x molti, molti casi...) il tutto arrangiato quot;dialetticamentequot;...;-) 6
  • 7. Chi É un Manager? 7
  • 8. Il quot;Livelloquot; A Cui Parlo Shu (quot;Imparaquot;) Ha (quot;Distaccaquot;) Ri (quot;Trascendiquot;) 8
  • 9. Un modo di imparare... ...è con buoni libri -- ce ne sono tanti...! 9
  • 10. Ars longa, vita brevis... piú ottimi libri, che tempo per leggerli!-) 10
  • 11. Ovviamente il + importante... ... é quot;Il Principequot;!-) 11
  • 12. Un'Opinione Diffusa “Once you have four or more people in your group, you can’t perform technical work and still be a great manager.” (Wk 6) “Managers are not usually part of the teams that they manage ... leadership just doesn’t have much place here.” (Ch 23) 12
  • 13. E un Dissenso da Essa “Tech leads split their time between development tasks and management tasks, not working exclusively in either realm.” (T.15: Let a tech lead) A Google, distinguiamo quot;tech leadquot; (ingegnere responsabile di UN progetto) da quot;uber tech leadquot; e quot;tech lead/managerquot; (quot;highly technical managersquot; == HTM), ma tutti questi gruppi soddisfano questa definizione. 13
  • 14. Un modo di essere un HTM supponiamo che un manager M sia tecnicamente almeno un pari degli sviluppatori (progetto, codifica, debugging...) M può nutrire reciproca fiducia, interazione e rispetto con gli sviluppatori usando se stesso come quot;risorsa tecnica 'Jolly'quot; non per i compiti + quot;divertentiquot;, ma per quelli urgenti che richiedono un altro paio di mani emisferi cerebrali subito, che siano divertenti o (meglio!-) pallosi a 'sto punto di solito arrivano le obiezioni... 14
  • 15. Non Può Andare, Perché... Se segui criticamente, potresti avere una o piu` di queste obiezioni: 1. e la Legge di Brooks? 2. ma come trovi il tempo!? 3. si trascura il quot;veroquot; lavoro da manager! 4. ma un manager non deve sempre delegare? 5. si spreca talento tecnico! 6. troppe interruzioni, non si può mai raggiungere la quot;zonaquot; (o quot;flowquot;)! 7. ...aggiungi le tue obiezioni personali...:-) 15
  • 16. 1. La Legge di Brooks quot;Aggiungere programmmatori a un progetto software in ritardo lo ritarda anche di piúquot; Si, ma: tutti scordano sempre di citare anche l'inizio della frase: quot;Sovrasemplificando in modo oltraggioso, asseriamoquot;...!-) poi, basta che non sia in ritardo...!-) Si basa sul carico ulteriore sugli sviluppatori esistenti per addestrare i nuovi + costo delle comunicazioni in piú. Ma: l'HTM e` sempre sostanzialmente al corrente, e comunica sempre, quindi: no overhead ☛ no Brooks’ Law 16
  • 17. 2. Come si trova il tempo? NON lavorando sempre piú ore la settimana mira a 40  accetta 50  60 é escluso  (Nota: dico vero tempo di lavoro, al netto di blogging, ciacole, spuntini, surfing, pranzi...!-) non col telecommuting (faccia-a-faccia é la forma + efficace di comunicazione, e la comunicazione é fra gli aspetti piú cruciali del lavoro di qualsiasi manager) il quot;time managementquot; funziona, se ben fatto 17
  • 18. Working Long Hours Productivity ($/hour) Average Hours Worked per Week 18
  • 19. Time Management per ... non é solo per sysadmin: almeno l'80/90% é utile a sviluppatori e HTM specie se hanno anche compiti operativi Limoncelli presenta il nucleo: http://video.google.com/videoplay? docid=7278397109952382318 idee chiave: focus & interruzioni, lista TODO unica e come gestirla, crearsi buone abitudini, come prioritizzare Aggiungo qualche consiglio specifico per HTM... 19
  • 20. Time Mgmt 101 per HTM programma molti brevi meeting periodici se un meeting finisce presto, no problem si cancella in caso di emergenze gestire bene il meeting lo mantiene breve la puntualità risparmia tempo per tutti mai 2 meeting consecutivi! pensa sempre a chi dovrebbe esserci facile ma errato: quot;nel dubbio, invitaloquot;!-) sii sempre pronto a cogliere le opportunità laptop, libri, Blackberry/PDA, QCFPT 20
  • 21. Time Mgmt 102 per HTM considera ogni compito specificamente deve davvero essere fatto? sono la persona giusta per farlo? quando sarebbe ottimale farlo? non lasciare emergere le emergenze! un rammendo in tempo salva il calzino riserva ~50% del tuo tempo quot;disponibilequot; ogni settimana per cose non ancora urgenti un generale saggio mantiene una riserva compiti rimandabili in casi di emergenze non aspettare che diventino urgenti!-) 21
  • 22. Estremamente Popolare: decisamente non-specifico (orientato ai manager, ma non hi-tech) ha molti veri e propri entusiasti, un quot;movimentoquot; http://www.davidco.com/ idee chiave: mente come acqua, un singolo quot;in-basketquot;, flusso strutturato, passi d'azione, quot;regola dei 2 minutiquot; non funziona appieno per me, ma per tanti altri sí! 22
  • 23. 3. Si trascura il vero lavoro il vero lavoro del manager consiste in questo: coltiva la fiducia, interessati alle persone, aiuta le squadre a formarsi, segui accuratamente tutti i tuoi progetti, aiuta le persone a crescere, concentrati sugli scopi da raggiungere e le loro priorità scrivere unit-test, discutere un progetto, o una terribile sessione di debug, aiutano a svolgere ciascuno di questi compiti! e poi cosí anche noi ci divertiamo con un poco di hacking al posto giusto, no?-) 23
  • 24. Gestire Professionisti sviluppatori = alta professionalitá se i tuoi non l'hanno, é L'UNICO problema rilevante x la tua squadra (o squadre)!!! se lo sono, INVESTICI (SONO la risorsa + importante, senza eccezioni) il tuo compito: puntali nella direzione giusta, coltiva le squadre, aiutali a crescere, tieni d'occhio progressi, blocchi e rischi, coordina NON il tuo compito: il MICROmanagement!-) ...e la MOTIVAZIONE...? 24
  • 25. Cosa Ci Motiva ...ma, non vengono Le idee di necessariamente dal Maslow sui basso verso l'alto! bisogni umani Transcendenza sono valide...: Autorealizzazione Bisogni Estetici Bisogni Cognitivi Bisogno di Stima Bisogno di Appartenenza Bisogno di Sicurezza Bisogni Fisiologici 25
  • 26. Motivazioni sul Lavoro so cosa ci si aspetta da me strumenti, materiali, ecc spesso/di solito faccio cio` che so fare meglio ho stima, riconoscimenti il manager si cura di me quot; incoraggia a crescere le mie opinioni contano apprezzo la missione la qualita` e` importante 26
  • 27. Non sono denti d'ingranaggio impara tutto quel che puoi sulle specifiche, individuali forze e debolezze delle persone specie i TLs & sotto-mgr, ma non solo loro fa leva sulle loro forze fa scudo alle loro debolezze, ma anche: aiutali a crescere, rimuovere debolezze coaching, corsi, libri, pair progr., ... é una maratona, non i 100 metri piani! fare richieste irragionevoli puo quot;bruciarequot; le persone (attento al burnout!!!), ma... fare solo richieste ragionevoli non offre nessuna sfida (stretch goals) 27
  • 28. É un gioco di squadra...! Stellman, Greene, O'Reilly, Berkun, Booch, Doctorow, McConnell, Boehm, Fogel, Martelli, Ambler, Oram... 28
  • 29. 4. ma un mgr deve delegare certo, ma, delegare cosa? delegare non toglie responsibilità resta sempre aggiornato su tutti i progetti che guidi o coordini! devi fidarti che gli sviluppatori facciano le cose giuste -- ma, devi anche far la tua parte, per permettergli di farle! una volta che gli sviluppatori vedono che i tuoi contributi tecnici sono eccellenti, e si fidano che gli darai il dovuto credito, ti vorranno coinvolto il + possibile! 29
  • 31. Fiducia: inizia a casa tua...! per meritarti la fiducia altrui devi anzitutto meritarti la tua propria...!-) This above all: to thine own self be true, And it must follow, as the night the day, Thou canst not then be false to any man = non raccontarti storielle consolatorie...! Non ti illudere, non dire che fu un sogno che le orecchie ti ingannarono; rifiuta queste vane speranze! (C. Kavafis, quot;Il Dio Abbandona Antonioquot;) 31
  • 32. Fiducia: la base dell'economia The satisfaction we derive from being connected to others in the workplace grows out of a fundamental human desire for recognition. 32
  • 33. La Fiducia... é reciproca, e si costruisce col tempo devi guadagnarti la fiducia degli sviluppatori capacità tecnica, esercitata regolarmente interesse vero in loro come individui dai sempre riconoscimenti e credito loro devono guadagnarsi la fiducia tua capacità tecnica, integrità, focus ma: inizia sempre quot;fidandoti di defaultquot;! pre-req: assunzioni MOLTO selettive!-) 33
  • 34. La fiducia: circolo virtuoso 34
  • 36. Fidati, ma verifica → delega, ma tieni d'occhio quot;delegarequot; NON significa quot;abdicarequot; → resti pienamente responsabile se quel che hai delegato salta per aria → responsabilitá quot;unita e separataquot; strumenti per quot;tenere d'occhioquot; al meglio: meeting quotidiani burndown charts & altri quot;info radiatorsquot; email automatica al commit di sorgenti brevi, regolari meeting 1-on-1 36
  • 37. Chi decide? in ultima analisi, TU -- ma puoi decidere di accettare la decisione di qualcun altro! possono essere piú quot;sul pallonequot; di te o x una decisione a basso impatto che puó essere cambiate (se occorre) a basso costo -- chance di imparare, di crescere non occorre che quot;ti dimostriquot;: sei valutato, alla fin fine, sul successo del progetto, non sul tuo personale contributo al successo quindi, quot;fatti da partequot; piú spesso!☺ 37
  • 38. 5. Spreco di talento tecnico? non é uno spreco, é un leveraging! in certe aziende il management é per chi non ha piú nulla da contribuire sul piano tecnico... ma non in quelle di successo!-) quot;ma questo vale solo in fase di progettoquot; ma no, per nulla! quot;il diavolo sta nei dettagliquot; e dove c'é un diavolo da combattere, é lí che servono i migliori esorcisti!-) 38
  • 39. 6. Interruzioni e Flusso v. Limoncelli sul quot;gestire le interruzioniquot; ne restano comunque tante da quot;servirequot;...: tienti fuori dai quot;percorsi criticiquot; (o garantisci i routing alternativi) impara a capire cosa può aspettare 1 ora impara a quot;salvare qualcosa sullo stackquot;, dare immediata attenzione a qualcosa d'altro, pop dello stack e continua liscio alla fine, é possibile che uno non sia proprio fatto per quot;multitaskingquot; -- ma qualunque manager deve farne sempre parecchio!-( 39
  • 40. Consigli vari e assortiti you have to make a schedule... no programmer wants to... most are only doing it because their boss made them do it, halfheartedly, and nobody actually believes the schedule... 40
  • 41. Pianificazione e Schedule ascolta Joel: la tecnologia appropriata é una spreadsheet (o whiteboard + post-it, o cartoncini...), non diagrammi PERT/GANTT scegli compiti a grana molto fine (per combattere l'ottimismo degli sviluppatori, e il tuo personale!-), idealmente 2-3 giorni l'uno considera nella schedule le vacanze, i corsi, le malattie (combatti attivamente per evitare il burnout!) ascolta Cohn: stima la dimensione, deriva la durata (e, usa unità arbitrarie * velocità) 41
  • 42. Strumenti appropriati cosa deve essere uniforme nella quot;squadraquot;? stile del codice, nomi, spaziatura, idiomi linguaggi, OS, librerie, framework di test, controllo sorgenti, issue tracking ma NON necess. editor, debugger, IDE... strumento + importante: un buon sistema di controllo dei sorgenti (e script accessori per: continuous build, automatic tests, ...) subito dopo: sistema di issue-tracking ben integrato col sistema di controllo sorgenti 42
  • 43. Uffici o Open Space? DeMarco e Lister lottano per uffici monopersona e con porta chiudibile (Spolski pure, anche + intensamente) ...e la comunicazione? Cockburn: osmosi e correnti d'aria il problema dello quot;statusquot; quot;radical colocationquot; open-space? una-stanza-per- squadra? quot;caverne e piazzaquot;? quot;buoniquot; cubicoli? o che altro? e` un problema aperto... o tre!-) 43
  • 44. quot;Geometriaquot; di squadra zona di lavoro in stile quot;Caverne e Piazzaquot; quot;Piazzaquot; (area di lavoro di squadra) Aree di lavoro private (quot;Cavernequot;) 44
  • 45. E la pallottola d'argento?! non c'é, ma tanti piccoli spilli tengono lontani i mostri!-) 45
  • 46. Applicare nuove conoscenze affrontale sempre in modo critico mettile alla prova dell'esperienza prova nuove cose e idee un po' alla volta il quot;Big Bangquot; non solo é rischioso (!), ma offusca percezione ed analisi usa soprattutto la tua esperienza, ma non solo -- usa anche la mia, la sua, la loro... NB: vale x tutti quei libri, ecc... ma anche x questo stesso intervento!-) 46
  • 48. quot;Il Principequot;, N. Machiavelli quot;Behind Closed Doorsquot;, J. Rothman, E. Derby quot;Peoplewarequot;, T. DeMarco, T. Lister quot;Agile & Iterative Developmentquot;, C. Larman quot;Ship It!quot;, J. Richardson, W. Gwaltney quot;Agile Estimating and Planningquot;, M. Cohn quot;Object Solutionsquot;, G. Booch quot;Agile Software Developmentquot;, R. Martin quot;The Psychology of Computer Programmingquot;, G. Weinberg quot;The Limits of Softwarequot;, R. Britcher quot;Dreaming in Codequot;, S. Rosenberg quot;Project Managementquot;, S. Berkun quot;Software Runawaysquot;, R. Glass quot;Working Effectively with Legacy Codequot;, M. Feathers quot;Mintzberg on Managementquot;, H. Mintzberg quot;FIT for Developing Softwarequot;, R. Mugridge, W. Cunningham quot;Death Marchquot;, E. Yourdon quot;The Mythical Man-Monthquot;, F. Brooks quot;Time Management for System Administratorsquot;, T. Limoncelli quot;The Art of Warquot;, Sun Zi quot;How to Lose a Battlequot;, B. Fawcett quot;Getting Things Donequot;, D. Allen quot;Trustquot;, F. Fukuyama quot;The Evolution of Cooperationquot;, R. Axelrod quot;The Speed of Trustquot;, S. Covey quot;The Origins of Virtuequot;, M. Ridley quot;Beautiful Teamsquot;, A. Stellman, J. Greene, et al. quot;Competing on the Edgequot;, S. Brown, K. Eisenhardt quot;The Elements of Great Managingquot;, R. Wagner, J. Harter quot;Joel on Softwarequot;, J. Spolsky quot;Agile Software Development: The Cooperative Gamequot;, A. Cockburn 48