Un po 'di storia: sono uno dei due programmatori per il nostro dipartimento di 10 persone (il resto sono artisti e management). Noi due facciamo tutto il codice necessario per far fluire bene le cose e sviluppare tutti i progetti che emergono. Ho programmato per circa 4 anni, dove questo è il suo primo "vero" lavoro (come lo dice lui). In genere stiamo lavorando a diversi progetti in qualsiasi momento.
Un paio di mesi fa ho sviluppato un insieme di classi (assolutamente non perfetto) che dovevano essere utilizzate per un progetto successivo. Gran parte di quel progetto gli è stato delegato (per motivi di fatturazione) per progettare e programmare un'interfaccia GUI. Da quando era nuovo, ho aiutato un po 'con la progettazione e ho detto di chiedere aiuto se ne avesse avuto bisogno con il resto. Ha terminato l'interfaccia poche settimane fa, che ha dimostrato che ha funzionato, anche se un po 'lento.
È iniziata la parte successiva di quel progetto a cui sto lavorando. Ho aperto l'interfaccia per iniziare con i passaggi successivi e ho subito riscontrato problemi (un po 'lento era un po' di eufemismo, errori su azioni comuni, ecc.). Ho esaminato il codice per alcuni problemi e sto trovando le O(n^n)
chiamate che dovrebbero essere O(n)
, digitare ipotesi senza controllo degli errori (è in Python), riferimenti alla GUI aggiunta al codice originale e così via.
Ora, vorrei sicuramente insegnargli cosa non andava e come risolverlo, ma è già passato al suo prossimo progetto, e questo è successo poche settimane fa. Ho paura che dica "Torna indietro e fallo bene!" (con l'aiuto ovviamente) è troppo duro e nel frattempo abbiamo ancora altri progetti da realizzare. Dovrei semplicemente correggere il codice da solo per ora e provare a catturare le cose in futuro?
O(n^n)
meno che non ci sia altro modo. Se lo fanno, probabilmente hanno ottenuto una C in algoritmi o non l'hanno presa o avevano un insegnante schifoso. Sfruttare una sorta di strumento per aiutare a trovare i problemi comuni sarebbe bello. Forse come compito successivo questo ragazzo può scrivere alcuni test delle prestazioni?