Sinceramente, me cambió la vida.
Es lo que me llevó a la ciencia de datos e impulsó mi carrera de más de 5 años en este campo, donde trabajé como científico de datos e ingeniero de aprendizaje automático, desde grandes empresas tecnológicas hasta nuevas empresas de pequeña escala, obteniendo ofertas por valor de más de $ 100 mil.
Sin embargo, mirando hacia atrás, cometí muchos errores y desearía tener una hoja de ruta clara para pasar de un completo principiante a un experto.
En este artículo, quiero desglosar la hoja de ruta exacta que seguiría si quisiera volver a aprender Python rápidamente para la ciencia de datos.
¡Entremos en ello!
¿Vale la pena aprender Python?
¿Vale la pena aprender Python en la era de la IA?
Si bien la IA es muy poderosa y herramientas como Claude Code pueden literalmente hacer todo por usted, eso no significa que aprender a codificar sea inútil; en todo caso, se está volviendo más valioso.
Déjame decirte de primera mano que este “código de vibración” es, en el mejor de los casos, de nivel medio y tan propenso a errores que es ridículo.
¿Puede la IA generar un poema para ti? ¿Es tan bueno como los Sonetos de Shakespeare?
Probablemente no.
La misma analogía se aplica al código generado por IA. La gente ve una solución que funciona y asume que es perfecta.
De hecho, poder comprender y leer código correctamente se está convirtiendo en un superpoder hoy en día. Puede saber instantáneamente dónde está el problema y depurarlo, en lugar de perder el tiempo “incitando” a la IA a solucionarlo.
Finalmente, si quieres ser un científico de datos, debes poder aprobar entrevistas de codificación. Y desafortunadamente, no te permiten usar IA.
Ambientes
Primero necesita tener algo llamado “entorno de desarrollo” para ejecutar su código Python.
Básicamente, estos entornos lo ayudan a codificar al proporcionar resaltado de sintaxis, sangría y formato general.
Para principiantes, recomiendo un entorno de portátil como:
Google Colab: completamente en línea sin necesidad de descargar nada localmente. Jupyter Notebook/Anaconda: proporciona una solución de descarga todo en uno para Python y las principales bibliotecas de ciencia de datos.
También puede descargar entornos de desarrollo integrados, que es lo que utilizamos a menudo para escribir código profesional/de producción. Mis dos recomendaciones principales serían PyCharm o VSCode. Ambos son igual de buenos, así que no te preocupes por cuál eliges.
Una cosa que quizás se esté preguntando es la codificación de IDE de IA. Estos son increíblemente poderosos y los más comunes que recomiendo son Cursor y Claude.
Sin embargo, dado que estamos tratando de aprender Python, no recomiendo usar un editor de IA para escribir código por usted, ya que eso frustra el objetivo.
Fundamentos
Una vez que tenga su entorno en funcionamiento, debemos aprender los conceptos básicos.
Esta será probablemente la parte más difícil del viaje, porque literalmente pasarás de cero a uno.
Si es difícil, es totalmente normal.
Todos los científicos de datos y profesionales del aprendizaje automático exitosos han estado exactamente en la misma situación y se han mantenido firmes en ella el tiempo suficiente para ver los resultados y construir una carrera que aman.
Las principales áreas que necesitas aprender son:
Variables y tipos de datos Operadores booleanos y de comparación Flujo de control y condicionales Funciones de bucles For y While Tipos de datos nativos (listas, diccionarios, tuplas, etc.) Clases Paquetes
Paquetes de ciencia de datos
Después de lo básico, centrémonos ahora en las habilidades específicas de la ciencia de datos, ¡ya que ahí es donde queremos orientar nuestro aprendizaje!
Comenzaría aprendiendo algunos de los paquetes de ciencia de datos más específicos. Los que recomiendo son:
NumPy: esto es para manipular vectores y matrices, sobre los cuales se basa la mayor parte del aprendizaje automático. Pandas: esto es para la manipulación y análisis de marcos de datos. Está en el nombre ciencia de “datos”, por lo que necesitamos aprender ciencia de datos. Matplotlib: no puedo decirles la cantidad de veces que hice suposiciones sobre los datos, solo para visualizarlos y realizar Sci-Kit Learn: el principal paquete de aprendizaje automático y estadístico en Python. Es sencillo de usar y un excelente punto de entrada al aprendizaje automático.
No me preocuparía por aprender marcos de aprendizaje profundo como TensorFlow, PyTorch o JAX en esta etapa; esto llega un poco más tarde y, a menudo, no es necesario para muchos puestos de ciencia de datos de nivel básico.
Proyectos
Si hay un secreto para aprender Python rápidamente es realizar proyectos.
Los proyectos te obligan a encontrar soluciones, desbloquearte y desarrollar tu creatividad a la hora de programar.
Hay muchas formas de ensuciarse las manos, como Kaggle, crear un modelo de ML desde cero o mediante un curso.
Sin embargo, los mejores proyectos son los que son personales para ti.
Estos proyectos son intrínsecamente motivadores y, por definición, únicos. Entonces, cuando se trata de una entrevista, es realmente interesante discutirlos, ya que el entrevistador nunca lo ha tenido antes.
Aquí hay una guía básica para generar ideas de proyectos:
Enumere cinco áreas que le interesen fuera del trabajo. Para cada una de esas cinco áreas, piense en cinco preguntas diferentes cuya respuesta le gustaría y que podría escribir un programa Python para resolver. Elija el que más le entusiasme y comience a ejecutarlo.
Este proceso sólo te llevará como máximo 1 hora.
Entonces, deja de buscar en Google y preguntarle a personas como yo sobre proyectos, busca internamente lo que deberías construir, ya que son los mejores con diferencia.
Una cosa para recordar aquí es que no buscamos la perfección ni crear una cartera de estrellas de rock; Todo esto es un ejercicio de aprendizaje.
Habilidades Avanzadas
Después de haber realizado algunos proyectos, su nivel básico de habilidades de Python para ciencia de datos debería ser realmente bueno.
Ahora es el momento de comenzar a subir de nivel y aprender habilidades más avanzadas de desarrollo de software y Python.
Estas son las áreas centrales que debemos estudiar:
Git/GitHub: esta es la herramienta estándar de oro para la gestión de versiones de código. PyEnv: aprenda a administrar eficazmente las versiones locales de Python para diferentes proyectos. Administradores de paquetes: poder administrar bibliotecas y sus versiones es fundamental para el desarrollo de software, por lo que es esencial comprender herramientas como pip, poesía y UV. CircleCI: esto le ayuda a probar e implementar continuamente su código de manera eficiente, acelera el proceso de desarrollo y le permite avanzar más rápido con confianza. Homebrew: las Mac no se entregan de forma nativa con un administrador de paquetes agradable como apt en las máquinas Linux. Homebrew es la solución a este problema y se denomina “el Administrador de paquetes faltantes para MacOS”. AWS: para almacenamiento en la nube e implementación de modelos, además de muchas otras cosas. Python avanzado: para mejorar nuestras habilidades en Python, debemos comenzar a aprender temas más sofisticados como generadores, decoradores, clases abstractas y funciones lambda.
Esta pila de tecnología básica es la que utilicé en todas las empresas en las que trabajé como científico de datos profesional e ingeniero de aprendizaje automático.
Estructuras de datos y algoritmos
Desafortunadamente, todas las habilidades de Python que has aprendido hasta ahora no siempre te ayudarán a conseguir un empleo.
El proceso de la entrevista de codificación está algo interrumpido porque a menudo le piden que resuelva una pregunta de codificación que involucra estructuras y algoritmos de datos (DSA), que es un área que rara vez utilizará en su día a día como científico de datos profesional.
El grado en que necesita estudiar DSA se reduce al rol específico de ciencia de datos que está tratando de obtener.
Si opta por más funciones de aprendizaje automático, es mucho más probable que se enfrente a una pregunta de entrevista de DSA que si opta por una posición más relacionada con el producto o la ciencia de datos analíticos.
De cualquier manera, DSA es un mal necesario hoy en día y debes invertir algo de tiempo en él si quieres que te contraten.
El mayor código de trampa que encontré es que no todas las preguntas de DSA se crean de la misma manera. En realidad, en las entrevistas sólo aparecen ciertos temas, que son:
Matrices y hash Dos punteros Ventana deslizante Lista enlazada Búsqueda binaria Pilas Árboles Montones/Colas de prioridad Gráficos
No se deje llevar por el síndrome del objeto brillante y comience a aprender programación dinámica, intentos y manipulación de bits.
Los temas anteriores son los de mayor retorno de la inversión; todo lo demás es ruido y simplemente no vale la pena.
En términos de práctica, es muy simple. Le recomiendo que tome el curso DSA de Neetcode y luego trabaje con el conjunto de preguntas Blind 75 en Leetcode, que son las preguntas de entrevista más frecuentes.
El atajo para mejorar en DSA es simplemente trabajar en ello todos los días durante 8 semanas; eso es lo que da resultados.
Consejos de despedida
Para decirlo sin rodeos, no existe ningún secreto ni truco para dominar Python.
El verdadero secreto es la práctica constante durante un período de tiempo sostenido.
Cuando estaba aprendiendo Python, codifiqué aproximadamente una hora al día durante 3 meses. Eso es mucha codificación y no me malinterpretes, requirió mucho esfuerzo.
Tienes que dedicar horas y, finalmente, las cosas encajarán. Hay que darle un poco de tiempo.
La codificación cambió mi vida y me brindó una carrera que amo y en la que puedo verme trabajando durante décadas.
Esa breve inversión de tiempo y energía dio frutos mucho más de lo que podría haber imaginado.
Si, después de leer esto, te sientes inspirado a comenzar tu viaje de aprendizaje de Python para convertirte en un científico de datos, ¡genial!
Sin embargo, Python por sí solo no conseguirá que te contraten; Hay varias otras áreas que necesita aprender para conseguir un puesto de tiempo completo.
Por eso, recomiendo este artículo, donde desgloso todo lo que necesitas estudiar para conseguir el trabajo de ciencia de datos de tus sueños.
¡Te veré allí!
¡Otra cosa!
Únase a mi boletín gratuito donde comparto sugerencias, ideas y consejos semanales de mi experiencia como científico de datos e ingeniero de aprendizaje automático en ejercicio. Además, como suscriptor, ¡obtendrás mi plantilla de currículum GRATIS!
Distribuyendo los datos
Correos electrónicos semanales que le ayudarán a conseguir su primer trabajo en ciencia de datos o aprendizaje automáticonewsletter.egorhowell.com