Phase 00 - Lesson 08

Configuración del Editor

Tu editor es tu copiloto. Configúralo una vez para que se quite de tu camino y empiece a aportar.

Tipo: Build Lenguajes: -- Requisitos previos: Fase 0, Lección 01 Tiempo: ~20 minutos

Objetivos de Aprendizaje

  • Instalar VS Code con extensiones esenciales para Python, Jupyter, linting y SSH remoto
  • Configurar el formateo al guardar, la verificación de tipos y el desplazamiento de salida de notebooks para flujos de trabajo de IA
  • Configurar Remote SSH para editar y depurar código en máquinas GPU remotas como si fueran locales
  • Evaluar editores alternativos (Cursor, Windsurf, Neovim) y sus ventajas y desventajas para el trabajo con IA

El Problema

Pasarás miles de horas dentro de tu editor escribiendo Python, ejecutando notebooks, depurando bucles de entrenamiento y conectándote por SSH a máquinas GPU. Un editor mal configurado convierte cada sesión en fricción: sin autocompletado, sin sugerencias de tipo, sin errores en línea, formateo manual y un flujo de trabajo de terminal torpe.

La configuración correcta toma 20 minutos. Omitirla te cuesta 20 minutos cada día.

El Concepto

Una configuración de editor para ingeniería de IA necesita cinco cosas:

graph TD
    L5["5. Remote Development<br/>SSH into GPU boxes, cloud VMs"] --> L4
    L4["4. Terminal Integration<br/>Run scripts, debug, monitor GPU"] --> L3
    L3["3. AI-Specific Settings<br/>Auto-format, type checking, rulers"] --> L2
    L2["2. Extensions<br/>Python, Jupyter, Pylance, GitLens"] --> L1
    L1["1. Base Editor<br/>VS Code — free, extensible, universal"]

Manos a la Obra

Paso 1: Instalar VS Code

VS Code es el editor recomendado. Es gratuito, se ejecuta en todos los sistemas operativos, tiene soporte de primera clase para notebooks Jupyter, y el ecosistema de extensiones cubre todo lo que necesitas para el trabajo con IA.

Descárgalo desde code.visualstudio.com.

Verifica desde la terminal:

code --version

Si no se encuentra code en macOS, abre VS Code, presiona Cmd+Shift+P, escribe "Shell Command" y selecciona "Install 'code' command in PATH".

Paso 2: Instalar las Extensiones Esenciales

Abre la terminal integrada en VS Code (Ctrl+`` o Cmd+`) e instala las extensiones que importan para el trabajo con IA:

code --install-extension ms-python.python
code --install-extension ms-python.vscode-pylance
code --install-extension ms-toolsai.jupyter
code --install-extension eamodio.gitlens
code --install-extension ms-vscode-remote.remote-ssh
code --install-extension ms-python.debugpy
code --install-extension ms-python.black-formatter
code --install-extension charliermarsh.ruff

Qué hace cada una:

Extensión Por qué
Python Soporte de lenguaje, detección de entorno virtual, run/debug
Pylance Verificación de tipos rápida, autocompletado, resolución de imports
Jupyter Ejecutar notebooks dentro de VS Code, explorador de variables
GitLens Ver quién cambió qué, git blame en línea
Remote SSH Abrir una carpeta en una máquina GPU remota como si fuera local
Debugpy Depuración paso a paso para Python
Black Formatter Formateo automático al guardar, estilo consistente
Ruff Linting rápido, detecta errores comunes

El archivo code/.vscode/extensions.json en esta lección contiene la lista completa de recomendaciones. Cuando abras la carpeta del proyecto, VS Code te pedirá que las instales.

Paso 3: Configurar las Settings

Copia las configuraciones de code/.vscode/settings.json en esta lección, o aplícalas manualmente a través de Settings > Open Settings (JSON).

Las configuraciones clave para el trabajo con IA:

{
    "python.analysis.typeCheckingMode": "basic",
    "editor.formatOnSave": true,
    "editor.rulers": [88, 120],
    "notebook.output.scrolling": true,
    "files.autoSave": "afterDelay"
}

Por qué importan:

  • Verificación de tipos en modo basic: Detecta tipos de argumento incorrectos antes de ejecutar. Ahorra tiempo de depuración en incompatibilidades de forma de tensores y parámetros de API incorrectos.
  • Formateo al guardar: Nunca más pienses en el formateo. Black se encarga de ello.
  • Rulers en 88 y 120: Black ajusta en 88. El marcador de 120 muestra cuándo los docstrings y comentarios se están volviendo demasiado largos.
  • Desplazamiento de salida de notebook: Los bucles de entrenamiento imprimen miles de líneas. Sin desplazamiento, el panel de salida explota.
  • Auto-save: Olvidarás guardar. Tu script de entrenamiento ejecutará código desactualizado. El auto-save lo evita.

Paso 4: Integración con la Terminal

La terminal integrada de VS Code es donde ejecutas scripts de entrenamiento, monitoreas GPUs y gestionas entornos.

Configúrala correctamente:

{
    "terminal.integrated.defaultProfile.osx": "zsh",
    "terminal.integrated.defaultProfile.linux": "bash",
    "terminal.integrated.fontSize": 13,
    "terminal.integrated.scrollback": 10000
}

Atajos útiles:

Acción macOS Linux/Windows
Alternar terminal Ctrl+` Ctrl+`
Nueva terminal Ctrl+Shift+`` Ctrl+Shift+``
Dividir terminal Cmd+\ Ctrl+\

Las terminales divididas son útiles: una para ejecutar tu script, otra para monitorear la GPU con nvidia-smi -l 1 o watch -n 1 nvidia-smi.

Paso 5: Desarrollo Remoto (SSH a Máquinas GPU)

Esta es la extensión más importante para el trabajo con IA. Ejecutarás entrenamientos en máquinas remotas (VMs en la nube, servidores de laboratorio, Lambda, Vast.ai). Remote SSH te permite abrir el sistema de archivos remoto, editar archivos, ejecutar terminales y depurar como si todo fuera local.

Configuración:

  1. Instala la extensión Remote SSH (hecho en el Paso 2).
  2. Presiona Ctrl+Shift+P (o Cmd+Shift+P), escribe "Remote-SSH: Connect to Host".
  3. Ingresa user@your-gpu-box-ip.
  4. VS Code instala su componente de servidor en la máquina remota automáticamente.

Para acceso sin contraseña, configura claves SSH:

ssh-keygen -t ed25519 -C "your-email@example.com"
ssh-copy-id user@your-gpu-box-ip

Agrega el host a ~/.ssh/config por comodidad:

Host gpu-box
    HostName 203.0.113.50
    User ubuntu
    IdentityFile ~/.ssh/id_ed25519
    ForwardAgent yes

Ahora Remote-SSH: Connect to Host > gpu-box conecta al instante.

Alternativas

Cursor

cursor.com es un fork de VS Code con generación de código por IA integrada. Usa el mismo ecosistema de extensiones y formato de configuraciones. Si usas Cursor, todo en esta lección sigue aplicándose. Importa los mismos settings.json y extensions.json.

Windsurf

windsurf.com es otro fork de VS Code con enfoque en IA. La misma historia: mismas extensiones, mismo formato de configuraciones, mismo soporte para Remote SSH.

Vim/Neovim

Si ya usas Vim o Neovim y eres productivo en él, quédate ahí. La configuración mínima para el trabajo con Python en IA:

  • pyright o pylsp para verificación de tipos (vía Mason o instalación manual)
  • nvim-lspconfig para integración con language servers
  • jupyter-vim o molten-nvim para ejecución estilo notebook
  • telescope.nvim para búsqueda de archivos/símbolos
  • none-ls.nvim con black y ruff para formateo/linting

Si aún no usas Vim, no empieces ahora. La curva de aprendizaje competirá con el aprendizaje de la ingeniería de IA. Usa VS Code.

Úsalo

Con esta configuración, tu flujo de trabajo diario se ve así:

  1. Abre la carpeta del proyecto en VS Code (o conéctate vía Remote SSH a una máquina GPU).
  2. Escribe Python en el editor con autocompletado, sugerencias de tipo y errores en línea.
  3. Ejecuta notebooks Jupyter en línea con la extensión Jupyter.
  4. Usa la terminal integrada para scripts de entrenamiento, uv pip install y monitoreo de GPU.
  5. Revisa los cambios con GitLens antes de hacer commit.

Ejercicios

  1. Instala VS Code y todas las extensiones listadas en el Paso 2
  2. Copia el settings.json de esta lección en tu configuración de VS Code
  3. Abre un archivo Python y verifica que Pylance muestre sugerencias de tipo y que Black formatee al guardar
  4. Si tienes acceso a una máquina remota, configura Remote SSH y abre una carpeta en ella

Términos Clave

Término Lo que dice la gente Lo que realmente significa
LSP "Motor de autocompletado" Language Server Protocol: un estándar para que los editores obtengan información de tipos, autocompletados y diagnósticos de un servidor específico del lenguaje
Pylance "El plugin de Python" El language server de Python de Microsoft que usa Pyright para verificación de tipos e IntelliSense
Remote SSH "Trabajar en el servidor" Extensión de VS Code que ejecuta un servidor ligero en una máquina remota y transmite la interfaz a tu editor local
Formateo al guardar "Auto-prettier" El editor ejecuta un formateador (Black, Ruff) cada vez que guardas, por lo que el estilo del código siempre es consistente
0 lifetime access. Curriculum based on AI Engineering from Scratch by Rohit Ghumare (MIT, used under attribution).