Dimentica cose che ho fatto prima e come risolvi questo problema

19

Non sono sicuro se sono solo io o se è comune nel nostro campo.

L'anno scorso è stato un po 'intenso per me. Ho imparato alcune tecnologie diverse per svolgere alcune attività e talvolta ho dovuto concentrarmi completamente su quella nuova tecnologia che sto imparando.

Ciò che ho notato però quando torno a utilizzare tutto insieme nel progetto completo è che ho dimenticato come fare cose che sapevo già come fare prima di iniziare a concentrarmi sull'apprendimento di altre nuove tecnologie. A volte trovo che dimentico anche cose semplici come la sintassi per selezionare un div in jquery, che devo tornare ai vecchi file per avere una rapida occhiata.

A volte potrei scrivere qualcosa che riconosco di aver fatto in un altro progetto, ma non riesco a ricordare quale progetto fosse, quindi devo passare attraverso diversi progetti e cercare il codice per cercare di ricordare dove sono fatto quello.

Quali modi hai inventato per evitare di dimenticare le cose che hai fatto prima o per accedere facilmente al codice che hai scritto in passato?

    
posta Ermin 10.10.2010 - 09:23
fonte

8 risposte

7

Conservo un registro di lavoro. È solo un semplice file di testo. Ogni giorno faccio note su cose su cui sto lavorando: cosa ho fatto, che tipo di problemi ho incontrato, come li ho risolti, con chi ho parlato, di cosa abbiamo discusso, quali decisioni abbiamo preso, file / classi / pagine web rilevanti, ecc.

Quindi ogni volta che ho un problema e ho un sentimento di deja-vu su di esso, cerco solo nel mio registro di lavoro e nella maggior parte dei casi riesco a trovare rapidamente quello che sto cercando.

Il registro di lavoro rende anche più facile tenere traccia di come passi il tuo tempo, scrivi rapporti settimanali / mensili, prepara le valutazioni delle prestazioni.

    
risposta data 11.10.2010 - 12:19
fonte
6

Succede a me. Ad esempio, dal momento che non li uso realmente nel mio lavoro, sto costantemente riapprendendo Ruby / Javascript. Alla fine inizi a ricordare alcune cose, ma ho anche acquisito un numero enorme di segnalibri del browser con un sacco di tag da cui dipende molto. Per i frammenti di codice comunemente usati, ne ho una raccolta, ma devo ancora: 1. Ricordare che li ho, 2. Trova quello che pensavo potrebbe essere rilevante, e 3. Determina se ciò che ricordo era realmente applicabile o no. Sfortunatamente non mi sono preoccupato di trovare un sistema migliore.

    
risposta data 10.10.2010 - 09:56
fonte
5

No, non sei solo tu. Credo che questo sia comune in quasi tutto ciò che non usi per un lungo periodo di tempo. Pensa a tutte le cose che hai imparato a scuola o in uni che non ricordi più. Tendo a dimenticare le cose già 2 settimane dopo l'esame finale ...

L'unico modo per rimediare a questo, che io sappia, è usarlo. Spesso. È come spot pubblicitari in cui ricordi ogni singola riga e scena. Perché? Perché li vedi ogni giorno - un promemoria costante che fa sì che il tuo cervello riorganizzi le sue sinapsi (o qualsiasi cosa faccia) affinché tu te lo ricordi. Immagina se potessimo fare lo stesso per tutte le conoscenze che vorremmo ricordare - algoritmi, metodi, formule, sintassi, ecc. (Penso che sia il momento di protestare e fare in modo che le emittenti televisive mostrino questo tipo di cose utili durante le interruzioni di programma invece di quelle pubblicità volgari.) Ma fortunatamente, quasi tutto ciò che hai imparato una volta, puoi reimparare in un tempo più breve.

Se ti capita di sapere quando stai scrivendo una parte di codice che vorresti riconsiderare in futuro, copiala in un file separato e conserva una libreria di utili frammenti di codice. In questo modo non devi cercare tra interi progetti. Assicurati anche di organizzare questi frammenti dopo la lingua e il tipo (che cosa fa il codice? Perché lo hai salvato?) Per un facile accesso.

    
risposta data 10.10.2010 - 11:44
fonte
4

Posso assicurarti che sembra peggiorare man mano che si invecchia :-) Ma questo è perché più a lungo si sta sviluppando, maggiore è la conoscenza da dimenticare.

D'altra parte, ottieni più "intuizione". Riconosci i modelli, come risolvere determinati problemi e altre cose che hai appreso in progetti precedenti con linguaggi e ambienti diversi e puoi utilizzarli anche se le condizioni attuali sono diverse. Voglio dire, guardo costantemente al codice che ho scritto solo un anno fa e penso: " Oggi lo scriverei in modo diverso " e anche abbastanza spesso " Oggi so come risolvere questo meglio ".

Quindi, anche se potresti dimenticare un sacco di cose come il metodo ei nomi di classe per una determinata API, le tue abilità normalmente migliorano a un livello più alto.

    
risposta data 10.10.2010 - 15:40
fonte
3

Questo succede sempre a me. Ho appena fatto così tante cose in quella mia zucca che dimenticherò tante delle cose più semplici. Nomi, compleanni, incontri irritanti passano tutti come l'acqua nella sabbia. Ma qualsiasi cosa abbia a che fare con i computer, la programmazione, la matematica o qualcosa del genere, resta lì. Il modo migliore per memorizzare una lingua, una tecnologia o anche un progetto è scrivere un Cheat Sheet .

In genere ho un riferimento qucik per tutto ciò con cui lavoro, in modo da poter rapidamente ricordare a me stesso che cosa sta succedendo. Ho anche un quaderno, tengo tutti i miei appunti e i numeri delle pagine di riferimento sui cheat sheet.

    
risposta data 10.10.2010 - 16:39
fonte
3

Mi è successo in molti casi prima. Ecco perché scriviamo la documentazione nel nostro codice.

E a volte, hai solo bisogno di un riferimento su Internet per aiutarti. Va benissimo cercare aiuto.

    
risposta data 10.10.2010 - 09:55
fonte
2

Spesso dimentico le cose dopo averle utilizzate per un po '- sintassi, parole chiave, tecniche, ecc. Per aiutare, leggo questo libro di Dominic O'Brein (8 volte campione mondiale della memoria). Ci sono alcune tecniche e suggerimenti tratti da quel libro che uso per aiutarmi a ricordare le cose. Non è sempre facile applicarli alla programmazione, ma con un po 'di creatività, puoi iniziare a collegare le cose per aiutarti a ricordarle meglio. Non è perfetto, ma potrebbe aiutare nel tempo.

Inoltre, leggi il questo articolo. È una lettura interessante che mi ha dato alcune idee su come migliorare il mio richiamo per il mio lavoro di sviluppo.

Di fa lo strumento più utile per me sono state le mappe mentali. Li uso per tutti gli altri:

  • Documentazione dei casi di test.
  • Descrivere visivamente l'architettura di un progetto su cui sto lavorando.
  • Note e collegamenti a siti Web su a tecnologia a cui sono interessato.

Le mappe mentali possono essere utilizzate per molti scenari diversi. Certamente ha fatto la differenza per me quando ho imparato cose nuove.

Saluti. Giac.

    
risposta data 11.10.2010 - 12:55
fonte
2

Come per il codice (dai brevi frammenti alle intere classi) che hai scritto e che pensi che avrai probabilmente bisogno di riutilizzare in futuro: mantieni un blog di programmazione pubblica in cui scrivi e spiega tutti questi. Questo ha una serie di vantaggi:

  • La più ovvia, avrai un repository di codice da controllare in futuro.
  • Avrai voglia di scrivere post di blog davvero utili, in modo che altre persone che potrebbero leggerli li capiranno davvero. La maggior parte delle volte questo ti costringerà a refactoring il tuo codice al volo, che è una buona cosa.
  • Occasionalmente i lettori di blog possono puntare a bug o suggerire miglioramenti utili al tuo codice, che è MOLTO buono.

Puoi scrivere un blog normale o utilizzare siti orientati alla programmazione come Refactor My Code o Il progetto del codice .

    
risposta data 11.11.2011 - 08:43
fonte

Leggi altre domande sui tag