Resumen
En este episodio (el 80) se continúa la conversación sobre Visual Studio Code orientada a ciencia de datos. Primero se muestran macros (extensión de macros ligada a settings.json y keybindings), snippets de usuario y atajos de teclado útiles. Luego se repasan extensiones que no alcanzaron a verse en la sesión anterior: Markdown, Quarto, HTML, formateadores, temas, revisión de código, LaTeX, herramientas para compartir y utilitarios varios. Entre las conclusiones: los atajos y extensiones ahorran tiempo y evitan cortar el flujo de ideas. Conviene instalar solo lo que se usa de verdad, y los perfiles de VSCode pueden aligerar el entorno. Hay también una sección de memes y, al final, una conversación sobre si una maestría aporta valor monetario.
Capítulos
- 00:00IntroSe presenta el episodio 80, continuación de la charla sobre VSCode. Se explica que los atajos y extensiones ahorran tiempo en microtareas y evitan cortar el flujo de ideas.
- 02:06MacrosUsa la extensión de macros (la más popular) configurando settings.json y keybindings.json. Muestra una macro para enviar la selección a la terminal con Control+Enter, útil para scripts de bash. Aclara que la ejecución de una línea de Python ya baja el cursor en la versión actual de la extensión de Python. Atajo fundamental: la paleta de comandos.
- 13:42SnippetsSe crean snippets de usuario (flecha de asignación, pipe, secciones con guiones) y se llaman con la acción nativa "Insert Snippet" ligada a un keybinding. Ejemplo en vivo: un snippet `print` con separador para depurar. El nombre que debe coincidir es el de la sección del snippet.
- 17:52Keyboard ShortcutsUn mismo atajo (Control+Shift+X) alterna el foco entre terminal y editor usando condiciones distintas. Se muestra el panel interactivo (Control+K, Control+S), el cambio de comentar líneas a Control+Shift+C y el atajo de bloque de comentarios. Se cambia "run" a Control+Enter para separarlo de Shift+Enter de las celdas.
- 25:15Jupyter Notebooks (ipykernel)Opción "Jupyter Send" para mandar código a la terminal interactiva (IPython) en lugar de la terminal normal. Permite imprimir variables seleccionadas, aunque las salidas largas obligan a usar un scroll horizontal. Se menciona la opción de wrap (word wrap) y que el atajo falló en vivo por conflicto con la macro anterior.
- 30:30MemesMemes enviados por la comunidad: código de ChatGPT que cuesta más depurar, programadores que venden humo, procesos de selección demasiado largos y cómo salir de Vim. Se genera un debate sobre cuántas etapas debe tener un proceso de contratación.
- 38:27Markdown: Markdown All in One, Markdownlint, Markdown EmojiMarkdown All in One permite previsualizar, exportar a HTML y generar tabla de contenidos automática. Markdownlint marca errores y Markdown Emoji renderiza emojis. Se menciona también una extensión de checkboxes para listas de tareas.
- 43:22QuartoSe convierte un archivo de Python interactivo a `.qmd` con el comando `quarto convert`. Con la extensión se ejecutan celdas mezclando Markdown y código sin la metadata de los Jupyter Notebooks.
- 44:44HTML: Auto Close Tag, Auto Rename Tag, HTML PreviewHTML Preview visualiza sin abrir navegador. Auto Close Tag y Auto Rename Tag cierran y renombran etiquetas en pareja. Los participantes comentan usos de HTML en ciencia de datos (dashboards, correos con formato) y se menciona el tema de los profiles de VSCode.
- 48:44Formateo de código: Prettier, SQL Formatter, autopep8, Bash Beautify, Better CommentsPrettier para HTML, JS, CSS y JSON. SQL Formatter ordena consultas desordenadas. Autopep8 (o Black) para Python y Bash Beautify para scripts. Better Comments colorea comentarios según prefijos (`!`, `*`, `TODO`, `?`).
- 53:02Themes: Cobalt 3, VSCode Icons, Material Icon ThemeCobalt 3 como tema favorito (aparece como "Cobalt 2"). Para iconos, pasa de VSCode Icons a Material Icon Theme porque incluye el logo de Quarto y más variedad de carpetas. Se comenta que se puede hacer un fork o PR para agregar iconos.
- 56:14Code Review: TODO Tree, TODO Highlight, Error Lens, Code Spell Checker, GrammarlyTODO Highlight destaca los TODO y TODO Tree los lista por archivo o carpeta, con filtros por palabra clave. Sirve para hacer y recibir code review. Error Lens muestra errores en línea, Code Spell Checker corrige ortografía (problemático con dos idiomas) y Grammarly es una alternativa.
- 59:34LaTeX: LaTeX, LaTex WorkshopExtensiones para compilar LaTeX en local (requiere tener las librerías instaladas). LaTeX Workshop da acceso a símbolos y ecuaciones. Overleaf se menciona como alternativa online.
- 01:00:29Share: Live Server, Live Share, Live Share WhiteboardLive Share permite edición simultánea como Google Docs, con limitaciones (los atajos no siempre funcionan, y la terminal no se comparte bien). Whiteboard ofrece una pizarra compartida. Se menciona la limitación de no poder usarlo en remoto.
- 01:01:50Utilitarios: CodeSnap, CodeTour, Draw.io, DotEnv, Indent-rainbow, Log File Highlighter, JSON, Julia, Matlab, PMML Editor, Stream Deck, YAMLCodeSnap genera imágenes del código; CodeTour graba recorridos como tutorial (aún no probado). Draw.io permite diagramas offline en archivos `.drawio` con iconos de AWS. DotEnv gestiona variables de ambiente, Indent-rainbow colorea indentaciones, Log File Highlighter colorea logs, y hay extensiones para Julia, Matlab y modelos PMML. Stream Deck sirve como tablero de macros.
- 01:08:20CierreSe cierra con la recomendación de instalar solo lo que se usa y de que los profiles ayudan a mantener un entorno liviano. Luego, ya fuera del tema, se responde una pregunta del chat sobre si una maestría agrega valor monetario: la opinión general es que aporta poco salvo que sea exigida o se tenga beca, y que importa más demostrar lo que se sabe con proyectos propios.