Attualmente sto imparando lo sviluppo iOS a New York City a "Turn to Tech". Ho avuto un'esperienza eccellente con questo programma e lo consiglio vivamente. Il motivo per cui l'ho scelto rispetto agli altri che ho preso in considerazione (e quello che ancora mi piace particolarmente) è che ha un'atmosfera davvero positiva e collaborativa.
Il curriculum è progettato in modo che si impara mentre si lavora attraverso una serie di incarichi/progetti sempre più impegnativi. Per esempio, un progetto iniziale potrebbe essere quello di creare semplicemente la tua classe usando Objective-C o Java, mentre un progetto più avanzato che riceverai dopo una settimana o due potrebbe chiederti di costruire un'app che abbia le caratteristiche X, Y e Z. Non appena finisci un incarico, passi al successivo (lavorando al tuo ritmo). Ogni progetto introduce nuovi concetti che si basano in modo incrementale su ciò che hai già imparato. Da quello che posso dire, stanno costantemente modificando il curriculum per riflettere le ultime tendenze/esigenze del mercato del lavoro in modo che quando hai finito il programma sei altamente preparato per i tuoi colloqui di lavoro e hai le competenze che i datori di lavoro si aspettano.
In ogni caso, mentre ti fai strada attraverso i progetti assegnati, gli istruttori e gli studenti più avanzati che sono più avanti nel programma, tutti ti aiutano a capire le cose. Hai anche la possibilità di collaborare e parlare delle cose con altri studenti del tuo livello che stanno lavorando sugli stessi compiti. Cambiamo i posti in laboratorio abbastanza regolarmente, in modo che tutti si conoscano.
Penso che questo approccio abbia diversi vantaggi. In primo luogo, penso che sia molto meglio di un programma basato su lezioni perché si impara completamente attraverso l'interazione 1-1 con gli istruttori e gli altri sviluppatori intorno a te. Non è necessario sedersi attraverso ampie spiegazioni di argomenti che già si capiscono, e, d'altra parte, se non si capisce qualcosa, si può semplicemente prendere tutto il tempo necessario per capire le cose e chiedere tutto l'aiuto di cui si ha bisogno. Non dovete mai sentirvi come se foste "indietro" rispetto a dove dovreste essere o come se foste trattenuti inutilmente.
In secondo luogo, hai costantemente la possibilità di testare la tua comprensione dei concetti spiegando le cose ai tuoi compagni.
In terzo luogo, puoi avere tanto o poco aiuto quanto ne hai bisogno. Quando sono entrato nel programma, non sapevo praticamente nulla di programmazione e ho fatto un sacco di domande. Gli istruttori si sono seduti e hanno lavorato con me individualmente fino a quando non ho capito le cose e mi hanno guidato man mano che ho sviluppato una maggiore comprensione dei concetti. Man mano che sono passato a progetti più complessi e ho iniziato a costruire applicazioni, ho consapevolmente cercato di essere più indipendente nel mio approccio, chiedendo sempre meno aiuto e leggendo la documentazione Apple e i riferimenti di classe per cercare di capire le cose da solo prima di chiedere. Questo è incoraggiato, poiché ti aiuta a sviluppare le capacità di ricerca e di risoluzione dei problemi di cui hai bisogno nel mondo reale quando gli istruttori non sono lì per aiutarti. Allo stesso tempo, potete ancora chiedere aiuto quando non capite qualcosa o siete bloccati e non riuscite a capire come fare il debug del vostro codice, come fanno tutti quelli che stanno ancora imparando.
In definitiva, però, non posso sottolineare abbastanza l'atmosfera positiva. È davvero una comunità molto unita dove tutti si incoraggiano e si aiutano a vicenda. Gli ex allievi del programma che sono inseriti in aziende in giro per la città passano ogni giorno a parlare con noi, e questo è fantastico perché sono in grado di dirci dove sono i lavori più nuovi e cosa dovremmo fare per prepararci ai colloqui. È anche fantastico per il networking. Non sono sicuro che molti altri programmi in città abbiano lo stesso tipo di dinamica.