Resumen
En este episodio (continuación de una charla anterior) se presenta Quarto, la herramienta de programación literaria que nace como rebranding de R Markdown y que funciona con R, Python, Julia y otros lenguajes. Se explica su flujo (archivo .qmd → engine knitr/Jupyter → markdown → Pandoc → HTML, PDF, Word, Beamer, etc.) y que se instala como CLI independiente, sin necesidad de R. Se muestran en RStudio atajos de teclado, el modo visual vs. fuente, opciones de chunks (echo, include, eval, warning, message, code-fold, code-line-numbers), fórmulas LaTeX, el encabezado YAML, bibliografía, márgenes, presentaciones, sitios web, libros y documentos interactivos. La conclusión principal es que su mayor valor es la reproducibilidad y la facilidad de pasar el mismo contenido de un formato a otro; tiene una curva de aprendizaje, pero con plantillas propias se vuelve rápido. Entre medio hay conversación sobre atajos, memes y experiencias de los participantes con R Markdown, Jupyter y PowerPoint.
Capítulos
- 00:00IntroBienvenida al episodio 65 (la conferencia tiene numeración aparte, "c01"). Comentan novedades del Discord, incluida una charla sobre Rust/Polars y la alternativa a pandas, y que esta es la segunda parte de lo que no alcanzaron a mostrar en la presentación.
- 01:48El origen de knitr y el rebranding de QuartoQuarto viene de años de trabajo en R (knitr, R Markdown, ~2011) y fue anunciado hace aproximadamente un año como rebranding de R Markdown para quitar el estigma de que solo sirve para R. Es un CLI independiente (`quarto render`, `quarto convert`), por lo que no requiere instalar un lenguaje, y se puede automatizar con cron o Airflow. Recomiendan usar un IDE como VS Code, Jupyter o RStudio.
- 05:56Ejemplo de archivo qmd y ejecuciónEn VS Code con la extensión de Quarto se ve el preview del documento completo, mientras las celdas se ejecutan de a una en la terminal interactiva (engine Jupyter). Explican el flujo qmd → markdown puro → Pandoc → Word, HTML, Beamer; discuten en qué lenguaje está escrito Pandoc (según ChatGPT, Haskell). Recomiendan el workshop "Welcome to Quarto" de Tom Mock y su repositorio de GitHub como plantillas.
- 14:00Algunos shortcutsEn RStudio: Ctrl+Shift+1 para expandir el panel, el outline como índice del documento, comentar con Ctrl+Shift+C, pipes con Ctrl+Shift+M, ejecutar línea (Ctrl+Enter), chunk (Ctrl+Shift+Enter), siguiente chunk (Ctrl+Alt+N), todo (Ctrl+Alt+R) y ejecutar todo lo anterior (Ctrl+Alt+B). Los participantes comentan AutoHotkey, Stream Deck, Touch Portal y macros de teclado y mouse.
- 22:02Modo visual versus modo fuenteEl modo visual es útil para partir, renderiza al instante y permite agregar links, atributos CSS y tablas Markdown de forma sencilla (difíciles de escribir en código fuente). Comentan lo ineficiente de ejecutar seleccionando con el mouse en vez de usar atajos.
- 27:42De dónde sacar ideas: GaleríaLa galería oficial de Quarto permite ver y copiar el código fuente de ejemplos (artículos, reportes, presentaciones). Se muestra cómo ocultar celdas de código (code-fold) para que el reporte sirva a perfiles distintos, y se discute que menos distracciones (warnings, código) fortalece el mensaje en presentaciones de negocio.
- 31:15Opciones de chunks de códigoCon `#|` y Tab se despliega la lista de opciones con su documentación; son globales para cualquier lenguaje. Se muestra `code-line-numbers: true` para referirse a líneas específicas del código, algo útil al enseñar.
- 34:30MemesSección de memes: sobre expertos en LinkedIn, el logo de Flask (un cuerno/cantimplora, no una "J"), el "error de capa 8" del modelo OSI y el meme de Jupyter con notebooks "Untitled" que se guardan automáticamente.
- 42:05Las opciones más comunes de los chunksSe muestran en el editor visual y en el formato `#|`: `echo` (mostrar output), `include` (mostrar código), `eval` (evaluar), `warning` y `message`. Sirven para limpiar el reporte de salidas innecesarias al importar librerías; con `include: false` no se muestra nada.
- 44:41LaTeXFórmulas con doble signo de dólar (en línea aparte) y con un solo signo (dentro del texto), con previsualización al pasar el mouse.
- 45:50YAMLCon el YAML por defecto basta al empezar; luego se pueden agregar opciones globales (tabla de contenidos, método de renderizado de fórmulas como MathJax/KaTeX, figuras) y cambiar el formato de salida (docx, pdf vía LaTeX), usando Tab para ver las opciones. Muestran que el mismo documento se renderiza a Word y a LaTeX/PDF, y comentan anécdotas sobre tomar apuntes en LaTeX.
- 50:12Logos, numeracion de filas, uso de márgenes, citas, bibliografíaEjemplos de la galería: logos en presentaciones, notas al margen, numeración de líneas con explicaciones aparte, figuras en márgenes o expandidas, columnas, citas en bloque y bibliografía mediante un archivo BibTeX con formato de citas independiente.
- 53:52PresentacionesPresentaciones básicas en reveal.js, Beamer y PowerPoint. La exportación a PowerPoint evita que imágenes se desconfiguren, porque todo está especificado en el código.
- 54:40Páginas web, libros, documentos interactivosSitios web completos (ejemplo: Practical Deep Learning) y libros (ejemplo: Telling Stories with Data) construidos con varios archivos, con índice global y local y buscador. Documentos interactivos con Observable (relacionado con D3), Shiny y Jupyter (tablas filtrables, dashboards reactivos, mapas). Debaten sus límites: Shiny no escala bien para casos complejos, y el mayor valor es reciclar contenido entre formatos y la reproducibilidad (incluso reportes paramétricos mensuales).
- 01:05:31Ejemplo de presentaciónMuestran el código de la presentación del episodio anterior: formato de fecha automático, logo vía CSS, clases propias, sintaxis `:::` para secciones/columnas (portable entre formatos) y `fragment` para que elementos aparezcan en la siguiente diapositiva. Discuten que usar Quarto tiene curva de aprendizaje y que para presentaciones apuradas PowerPoint puede ser más rápido; mencionan que se planea edición con drag and drop.
- 01:13:20CierreLos participantes comparten su experiencia pasando de R Markdown/Jupyter a Quarto, valorando que es más limpio y que es la evolución de R Markdown. Invitan al Discord y al canal de YouTube y se despiden.