No tienes acceso a esta clase

¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera

No se trata de lo que quieres comprar, sino de quién quieres ser. Invierte en tu educación con el precio especial

Antes: $249

Currency
$209

Paga en 4 cuotas sin intereses

Paga en 4 cuotas sin intereses
Suscríbete

Termina en:

12 Días
4 Hrs
1 Min
30 Seg

¿Dónde y cómo escribir tu código en ingeniería de datos?

8/25
Recursos

Aportes 45

Preguntas 0

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad?

Mi resumen de la clase:

Jupyter Notebooks VS IDE VS Editor de código

Jupyter Notebooks: Están dentro de la herramienta Jupyert Lab, son herramientas donde tenemos líneas de código donde vamos evaluando nuestras celdas de código para ver su resultado, es usado mucho por DS para explorar la data y generar modelos de manera no productiva.

IDE: Se utilizan muchísimo para el desarrollo de aplicaciones, proveen un entorno que nos ayuda a identificar la calidad del código y nos pueden ayudar con el testing automatizado.

Editores de código: Nos ayudan con el soporte del código, pero su propósito es ayudarnos con escribir código con nuestros gustos a nuestra libertad.

Dependerá de que etapa estamos trabajando para saber cual es la mejor herramienta.

La terminal es una herramienta que nos permite interactuar con nuestro sistema operativo, esta es nuestra amiga, nos ayuda a correr muchas cosas.

Git también será una de nuestras herramientas, para que no perdamos nuestro avance y vayamos compartiendo lo que vamos haciendo.

Visual Studio Code !!! hasta el fin…XDXDXD

Cuando hago proyectos locales uso Visual Studio Code cuando son códigos de Python en un ambiento más guiado a ingeniería, si es de análisis, si uso Deepnote, me parece muy buena su opción de compartir. Ya en lo profesional uso Azure Databricks 😄

me gusta más Visual Studio Code. Aunque me dió mucha lidia cuando me tocó instalar C/C++

Jupyter Notebooks esta mucho mas preparado para trabajar con grandes volumenes de datos, mientras que los otros dos suelen ser mejor en lo que es asistencia al momento de escribir codigo, por ejemplo a VSC se le puede intalar extenciones que te acompañan a cada momento para evitar errores tipicos de indentaciones o similares.

  • Jupyter notebooks: se incorporan rápidamente varias librerías, se usa para ir escribiendo y ejecutando código. Al ejecutar el código se puede tener un resultado visual y de texto.
  • El editor de código: al momento de escribir código se puede ser libre, instalar herramientas de color e incorporar otros lenguajes de programación
  • IDE: es usado más en crear aplicaciones robustas por su gran facilidad de integración, intelligenceCode y testing automatizado
### **1. Jupyter Notebook** #### **Ventajas**: * **Interactividad**: Permite ejecutar código por celdas, ideal para análisis exploratorios y visualización de datos. * **Visualización integrada**: Compatible con bibliotecas como Matplotlib y Seaborn para gráficos en línea. * **Markdown y texto enriquecido**: Facilita la documentación junto al código. * **Colaboración**: Compartir notebooks es sencillo con servicios como Google Colab o GitHub. * **Extensiones**: Hay herramientas adicionales para agregar funcionalidades como depuración o atajos de teclado. #### **Desventajas**: * **Estructura lineal**: Difícil manejar proyectos grandes o refactorizar código. * **Depuración limitada**: Herramientas de debugging menos avanzadas que en un IDE. * **Manejo de dependencias**: Puede causar conflictos al trabajar con múltiples entornos virtuales. * **Rendimiento**: No es eficiente para tareas de gran escala o desarrollo más allá del análisis. ### **2. Editor de código (como VS Code, Sublime Text, Atom)** #### **Ventajas**: * **Ligero y rápido**: Ideal para scripts pequeños o desarrollo ágil. * **Extensiones**: Integración con linters, debuggers, y frameworks (ej., Flask, Django). * **Personalización**: Gran flexibilidad con temas, plugins y configuraciones. * **Integración con Git**: Herramientas integradas para control de versiones. #### **Desventajas**: * **Limitado para proyectos grandes**: Requiere mayor configuración manual para estructuras complejas. * **No especializado**: Aunque potente, carece de algunas funciones avanzadas de IDEs. * **Menor integración**: Algunas herramientas externas pueden requerir configuración adicional. ### **3. IDE (como PyCharm, Spyder, Thonny)** #### **Ventajas**: * **Funcionalidades completas**: Incluye debugging avanzado, refactorización y pruebas integradas. * **Gestión de proyectos grandes**: Ideal para aplicaciones complejas con múltiples dependencias. * **Integración nativa**: Funciona con virtual environments, frameworks y control de versiones. * **Productividad**: Atajos y herramientas preconfiguradas para desarrollo ágil. #### **Desventajas**: * **Requiere más recursos**: Más pesado que un editor de código simple. * **Curva de aprendizaje**: Puede ser intimidante para principiantes debido a la cantidad de opciones. * **Costo**: Algunos IDEs completos (como PyCharm Professional) son de pago. ### **¿Qué elegir según el caso?** * **Jupyter Notebook**: Para análisis de datos, prototipos rápidos, y visualización. * **Editor de código**: Para scripts pequeños o proyectos ligeros que requieran flexibilidad. * **IDE**: Para proyectos grandes, depuración avanzada o desarrollo profesional.

Jupyter Notebooks:

Ventajas:

Interactividad: Jupyter Notebooks permiten ejecutar código de manera interactiva, lo que es útil para exploración de datos y experimentación.
Documentación enriquecida: Puedes mezclar texto enriquecido (como Markdown) con código, lo que facilita la creación de documentos explicativos y tutoriales.
Visualización de resultados: Las visualizaciones se pueden mostrar directamente en el mismo documento, lo que facilita la comprensión de los datos.
Facilidad de uso para análisis de datos: Son ideales para análisis de datos y ciencia de datos, ya que permiten ejecutar pequeños fragmentos de código y ver los resultados de inmediato.

Desventajas:

No es ideal para proyectos grandes: Para proyectos de desarrollo de software grandes y complejos, Jupyter Notebooks pueden volverse incómodos.
Limitaciones en la refactorización de código: No son tan flexibles como los IDE y los editores de código para tareas de refactorización y desarrollo de software en gran escala.
Gestión de paquetes: A veces, la gestión de paquetes y dependencias puede ser complicada.

Yo disfrute mucho de hacer código Python en un Google Colab (notebook) para un trabajo de QA que tuve que hacer. Me encantó y corrió de MARAVILLAS. Lo que me gusto mucho fue no tener que instalar nada en mi computadora y que mi TL pudiera ver todo lo que hacía en tiempo real.

Jupyter Notebook y VSCode son herramientas poderosas para la ciencia de datos. Jupyter Notebook sobresale en el análisis interactivo de datos y la colaboración, mientras que VSCode sobresale en la codificación y depuración. En última instancia, la elección entre estas dos herramientas depende de sus necesidades y preferencias específicas.

Si eres nuevo en ciencia de datos y desea una herramienta fácil de usar para el análisis interactivo de datos, Júpyter Notebook es una gran opción. Por otro lado, si usted es un codificador experimentado y desea un entorno de codificación flexible y potente, VSCode es la mejor opción.

Esto es lo que yo apunte. Si encuentran algo que no esta bien. Por favor corrijanme:

Jupyter notebook
Ventaja: Te permite escribir texto y programación
Desventaja: Necesita ejecutarse en línea

IDE
Ventaja: Tiene todas las herramientas para empezar a programar.
Desventaja: Algunos son de paga

Editor de texto
Ventaja: Te permite trabajar con varios lenguajes de programación
Desventaja: Tienes que instalar muchas herramientas

Aunque Jupyter Notebooks se usen para grandes volumenes de Datos, me gusta trabajar mas en VSC

Yo trabajaba en un IDE que se llama Eclipse, muy bueno, ahi editaba C y C++ Otra herramienta que usaba era SublimeText. Actualmente uso VSCode para desarrollar en Python. La consola es muy buena. Todavia aprendiendo a usar GIT y en GIThub tengo algunas aplicaciones que he hecho
Mis primeras practicas las hacia en Google Colab... Me parece fácil de usar y muy práctico para aprender
Jupyter NoteBook se maneja mediante celdas y podemos ir generando el codigo a medida que vamos terminando el comando, EID: tiene muchas herramientas incluidas lo cual facilita hacer depuraciones, mas compleja y correr muchos datos de informacion. Editor de código es mas sencilla a compracion con un EID. lo cual facilita el proceso de personalizacion a nuestro gusto. un punto en contra es que no cuenta con el mismo nivel de automatizacion de un EID, debemos installar extensiones si queremos hacer procemos complejos
Yo en lo personal use IDE pero para su uso mi RAM quedaba corto, por que te pide mucha capacidad pero es una maravilla eso si, y lo mas ligero seria Visual y descargar pluggins para ayudarte con el desarrollo
Esto lo saque de Chat GPT, lo leí y mejoro mi entendimiento: ### Jupyter Notebooks **Beneficios:** 1. **Interactividad**: Permite ejecutar código en fragmentos (celdas), facilitando el análisis iterativo. 2. **Documentación**: Fácil inclusión de texto, imágenes y visualizaciones junto al código para mejor comprensión. 3. **Compartibilidad**: Notebooks pueden compartirse fácilmente con otros, incluyendo resultados y explicaciones. 4. **Visualización**: Excelente para visualizar datos con gráficos interactivos. 5. **Lenguajes**: Soporta múltiples lenguajes, no solo Python (como R y Julia). **Defectos:** 1. **Escalabilidad**: No es ideal para proyectos grandes o aplicaciones en producción. 2. **Rendimiento**: Puede ser lento con grandes volúmenes de datos. 3. **Depuración**: Debugging es más complicado comparado con IDEs. 4. **Control de Versiones**: Menos efectivo que el control de versiones en archivos de código plano. ### IDE (Integrated Development Environment) **Beneficios:** 1. **Características Completas**: Integran herramientas de desarrollo como editores, debuggers, y sistemas de control de versiones. 2. **Depuración**: Herramientas de debugging avanzadas. 3. **Productividad**: Funcionalidades como autocompletado, refactorización de código y plantillas aumentan la productividad. 4. **Integración**: Buenas integraciones con sistemas de control de versiones y herramientas de desarrollo colaborativo. **Defectos:** 1. **Recurso Intensivo**: Puede consumir muchos recursos del sistema. 2. **Curva de Aprendizaje**: Pueden ser complejos y requerir tiempo para aprender a utilizarlos eficazmente. 3. **Configuración**: Puede ser difícil configurar adecuadamente para proyectos específicos. ### Editor de Código **Beneficios:** 1. **Ligereza**: Consume menos recursos del sistema. 2. **Simplicidad**: Fácil de usar, ideal para tareas rápidas y sencillas. 3. **Personalización**: Altamente personalizables con plugins y extensiones. 4. **Velocidad**: Rápido para abrir y editar archivos pequeños o medianos. **Defectos:** 1. **Funcionalidad Limitada**: Carecen de herramientas avanzadas como debugging y gestión de proyectos. 2. **Integración**: Menos integrados con sistemas de control de versiones y otras herramientas de desarrollo. 3. **Productividad**: Menos características que aumenten la productividad comparado con IDEs.
En realidad solo he trabajado con VS Code, pero me ha llamado la atención Pycharm.
**Jupyter Notebooks:** Ventajas: 1. **Interactividad**: Permite ejecutar código de manera interactiva, lo que facilita la exploración y el análisis de datos. 2. **Documentación integrada**: Es ideal para crear documentos que combinen explicaciones, código y resultados. 3. **Visualización de datos en línea**: Ofrece capacidades integradas para generar gráficos y visualizaciones de datos directamente en el notebook. 4. **Facilidad de compartir resultados**: Los notebooks se pueden compartir fácilmente y permiten a otros reproducir los mismos análisis. 5. **Soporte multiplataforma**: Funciona en una variedad de entornos y se puede acceder a través de un navegador web. Desventajas: 1. **Dificultad para trabajar con grandes conjuntos de datos**: Puede volverse lento o poco práctico al trabajar con grandes volúmenes de datos. 2. **Difícil depuración**: La depuración puede ser más complicada en comparación con IDEs tradicionales. 3. **Control de versiones**: Puede ser complicado gestionar el control de versiones de los notebooks debido a su formato JSON. 4. **Limitaciones en la gestión de proyectos**: Puede resultar menos adecuado para proyectos de gran escala con múltiples archivos y componentes. **IDEs (Entornos de Desarrollo Integrado):** Ventajas: 1. **Funcionalidades avanzadas de desarrollo**: Ofrece características avanzadas como completado de código, depuración integrada, integración con sistemas de control de versiones, entre otros. 2. **Gestión de proyectos**: Facilita la gestión de proyectos más grandes y complejos con múltiples archivos y componentes. 3. **Rendimiento**: En general, pueden tener un rendimiento más rápido y eficiente que los notebooks para ciertas tareas. 4. **Personalización**: Pueden ser altamente personalizables para adaptarse a las necesidades específicas del usuario. Desventajas: 1. **Curva de aprendizaje**: Pueden tener una curva de aprendizaje más pronunciada en comparación con los notebooks. 2. **Menos interactividad**: Generalmente ofrecen menos interactividad que los notebooks, lo que puede hacer que la exploración de datos sea menos fluida. 3. **Menos adecuado para documentación**: No son tan adecuados como los notebooks para crear documentos combinados con explicaciones, código y resultados. **Editores de Texto:** Ventajas: 1. **Simplicidad**: Son ligeros y simples de usar, lo que los hace ideales para edición rápida de código. 2. **Personalización**: Al igual que los IDEs, algunos editores de texto pueden ser altamente personalizables para adaptarse a las preferencias del usuario. 3. **Eficiencia**: Pueden ser más eficientes en términos de recursos computacionales en comparación con los IDEs. 4. **Amplia disponibilidad**: Hay una amplia variedad de editores de texto disponibles, muchos de los cuales son de código abierto y gratuitos. Desventajas: 1. **Limitaciones de funcionalidad**: Carecen de muchas de las características avanzadas de los IDEs, lo que puede limitar su utilidad para proyectos más grandes y complejos. 2. **Menos integración**: Por lo general, ofrecen menos integración con herramientas externas y sistemas de control de versiones en comparación con los IDEs. 3. **Menos adecuados para desarrollo interactivo**: No son tan adecuados como los notebooks para el desarrollo interactivo y la exploración de datos.

Gracias

jajaja git tambien te quiere -- pues si pero es bien dificil
**VENTAJAS Y DESVENTAJAS DE LOS EDITORES DE CÓDIGO** Lista de 5 ventajas y 5 desventajas de los editores de código: **Ventajas:** 1. **Ligeros y rápidos**: Los editores de código suelen ser ligeros en recursos y rápidos en comparación con los IDEs, lo que los hace ideales para proyectos pequeños o para desarrolladores que prefieren un entorno de desarrollo ágil y eficiente. 2. **Simplicidad**: Los editores de código tienden a ser más simples en términos de funcionalidad y características en comparación con los IDEs, lo que los hace más fáciles de usar y aprender para los principiantes y los desarrolladores que prefieren una experiencia de desarrollo más minimalista. 3. **Personalización**: Muchos editores de código permiten a los usuarios personalizar su apariencia y funcionalidad mediante la instalación de temas, extensiones y complementos, lo que permite adaptar el entorno de desarrollo a las preferencias individuales del desarrollador y al flujo de trabajo específico del proyecto. 4. **Versatilidad**: Los editores de código suelen admitir una variedad de lenguajes de programación y tecnologías, lo que los hace adecuados para una amplia gama de proyectos de desarrollo de software, desde desarrollo web y móvil hasta ciencia de datos y aprendizaje automático. 5. **Portabilidad**: Los editores de código suelen ser más portátiles y compatibles con una variedad de sistemas operativos, lo que permite a los desarrolladores trabajar en múltiples plataformas sin necesidad de cambiar de herramienta de desarrollo. **Desventajas:** 1. **Limitaciones de funcionalidad**: En comparación con los IDEs, los editores de código suelen tener una funcionalidad limitada en términos de herramientas de depuración integradas, gestión de proyectos y otras características avanzadas, lo que puede limitar su utilidad para proyectos más grandes y complejos. 2. **Dependencia de extensiones**: Si bien la capacidad de personalización es una ventaja, algunos editores de código pueden depender en exceso de extensiones y complementos de terceros para agregar funcionalidad adicional, lo que puede aumentar la complejidad y la dependencia del entorno de desarrollo. 3. **Gestión de proyectos limitada**: A diferencia de los IDEs, que suelen incluir funciones avanzadas para la gestión de proyectos, los editores de código pueden carecer de herramientas integradas para la organización de archivos, la gestión de dependencias y otras tareas relacionadas con la administración de proyectos. 4. **Curva de aprendizaje para características avanzadas**: Algunos editores de código pueden tener una curva de aprendizaje pronunciada para características avanzadas o configuraciones específicas, lo que puede requerir tiempo adicional para familiarizarse con el entorno y aprovechar al máximo sus capacidades. 5. **Escalabilidad**: A medida que los proyectos crecen en tamaño y complejidad, los editores de código pueden volverse menos adecuados para manejar la carga de trabajo, especialmente en entornos colaborativos o proyectos de desarrollo a gran escala, donde las características adicionales de los IDEs pueden ser beneficiosas.
**VENTAJAS Y DESVENTAJAS DE LOS IDE** Lista de 5 ventajas y 5 desventajas de los Entornos de Desarrollo Integrados (IDE): **Ventajas:** 1. **Funcionalidades avanzadas de edición**: Los IDEs suelen ofrecer características avanzadas de edición de código, como resaltado de sintaxis, autocompletado, refactorización de código y navegación rápida por el código, lo que aumenta la productividad del desarrollador. 2. **Depuración integrada**: Los IDEs suelen incluir herramientas de depuración integradas, como puntos de interrupción, seguimiento de variables y visualización de pilas de llamadas, lo que facilita la identificación y corrección de errores en el código. 3. **Gestión de proyectos**: Los IDEs proporcionan funciones para gestionar proyectos de software, como la organización de archivos, la gestión de dependencias y la integración con sistemas de control de versiones, lo que facilita el desarrollo colaborativo y la escalabilidad del proyecto. 4. **Integración con herramientas externas**: Los IDEs suelen integrarse con otras herramientas y servicios, como compiladores, sistemas de control de versiones, herramientas de análisis estático de código y sistemas de construcción automatizada, lo que simplifica el flujo de trabajo del desarrollo de software. 5. **Personalización y extensibilidad**: Muchos IDEs permiten a los usuarios personalizar y ampliar su funcionalidad mediante la instalación de complementos y la configuración de preferencias, lo que permite adaptar el entorno de desarrollo a las necesidades específicas del desarrollador y del proyecto. **Desventajas:** 1. **Curva de aprendizaje**: Algunos IDEs pueden tener una curva de aprendizaje pronunciada debido a su amplia gama de funciones y opciones de configuración, lo que puede requerir tiempo adicional para familiarizarse con el entorno y maximizar su productividad. 2. **Consumo de recursos**: Los IDEs suelen consumir más recursos del sistema, como memoria RAM y potencia de procesamiento, en comparación con editores de texto simples, lo que puede ralentizar el rendimiento del sistema, especialmente en equipos más antiguos o con recursos limitados. 3. **Complejidad excesiva**: En algunos casos, la abundancia de funciones y opciones en los IDEs puede resultar en una interfaz de usuario abrumadora y compleja, lo que dificulta la navegación y el uso eficiente del entorno de desarrollo. 4. **Dependencia del entorno**: Los IDEs están vinculados al sistema operativo y al entorno de desarrollo específico para el que fueron diseñados, lo que puede limitar su portabilidad y compatibilidad con otros sistemas operativos o herramientas de desarrollo. 5. **Costo**: Algunos IDEs comerciales pueden tener un costo asociado, especialmente para el uso en entornos empresariales o con características avanzadas, lo que puede ser una barrera para los desarrolladores individuales o equipos con presupuestos limitados.
**VENTAJAS Y DESVENTAJAS DE JUPYTER NOTEBOOKS** lista de 5 ventajas y 5 desventajas de Jupyter Notebooks: **Ventajas:** 1. **Interactividad**: Jupyter Notebooks permiten ejecutar y modificar código de forma interactiva en celdas individuales, lo que facilita la experimentación y el análisis exploratorio de datos. 2. **Visualización integrada**: Los resultados de las operaciones de código, como gráficos y tablas, se pueden visualizar directamente en el mismo documento, lo que facilita la interpretación y comunicación de los resultados. 3. **Soporte multimedia**: Además del código, las celdas de Jupyter Notebooks pueden contener texto enriquecido, ecuaciones matemáticas, imágenes y videos, lo que permite crear documentos completos y autocontenidos. 4. **Flexibilidad**: Jupyter Notebooks admiten varios lenguajes de programación, como Python, R, Julia, entre otros, lo que los hace útiles para una amplia gama de aplicaciones en ciencia de datos, análisis numérico, educación y más. 5. **Comunidad activa**: Jupyter es una herramienta de código abierto con una gran comunidad de usuarios y desarrolladores que contribuyen con extensiones, widgets y recursos educativos, lo que garantiza un desarrollo continuo y un soporte robusto. **Desventajas:** 1. **Control de versiones**: Los notebooks pueden generar problemas al trabajar con sistemas de control de versiones como Git, ya que el formato del archivo no es fácilmente legible en diferencias de línea por línea. 2. **Requerimientos de recursos**: Los notebooks pueden consumir una cantidad significativa de recursos de la computadora, especialmente si contienen gráficos intensivos o se ejecutan cálculos complejos, lo que puede afectar el rendimiento del sistema. 3. **Orden y mantenimiento**: A medida que los notebooks crecen en tamaño y complejidad, puede ser difícil mantener el orden y la organización, lo que puede dificultar la legibilidad y la reutilización del código. 4. **Dependencia del navegador**: Jupyter Notebooks se ejecutan en un navegador web, lo que significa que dependen de la disponibilidad y el rendimiento del navegador, y pueden no ser adecuados para entornos sin acceso a Internet. 5. **Seguridad**: Debido a la naturaleza interactiva de los notebooks, existe un riesgo potencial de ejecución de código malicioso si se comparten y ejecutan notebooks de fuentes no confiables. Se deben tomar precauciones para evitar este tipo de riesgos de seguridad.
hola en mi caso he usado las 3 por el 2018 use visual studio 2012 y el 2017 para hacer un proyecto web intermedio en complejidad, backend y frontend, y la base de datosnla manejamos con toad y sql developer. por un curso de ia el 2019 use jupyter labs, en particular los netebooks. actualmente desarrollo scrapping, manejo bases de datos, programo python en forma normal y tambien en concurrente, usando vscode. pude configuralo para compilar c y c++ usando librerias de linux en windows de las tres me quedo con vscode.
* **Para Análisis Exploratorio y Data Science**: Jupyter Notebooks son excepcionales. Su capacidad para mezclar código, visualizaciones y texto los hace ideales para explorar datos, realizar análisis y compartir resultados. * **Para Desarrollo de Software y Scripts de Ingeniería de Datos**: Prefiero un IDE como PyCharm o Visual Studio Code. Ofrecen mejores herramientas para escribir, depurar y organizar código en proyectos más grandes. * **Para Ediciones Rápidas o Scripts Simples**: Un editor de texto como Sublime Text o Atom puede ser más que suficiente y ofrece un entorno ligero y rápido. La clave es utilizar la herramienta adecuada para la tarea adecuada y no dudar en cambiar entre ellas según las necesidades del proyecto.
La Terminal es mi coco, no se por cual curso empesar con este!

Visual studio es el que mas me acomoda y es facil de usar

En mi trabajo del día a día siempre he recurrido a los Juýter Notebooks: con WSL2 instalado he tenido la posibilidad de crear mis propios conda environments y se me ha facilitado mucho el automatizar flujos de trabajo para extraer, cargar y transformar datos. Sin embargo me ha llamado mucho la atención que en proyectos que he visto de otras personas, hacen uso de ambas herramientas:

  1. Notebooks para extraer, depurar y hacer visualizaciones de datos ya limpios. Donde se trabaja mayoritariamente con el paradigma de programación funcional

  2. Scripts de Python en editores de código, con modularización y prácticas de desarrollo que son adoptadas de la Ingeniería de Software, y en donde se ve tanto Programación Funcional como POO.

De ahí donde dice el profe que depende de para qué lo necesitemos y cómo se ajuste a nuestras necesidades

VIsual studio Code a muerte me siento raro en Colaboratory de google

Jupyter Notebook es una herramienta interactiva y orientada al análisis y la presentación de resultados, mientras que un IDE proporciona un entorno completo y especializado para el desarrollo de software. Los editores de código son más flexibles y ligeros, y se adaptan bien a diferentes lenguajes y proyectos.

8. ¿Dónde y cómo escribir tu código en ingeniería de datos?

  • Jupyter Notebooks vs. IDE vs. Editor de código
  • La terminal es tu amiga
  • Git también te quiere

He realizado varios trabajos en Jupyter Notebooks, pero actualmente el codigo Python lo escribo en Spyder.

Para mi los notebooks no son herramientas de desarrollo, son herramientas para compartir conocimiento. Yo veo los notebooks como el word de los científicos.

Buena explicacion.

Hasta ahora solo he tenido experiencia con los editores de código y con las notebooks online (Jupyter, Deepnote, Google colab), para análisis de datos siempre prefiero desarrollar con las notebooks, pero en el caso de que sea una aplicación pequeña que haga solo una pipe de datos y que simplemente haga un proceso que no va a requerir de mucho código a futuro prefiero utilizar el editor de código, de ambas maneras, vscode cuenta con una integración de Jupyter notebook y con una ejecución del código de python por partes, lo cual no hace bastante semejante a Jupyter Notebooks.

He estado trabajando con Python en Notebooks como Jupyter y Google Colab. Como ventaja veo que se ve en instantaneo si funciona el código o no, sin tener que tener que usar una herramienta más como la terminal, y queda mejor documentado.
También he estado usando el editor de código VSC con Python. Tiene muchas extensiones q ayudan a codear, aunque no las utilicé para poder seguir aprendiendo.
IDE nunca usé con Python, aunque sí Visual Studio para otro lenguaje. Entiendo que los IDE tiene muchas funcionalidades integradas y ya vienen con dependencias instaladas.
Como desventaja considero que las notebooks, a diferencia de editor de código e IDE, no veo que sean funcionales para proyectos que escalen. El IDE puede ser que consuma mucho más recursos xq se instala completo a pesar que no se usen todas las prestaciones, entones si se quiere quizás para estudiar y practicar puede ser más viable notebooks o editor de código.

Aún no encuentro diferencias. Será porque usé durante mucho tiempo un solo IDE (Eclipse, para Java), y algún editor (V S Code, para JS). Pocas veces utilicé Jupiter NB, hasta ahora.

Uso mucho VScode en mi trabajo, pero le estoy dando una oportunidad a DataSpell en proyectos personales, vamos a ver que tal me va.

Jupyter y colab son buenos para empezar y para compartir, también para organizar, aún me falta utilizar la terminal, por lo que me siento más cómodo en la idea de spyder,

Para cursos sobre alguna biblioteca utilizo Deepnote, un servicio de Jupyter Notebooks desde el que puedo acceder a mis notebooks desde cualquier equipo solo iniciando sesión para continuar en donde me quede.
Ahora, para proyectos personales que pienso compartir en GitHub utilizo el IDE DataSpell. De esa manera tengo control desde las bibliotecas hasta la modularidad y calidad del código ~

Yo solo he trabajado con IDE y editores, me gustan los editores por la versatilidad y porque tienen mas opciones que un editor para depurar, validar, probar y hasta publicar en GIT todo el código sin necesidad de usar diversas apps para lograr lo mismo

Team de JN aquí!, y también utilizo VSCode en caso se requiera que el modelo se despliegue mediante una API con Flask

Se me hace muy cómodo trabajar en los cuadernos de Jupyter si instalo un entorno virtual en Windows y lo abro desde la consola. Eso sí, una vez tenga mayor claridad sobre los resultados que espero obtener. En los cuadernos, ver los resultados de ejecutar líneas no es tan fácil.

Cuando no me es familiar el uso de una librería, o necesito entender mejor los datos que estoy procesando, o los resultados que estoy obteniendo, me gusta usar Spyder de Anaconda. Permite ver el espacio de variables y los tipos de estructuras con facilidad.