Esta guía ha sido diseñada específicamente para estudiantes de ingeniería, cubriendo desde la publicación estática (lectura) hasta el despliegue de aplicaciones interactivas.


Guía de Publicación de Notebooks: De Colab a la Web

Publicar un notebook significa transformar un archivo de trabajo (.ipynb) en un formato accesible mediante una URL para que otros puedan ver los resultados, las gráficas y, en algunos casos, interactuar con el código.

1. Compartir vía Google Drive (El método nativo)

Es el método más directo. El notebook se mantiene en su formato original y vive en la nube de Google.

  • Cómo se hace: Clic en el botón “Compartir” (esquina superior derecha) y cambiar el acceso a “Cualquier persona con el enlace”.
  • Término técnico: Entorno de ejecución (Runtime). Es la computadora virtual en la nube que Google te presta para ejecutar tu código. Al compartir el enlace, los alumnos ven el código y los resultados guardados, pero para ejecutarlo de nuevo, deben conectar su propio runtime.

2. GitHub + nbviewer (Publicación estática profesional)

GitHub es el estándar para alojar código, pero a veces sus previsualizaciones de notebooks fallan con gráficas complejas de R o Python.

  • Cómo se hace:
  1. En Colab: Archivo > Guardar una copia en GitHub.
  2. Copia la URL del archivo en GitHub y pégala en nbviewer.org.
  • Término técnico: Renderizado (Rendering). Es el proceso de convertir el código JSON del notebook en una página HTML visualmente atractiva. nbviewer es un “renderizador” externo que asegura que las ecuaciones en LaTeX y tablas se vean correctamente.

3. Quarto (Publicación académica y reportes)

Ideal para tus clases de Diseño Experimental y Estadística, ya que permite crear sitios web, libros o artículos científicos a partir de notebooks.

  • Cómo se hace: Se utiliza el CLI (Interfaz de Línea de Comandos) de Quarto para convertir el .ipynb en un sitio web de GitHub Pages.
  • Término técnico: YAML Header. Es un bloque de texto al inicio del documento (entre líneas ---) que define el título, autor y formato de salida. Quarto usa esto para saber si el notebook debe convertirse en un PDF, un artículo o una página web.

4. Streamlit Cloud (Aplicaciones Interactivas)

Si tus alumnos crean herramientas de cálculo (por ejemplo, para Ingeniería Civil o Agroindustrial), pueden convertir su lógica de Python en una Web App.

  • Cómo se hace:
  1. Escribir el código de la app en un archivo .py (usando %%writefile app.py en Colab).
  2. Subir ese archivo y un requirements.txt a GitHub.
  3. Conectar el repositorio a Streamlit Cloud.
  • Término técnico: Despliegue (Deployment). Es el proceso de llevar tu código de un entorno de desarrollo (Colab) a un servidor permanente donde cualquier persona puede usar la aplicación sin ver el código fuente.

5. Mercury (Notebooks como Apps)

A diferencia de Streamlit, Mercury permite convertir el notebook directamente en una web app sin reescribir el código a un script .py.

  • Cómo se hace: Añades un encabezado YAML al notebook definiendo qué parámetros (celdas) serán botones o controles deslizantes en la web.
  • Término técnico: Widgets. Son elementos de la interfaz (deslizadores, cajas de texto, botones) que permiten al usuario cambiar variables sin tocar el código.

Tabla Comparativa para los Estudiantes

Método Dificultad Uso Ideal Interactividad
Google Drive Baja Tareas rápidas y revisión de código. Alta (requiere ejecución).
nbviewer Media Portafolios y visualización estática. Nula (solo lectura).
Quarto Media-Alta Reportes estadísticos y libros técnicos. Media (gráficas dinámicas).
Streamlit Media Herramientas de ingeniería y Dashboards. Máxima (App completa).

Este video es fundamental para tus clases ya que explica paso a paso cómo mover un proyecto desde un entorno de desarrollo hacia un servidor real en la nube, facilitando que tus estudiantes de ingeniería entreguen productos funcionales y no solo fragmentos de código.

Despliegue de aplicaciones con Streamlit Cloud