Visual Studio Code (VS Code) es uno de los editores de código más populares en la actualidad tanto entre los desarrolladores como científicos de datos. Lo que es debido a que es gratuito, su flexibilidad y capacidad de personalización. Pero si algo se puede destacar de VS Code es su marketplace de extensiones, con las que se puede adaptar el editor para casi cualquier necesidad. Especialmente en el campo de la ciencia de datos. Las extensiones permiten automatizar tareas, mejorar la calidad del código o visualizar los datos en el propio editor de forma rápida y eficiente. En esta entrada, se revisarán algunas de las mejores extensiones de VS Code para científicos de datos, explicando cómo pueden ayudar a optimizar los flujos de trabajo.
¿Por qué es importante seleccionar las extensiones correctas?
Seleccionar las extensiones adecuadas para cada entorno de desarrollo es crucial. No todas las extensiones son iguales, y elegir aquellas que se alineen con las necesidades específicas de los proyectos puede mejorar significativamente la productividad del entorno de trabajo. Pero, instalar demasiadas extensiones puede sobrecargar el editor, haciendo que este sea lento. Por lo que es clave seleccionar e instalar únicamente aquellas extensiones que aporten un valor real y se adapten mejor a las necesidades de cada usuario.
¿Cómo instalar extensiones en VS Code?
La instalación de extensiones en VS Code es un proceso realmente sencillo. Solamente se deben seguir los siguientes pasos:
- Abrir el Marketplace de Extensiones: En el panel de la izquierda de VS Code se debe seleccionar el ícono de las extensiones (un pequeño cuadrado con una flecha en su esquina inferior derecha).
- Buscar la extensión: Al escribir el nombre de la extensión en la barra de búsqueda se mostrarán todas las extensiones que contengan el texto.
- Instalar: Una vez que se encuentre la extensión que se desea instalar, solamente hay que hacer clic en el botón de "Instalar".
- Configurar (opcional): Algunas extensiones pueden requerir realizar configuraciones, como la conexión a servicios. En estos casos suele aparecer la pagina de opciones de la extensión.
Lista de las mejores extensiones de VS Code para científicos de datos
En mi opinión, doce de las mejores extensiones de VS Code para científicos de datos son las siguientes.
- Python
- Pylance
- Python Indent
- isort
- Indent-Rainbow
- Jupyter
- Jupyter Notebook Renderers
- GitLens
- Data Wrangler
- Rainbow CSV
- DVC
- GitHub Copilot / Tabnine / Codeium
1. Python
Esta es la extensión oficial de Python para VS Code, gracias a la cual se hace más fácil la ejecución, depuración y desarrollo en Python con el editor. Siendo una extensión indispensable para cualquier científico de datos que trabaje en este lenguaje. Entre sus características más importantes se incluye IntelliSense (autocompletado de código basado en el análisis estático), un depurador visual y soporte completo para la ejecución de scripts Python. Permitiendo también la administración de entornos virtuales. Además, incluye la funcionalidad de linting, lo que permite identificar errores en el código antes de ejecutarlo, mejorando la productividad y la calidad del trabajo final.
2. Pylance
Pylance es un complemento que lleva el desarrollo en Python a otro nivel. Proporcionando análisis de código y autocompletado basado en uno de los motores de análisis de Python más avanzado. Pylance mejora las características de IntelliSense, ofreciendo sugerencias inteligentes, navegación fluida por el código, y ayuda a identificar errores y optimizar el rendimiento de este en tiempo real. Siendo un complemento ideal para la extensión estándar de Python. Para científicos de datos, donde el tiempo es esencial, esta herramienta permite detectar y corregir errores en el código, garantizando que los proyectos avanzan sin interrupciones.
3. Python Indent
Esta extensión mejora el funcionamiento predeterminado de la indentación en VS Code, permitiendo que esta sea más natural y consistente respecto a los estándares de la comunidad Python. Lo que resuelve la mayoría de los problemas de indentación para los desarrolladores que trabajan en Python. Con esta extensión, los bloques de código, las condiciones anidadas y las estructuras complejas se alinean correctamente, evitando errores de indentación que, especialmente en Python, son un dolor de cabeza.
4. isort
A medida que avanza un proyecto es normar que las importaciones de los archivos se vuelvan caóticas. Para ayudar a solucionar este problema este isrot. Una pequeña herramienta que organiza automáticamente las importaciones en los archivos Python. Facilitando así mantener el código bien estructurado y limpio, eliminando importaciones redundantes y ordenando las necesarias de acuerdo con las mejores prácticas y recomendaciones. Mantener las importaciones de dependencias ordenadas es especialmente importante en los proyectos de ciencia de datos. En estos proyectos es habitual usar los métodos y clases de múltiples bibliotecas como Pandas, NumPy o TensorFlow, pudiendo hacer que las importaciones en el código se desordenen rápidamente.
5. Indent-Rainbow
Indent-Rainbow es una herramienta visual que asigna colores a diferentes cada uno de los niveles de indentación en el código. Algo especialmente útil cuando se trabaja archivos grandes. Al instalar esta extensión, cada nivel de indentación se distingue fácilmente, lo que facilita la lectura del código y la identificación de errores de forma visual. En proyectos de ciencia de datos, donde las estructuras pueden profundizar rápidamente, esta extensión ayuda a mantener un control visual del código y evitar errores relacionados con la mala indentación.
6. Jupyter
La extensión de Jupyter para VS Code permite abrir y ejecutar celdas de archivos Jupyter Notebook en el propio editor. Mejorando los flujos de trabajo al mantener todo el entorno de desarrollo en un solo lugar, ya que no es necesario abrir un navegador para trabajar con Notebooks.
7. Jupyter Notebook Renderers
Esta extensión complementa la de Jupyter, ofreciendo una de las mejores opciones para la visualización de gráficos dentro de los Notebooks. Permitiendo ver e interactuar con gráficos complejos generados con Matplotlib, Plotly o Altair. Algo esencial para los científicos de datos, ya que muchas veces los procesos de análisis involucran la visualización de grandes conjuntos de datos y patrones mediante gráficos.
8. GitLens
Para aquellos que trabajan con Git esta es una extensión clave. GitLens añade funcionalidades avanzadas para el control de versiones en VS Code, lo que facilita la gestión de proyectos colaborativos. Entre otras funcionalidades, permite ver quién realizó cambios en una línea específica de código, comparar diferentes versiones de un archivo y visualizar los historiales completos de las modificaciones. Lo que la convierte en una herramienta esencial para analizar el progreso y garantizar que las contribuciones de todos los miembros del equipo estén bien documentadas.
9. Data Wrangler
Data Wrangler es una extensión diseñada para facilitar el trabajo con datos tabulares. Lo que consigue permitiendo transformar y limpiar conjuntos de datos de una forma rápida y eficiente directamente desde VS Code. Con Data Wrangler, se pueden explorar los datos, aplicar transformaciones habituales como filtrado, agregación o normalización sin necesidad de escribir mucho código. Es especialmente útil cuando se trabaja con grandes conjuntos de datos que requieren limpiezas preliminares.
10. Rainbow CSV
Rainbow CSV mejora la legibilidad de archivos CSV al asignar colores diferentes a cada una de las columnas. Un cambio visual que facilita el análisis de archivos con muchos campos, ayudando a identificar fácilmente errores o inconsistencias en los datos. Para los científicos de datos, que a menudo trabajan con grandes cantidades de datos tabulares en archivos CSV, esta extensión permite agilizar la exploración inicial de los conjuntos de datos y asegurar que los archivos de datos sean fáciles de leer, analizar y manipular.
11. DVC
La extensión DVC (Data Version Control) es una herramienta fundamental para aquellos que trabajan en proyectos de ciencia de datos de larga duración. DVC permite llevar control de versiones sobre grandes conjuntos de datos y modelos de Machine Learning de una forma análoga a como Git maneja el código fuente. Facilitando que cada modelo o conjunto de datos esté bien documentado
12. GitHub Copilot / Tabnine / Codeium
Las herramientas de completado de código basadas en inteligencia artificial (como GitHub Copilot, Tabnine y Codeium) son un gran aliado para cualquier desarrollador o científico de datos. Al poder autocompletar bloques de código en base al contexto, ahorrando tiempo y esfuerzo. Por lo que es aconsejable contar con la extensión oficial que integre el servicio que cada uno use.
Conclusiones
Las extensiones de VS Code permiten crear un entorno de desarrollo completamente personalizado para las necesidades específicas de cada científico de datos. Siendo fundamental seleccionar e instalar las más adecuadas para cada usuario. En esta entrada se han visto algunas de las mejores extensiones de VS Code para científicos de datos en base a mi experiencia.
En el caso de que conozcas alguna extensión de VS Code que puede ser útil para los científicos de datos te invito a indicarlo en los comentarios.
Nota: La imagen de este artículo fue generada utilizando un modelo de inteligencia artificial.