Va bene se non riesco a risolvere un problema quando si è seduti davanti a un computer? [chiuso]

11

Sono un programmatore hobbista e un principiante. Il più delle volte, non riesco a risolvere il problema mentre sono seduto davanti al computer. Ad esempio, stavo cercando di scoprire se un numero è un potere di un altro. Non riuscivo a capire la soluzione fino a quando non ho afferrato una penna e un foglio poi analizzato il problema. In circa 3 minuti ho risolto e scritto lo script in Python.

A volte riesco a risolvere il problema mentre sono seduto di fronte a un computer, ma con qualche difficoltà. Va bene?

    
posta Mahmud Muhammad Naguib 11.03.2016 - 23:18
fonte

3 risposte

33

Tendo a risolvere i miei problemi più difficili:

  • Di fronte a una lavagna (a volte senza nemmeno disegnare nulla - solo pensare a come visualizzare un problema a volte può portare a una soluzione)
  • Pur spiegandoli ai colleghi
  • Guardare fuori dalla finestra
  • Mentre fai una passeggiata
  • Sotto la doccia
  • Sul water

Andare lontano dal monitor è spesso molto utile per concentrarsi sul problema stesso e non solo per digitare un'implementazione.

Il problem solving si verifica nella tua testa. Digitando il codice del programma è solo come si spiega la soluzione al computer.

    
risposta data 11.03.2016 - 23:32
fonte
6

Penso che questa sia una buona domanda. Da come la interpreto, quello che penso tu stia chiedendo è "Va bene che periodicamente devo allontanarmi dal computer?"

Non penso che ci sia un giorno in cui non devo alzarmi e chiedere a qualcun altro cosa pensano, o tirare fuori un pezzo di carta da grattare e scarabocchiare un'equazione per risolvere il problema . Inoltre, quando si inizia a programmare, non si potrebbe nemmeno iniziare a scrivere il codice fino a quando non si è creato un diagramma / architettura in anticipo.

Stavo seguendo un corso sulle strutture dei dati quando ero al college e stavo avendo problemi a progettare un algoritmo di ordinamento. Quando ho chiesto aiuto al mio professore, lui sapeva che non avevo mai pensato al problema in anticipo. La prima cosa che mi disse fu che non ero ancora pronto per iniziare a scrivere il codice. Quindi estrasse un foglio di carta e ne disegnò un paio di quadrati, poi inserì i numeri dall'array. Successivamente ha disegnato un paio di foto in più in cui spostava i quadrati e mi mostrava visivamente come avrebbe funzionato l'algoritmo di ordinamento.

Alcune cose che puoi fare per svuotare la mente e risolvere il problema:

  • Fai una pausa
  • Parla con un collega
  • Lavagna bianca il problema / concetto
  • Dormici sopra!

Non stupirti se ti svegli nel bel mezzo della notte con la soluzione.

    
risposta data 11.03.2016 - 23:22
fonte
1

Penso che sicuramente aiuterà a diventare un programmatore / sviluppatore professionale efficiente, se puoi. Tuttavia, pensando a un problema durante la traduzione della soluzione nella logica del programma IMHO ha bisogno di formazione, quindi non vedo alcun problema se serializzi queste attività - devi solo essere in grado di completare entrambi con successo. Pensare a una soluzione dall'inizio alla fine prima di iniziare a scrivere sul codice sicuramente ha i suoi meriti, ma per questo devi essere un personaggio piuttosto paziente.

    
risposta data 12.03.2016 - 01:20
fonte

Leggi altre domande sui tag