DS4A
DS4A es un programa ofertado por el MinTIC de la mano con Correlation One para los colombianos. Tiene como objetivo principal, en mi opinión, el capacitar a personas en el área de la ciencia de datos, analítica o desarrollo de software dado al impacto que estas habilidades están teniendo alrededor del mundo en los distintos mercados y centros de investigación.
En este post, me gustaría compartir mi experiencia al cursar y aprobar este programa.
Un poco de contexto…
La tecnología y los datos ha sido algo que me ha apasionado desde muy joven, el aprender a programar me abrió muchas puertas y la ciencia de datos ha sido ese horizonte al que me he encaminado desde aquel entonces. La necesidad de seguir aprendiendo me ha llevado a hacer múltiples cursos, ver videos, leer artículos, etc. Hasta que un día un familiar me compartió la convocatoria para hacer parte de DS4A, tengo que ser honesto, me inscribí sin saber exactamente con que me enfrentaría.
Poco después de mi inscripción comencé a leer sobre el programa ya que esta oferta era la sexta versión (sexto cohorte) y tengo que ser sincero, la moral se me bajó un poco, pues en anteriores entregas solo contaban con entre 200 y 600 cupos entre más de 6.000 aplicantes.
El proceso inicial…
El proceso es el siguiente, uno se inscribe llenando un formulario donde expones el perfil que tienes; estudiante, profesional, si sabes hablar ingles (importante ya que el programa principalmente se desarrolla en este idioma), si has programado antes, que experiencia tienes entre otras variables, con esto, es cómo te evalúan y deciden si quedas entre una lista de candidatos habilitados para presentar una prueba técnica.
La prueba técnica consta de tres tipos de preguntas, la primera y más importante, ya que cuenta con la mayor cantidad de preguntas relacionadas, es sobre estadística, probabilidades, conceptos como la varianza, operaciones entre probabilidades, combinaciones, etc. Notas que el fuerte de la prueba es ese por el énfasis que hacen a la hora de preguntar, los otros dos tipos de preguntas, son las relacionadas a la programación, es decir, que resultado podrías tener después de ejecutar X codigo o como con python (que por cierto, es el lenguaje principal sobre el que se desarrolla el curso) resolvemos Y problema y SQL, aca preguntan resultados de algún query o que selecciones entre varias opciones el query que serviría en Z caso. No recuerdo muy bien cuantas preguntas eran, diría que alrededor de unas 10 o 15 y te dan cerca de una hora agendada previamente para resolver el test.
En este punto me gustaría compartir una noción personal respecto a como la prueba evalúa tus conocimientos en programación, ya que de entrada, lo considero bastante laxo y no le dan el peso que en verdad tiene a la hora de desarrollar el programa. Debes saber programar en python o al menos algún otro lenguaje porque teniendo ese conocimiento, el aprender python no será tan complicado y digo “debes” porque el programa es sobre ciencia de datos, técnicas, conceptos, pasos que se deben tener en cuenta pero no es sobre programar. Por supuesto, si fuiste seleccionado y estás a pocos minutos de iniciar tu primera clase y estás leyendo esto por primera vez, no te preocupes, no estás solo, creeme que estas en una comunidad que te apoyará en tu proceso de aprendizaje en todas las áreas que necesites. Sin embargo, el no tener conocimientos sobre algún lenguaje de programación es una barrera que tenemos todos nosotros la primera vez y quienes la enfrentan durante el programa considero resultó dos veces más duro y los encargados del programa se dieron cuenta de esto y habilitaron un módulo donde te enseñan a programar en python con lo básico que debes saber, esto no significó que el programa se ampliará, tu debías seguir tus clases normales y aprender a programar al mismo tiempo.
Esto último no es un punto negativo, pero en lo personal, el programa se hace más disfrutable cuando tienes el mínimo de herramientas necesarias, te centras en aprender conceptos nuevos o en afianzar aquellos conocimientos que ya tenías sobre estadística, técnicas de manejo de datos, etc.
El contenido…
El contenido del programa es brutal. Nada que decir, en lo personal me encantó. Entre los temas que ofrecen están: análisis exploratorio de datos, plataformas cloud, web scraping, data wrangling, feature engineering, SQL, dash (librería para python de plotly), procesamiento de texto, computación en la nube, regresión lineal, modelos clásicos de machine learning, deep learning, aprendizaje reforzado, redes neuronales convolucionales, sistemas de recomendación, entre muchos otros.
El objetivo de estos temas es acercarte a conceptos que has tratado de manera muy superflua o que directamente no conocías, esto último lo quería compartir dado a que para algunas personas que ya manejan ciertas técnicas o conceptos relacionados a la estadística, les puede llegar a parecer un poco básico. En lo personal, considero que el material desarrollado es suficiente para que tu comiences a participar en proyectos de ciencia de datos y de ahí aprender de una forma mucho más avanzada, esto no quiere decir que sea un programa introductorio, si bien el programa contempla un desarrollo casi completo de los temas planteados, si es necesario un conocimiento de base, al menos saber que existen dichos temas.
El desarrollo…
Respecto a las clases, en este cohorte 6, el horario era el siguiente: entre semana martes, miércoles y jueves de 7 pm a 10 pm y los sábados de 8 am a 6 pm (con un poco más de una hora para almorzar al mediodía), el horario es excelente para aquellas personas que trabajan y digo esto porque tengo entendido que antes no era así, por lo que es un punto a resaltar por mi parte, ahora, las clases entre semana eran, la primera hora se daba un caso de forma analitica, es decir, se explicaban los conceptos que se estaban usando, se exploraba la teoría y después de un pequeño, receso se retoma el tema pero ahora desde el código, entonces, en la primera parte de las sesiones te daban un qué, un por qué, y en la segunda parte se exploraba un cómo. Los sábados, en la mañana se daban casos como los que se reciben durante la semana en espacios de 2 horas y en las tardes, usualmente, te dan un espacio para reunirte con tu equipo de trabajo para trabajar en el proyecto final y después de eso, una clase sobre temas extras, que podían ser para afianzar temas vistos en la semana o para exponer herramientas que nos serían útiles en el mundo de la ciencia de datos.
Como lo mencione anteriormente nos asignan a equipos de trabajo, esta asignación se hace con base en los conocimientos de cada individuo esto con el fin de que cada equipo cuente con las habilidades necesarias para realizar un trabajo final, este trabajo final también te es asignado pues DS4A no solo convoca a personas para ser formadas sino que también llama a empresas para que expongan sus necesidades y los requerimientos basados en analitica que ellos creen necesarios para poder suplir esas necesidades en sus empresas, esto me parece bastante acertado por parte del programa porque expone a sus participantes a problemas de la vida real, con datos de la vida real y todos los aprendizajes que puede esto traer consigo.
Con este equipo no solo trabajaras en un proyecto final sino que también te podrás apoyar para los demás entregables que te exige el programa, los review modules que son talleres cortos que te hacen practicar los temas vistos durante la semana y los extended case (inserte música de terror en esta parte). Los extended case son talleres más largos que directamente ponen a prueba los temas que se han visto tienen un nivel de dificultad alto pero una vez realizados, habrá un poco más de científico de datos en ti.
Muy bonito y todo pero…
viendo como se desarrolla más o menos el programa y el gran contenido que maneja te podrás imaginar como es la gestión del tiempo, y no se si ponerlo como un punto a mejorar por parte del programa o directamente son conscientes y así lo quieran manejar y es que si tu no entiendes del todo un tema o faltas un día por X o Y razón, el programa no te da espera, lo cual tiene todo el sentido, sin embargo, tampoco te da el espacio para ponerte al corriente o de repasar si quedaste con unos vacíos.
En cada sesión se expone un tema nuevo y los sábados podrían llegar a ser hasta tres, si te atrasas en un tema, te puede llegar a ser un poco complicado ponerte al corriente porque al dia siguiente hay otra sesión, es decir un tema nuevo, no solo eso, tienes review modules por hacer, tienes que trabajar en el extended, tienes que trabajar en el proyecto final, tienes que dormir, otros tienen que trabajar, otros tienen compromisos, a lo que voy, es que puedes llegar a un punto en que pierdes el hilo narrativo del tema y te sientes completamente perdido, eso me paso casi en las últimas dos semanas de clases del programa, con el proyecto final, con los extended a parte de mi vida laboral y personal no podía seguir el ritmo a todo ¿qué decidí hacer?, enfocarme en el proyecto final y los entregables, guardar todas las grabaciones de las clases (porque todas las clases son grabadas para que se puedan ver posteriormente como repaso) y todo el material que nos daban como notebooks, bases de datos para posteriormente, una vez finalizado el programa, estudiarlo de forma autónoma.
No quiero decir que los TAs (los asistentes de los profesores) o los demás compañeros no te ayuden, todo lo contrario, los TAs nos motivaban y ayudaban en lo posible cada vez que podían y era casi seguro que si preguntabas en el foro o directamente en el slack alguien muy amablemente te iba a ayudar, sino que este tema es más de cómo gestiones tu el tiempo y de a qué ritmo estés acostumbrado a trabajar.
Muchas herramientas…
Algo sorprendente y que debo aplaudir a correlation one, son las herramientas y los materiales que nos brindaron. La infraestructura detrás de este cohorte fue colosal, pues brindaron a cada uno de los participantes de una instancia virtual en la cual podías contar con todos los recursos necesarios para seguir las clases y realizar los entregables, esto indirectamente fortalecía otras habilidades que no era el core del programa, como el tema de redes, el manejo de instancias en la nube, manejo de la terminal, etc. Esto no existía en cohortes anteriores al menos no a esta escala, pues estamos hablando de más de 1800 participantes y el mensaje que dieron para mi fue claro, cualquier persona sin importar los recursos puede hacer parte del programa DS4A.
La comunidad…
El desarrollo del programa, el asignarnos a grupos de trabajo, el abrir canales en Slack, todo esto te hace interactuar con distintas personas de distintas partes de colombia que comparten el amor por los datos, los modelos predictivos y este tipo de temas. Si alguien exponía alguna duda o algún problema alguien ayudaba explicandote o entregándote el como solucionarlo, si no era otro participante del programa, directamente era un TA, es que cuentas con el apoyo de cientos de personas y que lo harán de la mejor manera posible.
Al final…
Debo resumir mi experiencia en DS4A como una de las más positivas en mi camino para ser científico de datos, desde el haber sido seleccionado hasta la entrega del proyecto final, no es una oportunidad que se encuentre fácilmente y que brinde tanto el conocimiento como la experiencia. Definitivamente es un reto donde tendrás la oportunidad de ponerte aprueba con problemas de la vida real y ser instruido con personas que se enfrentan a dichos problemas a diario, rodearte de personas que cumples tu misma pasión por los datos y hasta grupos de trabajo con los que podrás para tus futuros proyectos como científico de datos.