È stata la mia esperienza che "saltellare" o, più chiaramente, "Saltare a caso" è un sintomo di un problema più urgente, uno degli obiettivi mal dichiarati.
Se hai un'idea molto chiara, in forma scritta, di post-it sul lato del tuo monitor o di specifiche formali allegate al tuo tracker di scelta, allora sai quasi sempre su cosa lavorare su successivo . Se lavori sempre su una di quelle prossime, avrai buone possibilità di riuscire con il progetto.
Se, d'altra parte, la tua idea di quale sia la prossima cosa più importante è confusa, è molto più difficile trovare effettivamente una cosa su cui lavorare che risolva il problema che il tuo progetto intende risolvere, o più specificamente, è molto meno incisivo quando decidi che questo particolare cambiamento è completo e risolve un problema particolare.
Se hai un obiettivo come "rendere l'interfaccia utente più facile da usare", beh, è quasi impossibile dire quale dovrebbe essere la prossima correzione, o quando hai finito di "aggiustare l'interfaccia utente" e puoi passare a qualcosa altro. Se, d'altra parte, hai un obiettivo come "combinare questi elenchi a discesa in un campo di ricerca con completamento automatico" e "'foo' dovrebbe completarsi automaticamente a 'Fooly Brand Baring'", è assolutamente ovvio a quando hai risolto quel problema.
Non scrivere alcun codice finché non hai una chiara idea di quando smettere , e se non hai idee chiare, lavora per ottenere uno di quelli invece di iniziare un altro ramo per alcune funzioni generali.
Se hai una buona dose di lavoro (anche per progetti personali), allora "saltare in giro" è assolutamente soddisfacente, sicuro e utile.