Uno dei più grandi errori che puoi fare è ottimizzare il tuo codice troppo presto ... Prova ad implementare una funzione alla volta. Adotta il Test Driven Development per sviluppare una serie di test attorno a questa funzione. I test dovrebbero passare anche durante il refactoring e continuare a costruire nuove funzionalità. Lo farei qualunque cosa.
In termini di tempi di attesa più lunghi, potresti voler capire dove pensi di passare troppo tempo. Rompi il progetto in pochi pezzi piccoli su cui puoi lavorare e completare in un periodo di tempo in cui puoi dedicarti totalmente al progetto (ovvero, dedicare 2 ore e pic quello che pensi siano 2 ore di materiale che puoi completare )
Alla fine delle 2 ore, esamina (mentalmente) ciò che hai completato e ciò che è stato preso più o meno tempo di quanto pensavi. Controlla dove si trova il progetto e valuta il resto del lavoro e verifica se è necessario modificare le scelte per la progettazione o l'implementazione.
Quando completi il progetto, chiediti cosa potresti fare, in particolare, per migliorare la volta successiva. Pensa al tempo speso nella ricerca / progettazione del progetto rispetto alla codifica, al ri-factoring e agli inseguitori. Se ti trovi "fuori equilibrio" in uno di questi, decidi cosa potresti provare in modo diverso nel prossimo progetto.
Infine - parla con gli altri tenendo la classe con te e vedi come si stanno avvicinando ai progetti. Imparare dai tuoi colleghi paga quasi sempre!
buona fortuna e buon divertimento a scuola!