Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Usando Jupyter Notebook en el aula

Usando Jupyter Notebook en el aula

En esta charla (presentada en PyCon Colombia 2018) se presenta el uso de Jupyter notebook en el entorno educativo. Se explorarán aspectos generales de la aplicación como su funcionamiento, componentes, instalación y edición, para concluir en casos de uso para la educación como una herramienta para la asistencia de actividades de clase y notas interactivas.
Con el crecimiento cada vez mayor de entusiastas y comunidades de software libre, cada vez nos vemos nutridos de nuevas opciones tecnológicas para apoyarnos para el desarrollo y administración de cursos de diversas disciplinas. Una de estas tecnologías con una amplia comunidad es Jupyter (antes IPython) Notebook, que si bien usa un concepto previamente existente de unir texto formateado y código ejecutable en el mismo documento, lo hace de la mano del código abierto y como una tecnología agnóstica ante el lenguaje permitiendo (como factor diferenciador) hacer uso de esta característica para diversos lenguajes. Poder hacer uso de documentos de este estilo permite pasar del concepto de un libro o notas de clases estáticas a un documento interactivo que apoya la comprensión del estudiante al permitirle observar al instante cambios de un resultado ante la modificación de un parámetro. Como veremos, este no es un beneficio que quedara exclusivo a los cursos de programación sino que puede extenderse a disciplinas muy variadas según la existencia de paquetes diseñados para este fin. Discutiremos así estos beneficios, veremos los elementos básicos generales para hacer uso de esta metodología y unos ejemplos de notebooks para su uso en clase.

Edward Villegas Pulgarin

February 10, 2018
Tweet

More Decks by Edward Villegas Pulgarin

Other Decks in Education

Transcript

  1. Contenido 1. Jupyter Notebook a. ¿Qué es? b. Instalación c.

    Funcionamiento d. Anatomía de un notebook 2. Uso general de un notebook a. Escritura con markdown b. Ecuaciones con LaTeX c. Código ejecutable d. HTML y Controles e. Compartir: nbviewer y mybinder 3. Notebook en clase a. Documentar casos prácticos b. Flujo de trabajo (procedimientos) c. Demostraciones y ejemplos interactivos d. Reportes del proceso de formación 4. Algunas extensiones útiles a. nbconvert b. nbsphinx c. nbgrader
  2. Jupyter Notebook ¿Qué es? Es una aplicación web de código

    abierto que permite la creación de documentos interactivos.
  3. Jupyter Notebook Instalación Gracias a la distribución Anaconda, es posible

    tenerlo instalado por defecto. También se puede usar la utilidad pip: pip install notebook En android es posible gracias a PyDroid (python2 solamente).
  4. Jupyter Notebook Funcionamiento Aplicación servidor cliente compuesta de: 1. Kernel

    2. Servidor de notebooks 3. Interfaz web 4. Archivo notebook
  5. Jupyter Notebook Anatomía de un notebook Al iniciar la aplicación,

    nos encontramos el tablero (dashboard). El documento notebook lo forman celdas de diferente naturaleza. • Celdas markdown. • Celdas de código. • Celdas no procesadas (raw).
  6. Usando Notebook Markdown Se usa un lenguaje de marcado simple

    como markdown para la escritura de texto.
  7. Usando Notebook LaTeX Gracias a la biblioteca de javascript MathJax

    podemos realizar la escritura de ecuaciones adecuadamente formateadas en notebook usando sintaxis LaTeX.
  8. Usando Notebook Código A través de los diferentes núcleos (kernels)

    disponibles es posible usar distintos lenguajes de programación para interactuar con sus resultados.
  9. Usando Notebook HTML y controles Los notebooks pueden personalizarse con

    ayuda de HTML y CSS, y diseñar controles web y javascript (con ipywidgets).
  10. Usando Notebook Compartir La rápida aceptación del formato por distintas

    comunidades ha permitido la aparición de infraestructura de acceso gratuito para compartir notebooks. Servicios: • MyBinder. • NBViewer. • Authorea (existe versión paga). • Cocalc (existe versión paga).
  11. Aula Notebook Experiencias Algunos casos de uso: • Documentar •

    Flujo • Interacción • Reportes En el directorio en el cual se encuentran los notebooks jupyter notebook Si usa Anaconda puede usar Anaconda Navigator para abrir Notebook. Veamos algunos ejemplos (disponibles en https://github.com/cosmoscalibur/aula-notebook).
  12. Extensiones Notebook Extras Para complementar lo ya visto, es posible

    extender el potencial de Jupyter notebooks con extensiones. Entorno al aula de clase, recomiendo: • nbconvert • nbsphinx • nbgrader
  13. Referencias How IPython and Jupyter Notebook work http://jupyter.readthedocs.io/en/latest/architecture/ho w_jupyter_ipython_work.html The

    Jupyter notebook http://jupyter-notebook.readthedocs.io/en/stable/index .html Jupyter Widgets https://ipywidgets.readthedocs.io/en/latest/ Jupyter Notebook Quickstart http://jupyter.readthedocs.io/en/latest/content-quickst art.html Jupyter kernels https://github.com/jupyter/jupyter/wiki/Jupyter-kernels Herramientas computacionales https://github.com/cosmoscalibur/hcomputacionales Cuántica Jupyter https://github.com/fisicatyc/Cuantica_Jupyter Material de la presentación disponible en: https://github.com/cosmoscalibur/aul a-notebook