He asistido a los dos programas intensivos de iOS Dev de la NYU, y ahora estoy a punto de terminar el programa de iOS de la Flatiron School mañana, así que creo que quizás pueda opinar un poco sobre esto.
NYU (empezó el 02/2014)
Se reunió quincenalmente, 3 horas por noche. Pase casi todo el tiempo en «conferencia» que era algún tipo de discusión de la teoría o la codificación «en vivo». No hay trabajo previo, ni deberes entre clases. 1-2 «proyectos» por clase (su pista ios tiene 4 cursos para ir a través antes de recibir su certificado).
El instructor era lamentablemente no calificado para enseñar la clase, haciendo numerosos, errores fundamentales a partir de la primera clase. El instructor desalentó la desviación del material del curso en todo momento, y rara vez fue útil en la solución de problemas. Las sesiones de codificación «en vivo» consistían en que el instructor leía el código desde su portátil y luego lo escribía en el iMac de la clase que estaba conectado a un proyector. Incluso entonces, el instructor cometía numerosos errores y parecía confundido por los resultados de los programas que escribían. Una de las clases fue copiada casi por completo de otro sitio web popular, y realmente bueno, http://raywenderlich.com. (concretamente, era su tutorial de Dropbox).
Hubo al menos un 60% de abandono en el curso, a pesar de que se anunciaba como apto para no programadores. Los alumnos estaban completamente perdidos después de cada sesión y los que teníamos algo de experiencia empezamos a hacer sesiones de tutoría los fines de semana vía Hangouts o Join.me para ayudar a los demás a ponerse al día.
Aproximadamente a la mitad del programa (más o menos cuando el instructor presentó el tutorial online que yo había hecho antes, e intentó hacerlo pasar como propio), me di cuenta de que no tenía sentido que me enseñaran tutoriales web que podía leer por mi cuenta. Durante una de las sesiones, me enteré de la existencia de la escuela Flatiron y me presenté inmediatamente.
Flatiron (9/29 – 12/19, iOS-003)
En primer lugar, hubo un proceso de entrevista de tres rondas para mí, incluyendo un desafío de codificación que tuve que presentar antes de ser considerado. Una vez que fui aceptado, hubo 40-80 horas de trabajo previo que se asignó, cubriendo los fundamentos de la línea de comandos, Git, OOP, y Objective C. El trabajo previo estaba bien organizado y proporcionó más recursos de los que tuve tiempo de comprobar. También incluye una membresía a Code School (que utilicé para recoger también Javascript y Ruby mientras miraba los temas de iOS – bono).
El curso en sí tiene una duración de (al menos) 40 horas semanales. Aunque era raro que alguien se fuera a las 6 de la tarde, ya que había mucho más trabajo que horas en el día. Afortunadamente, el campus del FIS está abierto las 24 horas del día y puedes entrar y salir cuando quieras, lo que básicamente significaba que algunos de los estudiantes estaban allí todo el tiempo durante el curso. Y hay espacio más que suficiente para el personal, el profesorado, el curso de iOS (~20) el curso de Ruby (~40) más el programa de secundaria que acogen, además de los frecuentes invitados a Meetups que organizan (todos los meetups son gratuitos para los estudiantes de Flatiron y son realmente geniales para asistir).
Hay dos instructores principales, uno para Ruby (Avi) y otro para iOS (Joe Burgess, ver más abajo). Ambos tienen muchos años de experiencia en el campo y son apasionados por cambiar el paradigma de la enseñanza de CS. Son increíblemente entusiastas y enormes nerds de la programación. Y, viniendo de la terrible experiencia de la Universidad de Nueva York, me sentí 100% a gusto cuando empezaron a hablar de sus barbas favoritas de Linux en la primera conferencia de grupo – nadie hace eso a menos que estén realmente en el tema.
Además de los instructores, hay múltiples TA’s que ayudan y responden a las preguntas según sea necesario. Creo que la mayoría de ellos, si no todos, fueron estudiantes de sesiones anteriores de FIS bootcamp – todos increíblemente brillantes y curiosos sobre su nueva disciplina elegida.
No puedo hablar del curso de Ruby, pero el curso de iOS es increíblemente riguroso durante las primeras 6-8 semanas. El día se divide en una conferencia por la mañana, seguida de laboratorios, almuerzo, conferencia por la tarde (para recapitular el laboratorio de la mañana e introducir 1-2 laboratorios más por la noche) y por último el tiempo de laboratorio de la tarde. 2 ó 3 laboratorios por día no parece mucho, pero hay que tener en cuenta que normalmente se tarda más de un día en completarlos. Y es por eso que rara vez verás a alguien salir a las 6 de la tarde, el cierre oficial de la jornada escolar. Además, es frecuente ver a los estudiantes venir los sábados, domingos y cualquier otro día festivo para tratar de terminar y también comenzar sus propios proyectos secundarios.
Las clases en sí se presentan de una manera muy fácil de entender, y sales de la clase en sí pensando «oh sí, lo tengo — esto es fácil». Y luego te golpeas la cabeza contra un laboratorio durante 18 horas antes de completar su sección de avance y pasar todos los exámenes. Pero eso sólo demuestra lo bien que Joe puede explicar y llevarte a través de un tema… lo hace tan fácil que te hace pensar que es un concepto simple. Pero luego lo intentas, y empiezas a entender la complejidad que implica la elegancia de la codificación. Las conferencias también son un verdadero ejemplo de codificación en vivo con una pizca de aprendizaje activo. Joe te llevará (de alguna manera), desde Archivo>Nuevo>Proyecto hasta un gestor de APIs de Github completamente funcional en 20 minutos.
Los materiales, conferencias y laboratorios, son creados por los instructores y se mantienen en una cuenta de github de FIS que se comparte con todos los estudiantes. Incluso tienen un sistema interno para seguir el progreso del laboratorio de los estudiantes basado en forks, pruebas exitosas y pull requests. Aunque todavía estaba en fase beta durante mi estancia aquí, era increíblemente impresionante lo que habían conseguido con él (p.d. He trabajado en el sector tecnológico durante 7 años. No me impresiona fácilmente el software). Sin embargo, me da un poco de envidia que no vaya a formar parte de las futuras implementaciones de este producto.
En cuanto a los proyectos paralelos, los instructores esperan y animan a todo el mundo a empezar sus propios proyectos tan pronto como se sientan cómodos (pero básicamente se refuerza desde la segunda semana). Si de alguna manera tienes algo de tiempo para empezar un proyecto paralelo, los instructores te guiarán en tu proyecto y te ayudarán cuando sea necesario. Pero no te llevarán de la mano en absoluto, sino que te harán sugerencias y luego serás tú quien tenga que hacer el trabajo. Ya sea que esto signifique pedir apoyo a otros compañeros de clase a través de la programación en pareja, o buscar en stackoverflow la respuesta correcta. ¡
Como testimonio de estos proyectos, se espera que cada estudiante dé una charla durante su semestre en un encuentro de Flatiron Presents! Los temas de elección se dejan a la elección de los estudiantes, pero los instructores están allí para proporcionar orientación y retroalimentación sobre los temas. No sólo esto, sino que el curso de iOS termina con un proyecto final de 4 semanas en el que se empareja con un negocio local y se desarrolla una aplicación para ellos. Es increíble, crees que no estás preparado para un escenario así (es decir, acabas de empezar a codificar en el programa hace 2 meses…), pero es sólo que no has tenido tiempo de reflexionar sobre los últimos 2 meses de trabajo que hiciste. En realidad, tu conjunto de habilidades es más que capaz de desarrollar una aplicación realmente grande en ese momento.
Asombrosamente, también hay un componente humano en todo esto… las primeras semanas están llenas de actividad no relacionada con la codificación. Tienes la oportunidad de conocer a tus compañeros a través de sesiones de improvisación, talleres de baile, talleres de abrir cerraduras, atar nudos.. No sólo eso, sino que varias veces a la semana, tendrán oradores invitados (cualquiera de los CEOs de startups, expertos en entrevistas tecnológicas, desarrolladores senior, etc.) que vendrán a hablar a la clase sobre la vida tecnológica y sus experiencias. Muchos de los ponentes también han empleado a estudiantes del FIS.
Y al principio no me gustaban mucho las actividades y las charlas (¡sólo quiero codificar, maldita sea!), pero estoy increíblemente contento de haberlo hecho. Tienes la oportunidad de mezclarte y conocer a todo el mundo en el programa. Sí, la mayoría de la gente es pésima en el taller de baile -especialmente yo-, pero después de sentirse estúpido por no poder bailar, es mucho más fácil sentirse menos avergonzado por preguntar a tu compañero sobre algún código, o compadecerse del último laboratorio, o de las largas horas. Escuchar a un director general de una empresa tecnológica de gran éxito decir que no tenía ni idea de lo que estaba haciendo al principio, es un suave recordatorio del camino que estás recorriendo y hacia dónde te diriges.
Con todo lo que está pasando, y pasando todas las horas de vigilia con las mismas personas durante 3 meses seguidos, desarrollas algunos vínculos bastante fuertes. He encontrado algunas de las personas más inteligentes y apasionadas en mi tiempo en el FIS. He salido con ellos, he hecho fiestas con ellos, he ido a maratones con ellos, he luchado con ellos y finalmente me he graduado con ellos. Era como una experiencia de instituto en un pueblo pequeño. Es increíblemente triste que nos separemos, pero me alegro de haberlos conocido a todos y ya sé que seguiré en contacto con muchos de ellos. Incluso conocí a mi doble mientras estaba en el FIS (ver: Flatiron Twinsies)
No hubo abandonos en mi clase, y creo que dijeron que sólo había habido dos o más, y que se debieron a algunas circunstancias imprevistas, no a que los estudiantes no pudieran completar el trabajo (de hecho, creo que se les devolvió el dinero y se les invitó a venir otro semestre).
Y ahora, estoy en la última etapa de mi viaje en el FIS. Estoy siendo apoyado por un equipo de inserción laboral increíblemente activo y talentoso. Están constantemente organizando eventos para presentar a los estudiantes a los empleados, dando charlas sobre cómo enviar el correo electrónico perfecto, organizando simulacros de entrevistas técnicas para que puedas bombardear en un entorno en el que no importa (y aprender de ello), siempre haciendo un seguimiento para asegurarse de que te has puesto en contacto con tus contactos, actualizando tu currículum y tus perfiles… etc. Están tan involucrados en que consigas un trabajo, que es increíble.
Tl;dr:
Nunca, nunca te arrepentirás de haber ido a Flatiron. Es excepcional en todos los aspectos. Si te tomas completamente en serio lo de cambiar de carrera y convertirte en un desarrollador de iOS, entonces solicita absolutamente el FIS. Quiero sacudirte por la cara ahora mismo para que te des cuenta de lo serio que soy.
El «intensivo» de la NYU es una farsa. De ninguna manera serás un desarrollador de iOS al final del mismo y será una gran pérdida de tu tiempo. Francamente, estoy avergonzado por lo que mi alma mater considera un programa «intensivo» de postgrado en iOS…
Acepto que cualquiera que tenga más preguntas se ponga en contacto conmigo, o compruebe algunas de las cosas en las que he estado trabajando:
https://github.com/spacedrabbit
http://catthoughts.ghost.io/
http://stackoverflow.com/users/3833368/louis-tur
Louis Tur
FIS iOS – 003