2017-04-21 15:18:48 +0000 2017-04-21 15:18:48 +0000
324
324

Come faccio ad affrontare il problema dei "30 minuti rimanenti"?

Come sviluppatore, spesso arrivo a questo punto in cui alla fine della giornata finisco un grande compito e ho ancora circa 30 minuti a disposizione.

Il problema è che 30 minuti non sono abbastanza per me per codificare qualcosa, e se inizio a codificare l'inizio stesso di un compito so che farò fatica a continuare il giorno dopo perdendo il contesto e dovrò rileggere il codice, il che mi porterà a perdere tempo.

Ma per concentrarmi sul problema professionale, non voglio perdere tempo al lavoro per così tanto tempo e stare lì senza fare niente per 30 minuti mi sembra assurdo.

Come affronto il problema dei “30 minuti rimanenti”?

EDIT : Per spiegare perché non è un duplicato, il problema non è “cosa fare quando i sistemi sono fuori uso al lavoro ? ” o cosa fare quando non ho niente da fare ? “ ma "cosa fare quando si arriva vicino alla fine della giornata e non si ha il tempo di iniziare un nuovo compito ?

Risposte (15)

456
456
456
2017-04-21 15:47:33 +0000

Ci sono un sacco di opzioni:

  • Controllare i (rilevanti) blogs/news/giornali e leggere cosa succede nel vostro campo
  • Documentare ciò che avete fatto durante il giorno
  • Pianificare ciò che dovete fare il giorno/settimana/mese successivo
  • Tornare alla vostra posta e finalmente ottenere veramente le informazioni che vi sono sfuggite saltandole prima
  • Controllare se avete fatto tutti i “compiti organizzativi”, e, in caso contrario, farle (Consegnare in orario, inviare il rapporto sulla scrivania a chi deve leggerlo, avviare il backup,. ..)
  • Pulisci la tua lavagna/scrivania/piano di lavoro da tutto ciò che vi si è accumulato ma che ha perso rilevanza tre settimane fa
  • Hai fatto tutto questo? Ancora 30 minuti? Torna al punto 1! (E, tu sei un mago.)
328
328
328
2017-04-21 16:25:11 +0000

Oltre a pianificare la giornata, riordinare le cose, e semplicemente andare via presto (per compensare il ritardo di altre volte), lasciate che vi suggerisca qualcosa che probabilmente sembra molto contro-intuitivo:

Cercate di evitare di fermarvi a un “punto di sosta naturale”

Vi preoccupate che se si arriva a mezz'ora in un'attività di codifica, troverete difficile caricare il contesto quando ci si torna il giorno dopo. Ma la mia esperienza è esattamente l'opposto. Diciamo che stai per scrivere una semplice funzione. Sapete che ci sarà un po’ di inizializzazione, un loop per elaborare tutte le X nella Y, e un po’ di pulizia. Aggiungerò letteralmente il file al mio progetto, dichiarerò la funzione, aggiungerò tre commenti (magari scrivendo il per o mentre si costruisce intorno ad uno di essi) e poi – andrò a casa.

La mattina, quando arrivi, non hai bisogno di ricordare cosa stavi facendo o di consultare i tuoi appunti – è tutto lì per te. Perché tornare a casa con un file vuoto, o un foglio bianco, che ti aspetta la mattina? Invece, almeno scrivete un titolo o un argomento. Scrivete almeno il nome della funzione. Se devi scrivere un documento, crea la cartella, crea un documento vuoto con il nome giusto e metti il titolo del documento in cima alla prima pagina. Applicare un foglio di stile.

Iniziare. Poi andate via. Potreste rimanere MOLTO piacevolmente sorpresi - è molto più facile iniziare se non vi siete fermati a un punto di arresto naturale. Partire da questi punti è facilissimo.

In effetti, è così facile che a volte uso una variante di questo per ingannare me stesso e farmi lavorare su qualcosa su cui non voglio lavorare. Faccio solo la parte del “cominciare” - fare il nuovo progetto o la cartella vuota o qualsiasi altra cosa. Faccio un file chiamato “outline” e lo incollo nello schema da e-mail. Scaricare le specifiche o le note di rilascio. Trovare il link a quel video che devo guardare. Niente di tutto questo conta davvero come lavorare sulla cosa su cui non voglio lavorare, è solo la roba per iniziare che mi permetterebbe di lavorare su di essa, quindi faccio questi compiti senza resistenza. E poi scopro, quando le ho fatte, che la mia resistenza cade e sono in grado di svolgere il compito stesso.

Provaci.

32
32
32
2017-04-21 15:23:24 +0000

Sarei più che felice di vederti tornare a casa e recuperare i 30 minuti un altro giorno. Come dici tu, sarai molto più produttivo nel farlo che nel cercare di fare 30 minuti di lavoro, perdendo il tuo contesto durante la notte e cercando di ricominciare la mattina.

Ma non sono mai pignolo per il lavoro “9 a 5”, comunque. Il tuo datore di lavoro potrebbe essere più regressivo.

18
18
18
2017-04-21 15:30:11 +0000

Esercitatevi a pianificare e a scrivere. Non è possibile codificare qualcos'altro, ma di solito c'è una pianificazione per codificare che va avanti e se la si scrive in quei 30 minuti si può leggere per prima cosa il giorno dopo e iniziare a codificare. Se riuscite a superare un piano, fatene un altro in modo da essere pronti a tuffarvi su un paio di elementi invece che su uno solo.

Il livello di note su questo dipenderà da voi come persona e da ciò che vi aiuta a ricordare meglio, ma l'obiettivo è quello di pianificare e articolare in modo tale da rinfrescare la memoria della pianificazione e riportarvi esattamente dove eravate ieri senza troppe perdite di tempo. L'ho visto fare nei commenti in codice wire frame, su carta, pubblicare note, editor di testo, immagini alla lavagna, ecc… Trova ciò che funziona meglio per te.

12
12
12
2017-04-21 15:27:31 +0000

Come affrontare il problema dei “30 minuti rimanenti” ?

Mi capita una volta ogni tanto, vi suggerisco di utilizzare il tempo a vostro vantaggio.

Utilizzo questi doni di tempo inattesi per la ricerca di nuove tecnologie, o l'analisi del mio prossimo compito, oppure rispondo/riesamino le domande su Stack Overflow. Imparo molto semplicemente esaminando nuove domande e risposte.

Non stare seduto a far finta di essere occupato. Fate buon uso del tempo!

11
11
11
2017-04-21 16:34:40 +0000

Come sviluppatore non hai mai finito.

Anche se non puoi aggiungere nuove funzionalità al tuo codice nel tempo che ti rimane puoi (e dovresti) refattarlo:

  • migliorare i nomi,
  • ridurre la duplicazione del codice,
  • dividere metodi/funzioni/procedure lunghe in più brevi
  • spostare metodi/funzioni/procedure su nuovi file per applicare il principio SRP e/o stesso livello di astrazione.

e altre cose del genere.

Qualsiasi di questi compiti richiede pochi secondi utilizzando le capacità di rifattorizzazione automatizzata dei vostri IDE. E il vostro più adatto vi garantirà che non avete modificato il comportamento delle applicazioni così come è attualmente implementato.

E nell'improbabile caso in cui abbiate rotto qualcosa: controllate l'ultimo stato di funzionamento del vostro SCM…

10
10
10
2017-04-21 19:13:39 +0000

Mantengo una “sweep list” di compiti che mi vengono in mente mentre sto lavorando su qualcos'altro - compiti che sono abbastanza lunghi da non voler divagare su di essi subito (o che non voglio affrontare immediatamente per qualche altro motivo - come “Voglio che questo impegno contenga solo un cambiamento logico”), ma abbastanza brevi da non meritare tutte le spese generali associate ai normali progetti. Ogni volta che mi imbatto in un compito come questo lo scarabocchio sulla lista con un grande aiuto di dettagli - dove andare, cosa fare, chi potrebbe beneficiarne e quanto tempo mi aspetto che ci voglia. La maggior parte delle cose che ci sono su di esso sono casi d'angolo troppo piccoli per ottenere risorse “ufficiali”, rifattori che dovrebbero essere fatti, test unitari che dovrebbero essere scritti, ecc, ma anche le cose che i miei colleghi mi chiedono mentre sono nel bel mezzo di qualcos'altro vanno su questa stessa lista (da qui il “chi potrebbe beneficiare”).

Quando ho un po’ di tempo a disposizione, vado sulla lista e comincio a tirare cose a caso. Ogni oggetto è autonomo e altamente prevedibile in termini di tempo, il che lo rende perfetto per essere inserito quando ho 15 minuti prima di una riunione, 5 minuti dopo aver impostato una conference call, ecc. Inoltre, quando qualcuno è in ritardo a una riunione, niente lo rende più felice di “Ehi, stavo pensando a te, così mi sono infilato in quella caratteristica che mi hai chiesto sei mesi fa, non è bello? (E niente mi rende più felice che non stare seduto lì a pensare ”*&@$ riunioni, non cominciare mai in orario…“)

5
5
5
2017-04-21 22:13:25 +0000

Come affrontare il problema dei “30 minuti rimanenti” ?

Ho sempre dedicato gli ultimi 30 minuti di ogni giorno a:

  • Pulire le e-mail rimaste
  • Controllare e aggiornare il mio calendario
  • Preparare il giorno successivo
  • Preparare tutto ciò che dovevo portare a casa (soprattutto se avevo intenzione di lavorare a casa)

Queste sono cose che potreste considerare di fare se vi trovate spesso con 30 minuti non programmati da dedicare alla fine della giornata.

E se in realtà non mi restasse nulla di utile da fare, me ne andrei e basta.

2
2
2
2017-04-22 15:18:00 +0000

Fare alcuni dei compiti che “non c'è tempo” per

Ci sono molti compiti per i quali un'organizzazione potrebbe credere che non ci sia “tempo”, ma che possono creare debito tecnico se lasciati - i test a volte rientrano in questa categoria.

Convincere la direzione che hanno bisogno di spendere soldi per compiti che fanno risparmiare soldi in un tempo futuro indeterminato è spesso difficile. Questa volta, se si lamentano, potete indicare che avete avuto 30 minuti di tempo libero alla fine della giornata, e sottolineare che avete trovato X numero di bug.

Troppo spesso, gli sviluppatori sono sotto pressione per finire le cose più velocemente e non c'è una supervisione di qualità insufficiente.

Verificate che qualcosa che avete scritto di recente sia fatto a specifica - Questo è successo a me ieri. Ho riletto parte delle specifiche di qualcosa e mi sono reso conto che non era del tutto corretto - ho passato circa 20 minuti a sistemarlo.

2
2
2
2017-04-21 15:30:53 +0000

Se siete ogni ora, usate il tempo per fare qualche lavoro impegnativo come aggiungere commenti e pulire in generale. Di solito uso anche questi ultimi 30 minuti circa per inviare e-mail, scrivere rapporti e compilare i registri di lavoro.

Se non altro, navigate su Stack Overflow e sembrate occupati.

1
1
1
2017-04-22 16:11:07 +0000

Qualsiasi software di complessità (non molto elevata) può essere reso sempre un po’ migliore.

Rendete il vostro codice un po’ migliore.

1
1
1
2017-04-21 15:33:01 +0000

Personalmente, questo mi succede, per circa gli ultimi 15-20 minuti della giornata.

Ciò che mi aiuta è pianificare il giorno successivo (o la settimana), proponendo alcuni elementi d'azione, ecc.

1
1
1
2017-04-21 21:48:27 +0000

Dovreste considerare la possibilità di suddividere il vostro tempo al lavoro in blocchi abbastanza grandi da poter lavorare liberamente all'interno di ogni blocco, ma non eccessivamente grandi. Potreste pensare che i blocchi arbitrariamente grandi, che durano il tempo necessario per svolgere qualche compito, funzionino bene per voi, ma la concentrazione ne risente dopo qualche ora di lavoro ininterrotto. Se si fa rispettare una pausa dopo, diciamo 2,5 ore, allora si può sputare un giorno di lavoro di 9 ore (8 ore di lavoro più 1 ora di pausa) in 3 blocchi di questo tipo con 20 minuti di pausa caffè/pranzo tra un blocco e l'altro e un'ulteriore pausa di esercizio di 50 minuti.

Si eliminerà quindi questo “problema dell'ultima mezz'ora”, ci sarà sempre e solo un blocco di 2,5 ore che si sentirà in modo totalmente diverso rispetto alle vostre attuali ultime ore di lavoro. Se un'attività viene terminata entro l'ultimo blocco, avrete molta più energia per continuare con altre attività o pianificare per il giorno successivo. Avrete iniziato quel blocco con più energia e all'inizio del blocco probabilmente saprete che finirete in anticipo, il che vi rende più inclini a pensare positivamente di fare altri lavori dopo la fine del progetto.

Il fatto che ora non siate inclini a farlo è un artefatto di “lavorare fino alla fine di un compito” che prosciuga le energie mentali; se organizzate il vostro lavoro come maratonete lunghe allora non c'è da stupirsi che alla fine di un compito vi sentiate come un maratoneta al traguardo.

0
0
0
2017-04-22 08:03:48 +0000

Il mio lavoro ha diversi tipi di lavoro. Lavoro che deve essere fatto oggi. Lavoro che deve essere fatto questa settimana. Il lavoro che deve essere svolto entro il prossimo semestre.

Il lavoro che deve essere svolto nel prossimo semestre consiste per lo più in piccoli compiti umili con poco “lavoro di riflessione”. Queste sono le cose che faccio nel tempo libero tra i compiti più grandi. Sono dei simpatici riempitivi per far rilassare il cervello alla fine della giornata lavorativa.

0
0
0
2017-04-22 15:22:12 +0000

Pensaci bene. A meno che non siate davvero alla fine di un pacchetto di lavoro e “vi rimanga solo una cosa da fare”, passate a un altro compito che vi porterà fino alla fine della giornata prima di arrivare alla situazione dei “soli 30 minuti rimasti”.

In realtà, non capisco perché “30 minuti non sono abbastanza per me per codificare qualcosa” - se non si (o non si può) rompere il vostro lavoro in pezzi più piccoli di quello, non sembra un modo molto efficiente per fare progressi. Infatti se si utilizzasse una tecnica di gestione del tempo come Pomodoro si spezzerebbe tutto il proprio lavoro in pezzi da 30 minuti.