Come per questo domanda: ho deciso di implementare la specifica BitTorrent per creare il mio client / tracker.
Ora, stavo esaminando le specifiche, avevo circa il 70% delle implementazioni di BEncoding quando ho trovato un collegamento a un'implementazione di BEncoding in C # scritta da qualcun altro.
Normalmente, se dovessi lavorare sul codice di produzione, lo userei come riferimento per controllare il mio lavoro contro, e una linea di base per scrivere alcuni test per eseguire il mio codice contro, ma mi sono trovato a pensare "Sono facendo questo, è un progetto divertente senza scadenze, dovrei davvero realizzarlo da solo - potrei imparare molto "ma una voce nella mia testa diceva" Perché preoccuparsi di re-inventare la ruota? Prendi il codice, fallo così che si tratta di convenzioni di stile / denominazione e il gioco è fatto. "
Quindi sono un po 'in conflitto. Ho finito per fare il secondo, e alcune parti di esso ho trovato migliore di quello che avevo scritto, ma mi sento quasi come se fossi stato "truffato".
Che cosa ne pensi? Mi sta prendendo in giro? Perfettamente normale? Un'occasione persa per imparare da sola? Una buona opportunità per aver imparato dall'esempio di qualcun altro?