Setup Entorno
Guía para principiantes

Configuración del Entorno de Desarrollo

Configura paso a paso un entorno profesional de Ciencia de Datos. R, Python, Git, IA local y más — todo pensado para trabajar con datos sensibles de forma segura y reproducible.

Este módulo es parte del curso de Ciencia de Datos en Salud de Hazla con Datos. No necesitas experiencia previa: solo sigue los pasos en orden.

~2 horas
13 pasos
Desde cero

El timer Pomodoro te ayuda a estudiar en bloques cortos de concentración (25 min) con descansos. Está demostrado que mejora el aprendizaje y reduce la fatiga mental.

01

Introducción

El estándar profesional para Ciencia de Datos.

Bienvenidos al módulo de preparación del curso de Ciencia de Datos en Salud de Hazla con Datos. Este entorno está diseñado para trabajar con datos sensibles en contextos reales como salud, sector público y organizaciones. Puede parecer avanzado al principio, pero lo construiremos paso a paso. Al final del proceso, tendrás en tu equipo personal la misma infraestructura robusta que utilizan los equipos de datos de alto nivel.

No necesitas saber nada de Linux ni de programación. Solo sigue los pasos en orden y copia los comandos — esta guía hace el trabajo pesado por ti.

⚠️

Antes de empezar: selecciona tu sistema operativo

Arriba en el panel lateral (o en la barra superior en móvil) verás un selector Windows / macOS. Selecciona el que corresponda a tu computador para que los comandos e instrucciones se ajusten automáticamente.

Al final de esta guía podrás:

  • Ejecutar R y Python profesionalmente
  • Trabajar con millones de registros sin que tu equipo se congele
  • Usar Git y GitHub para versionar y colaborar
  • Ejecutar modelos de IA localmente con privacidad total
  • Usar IA generativa agéntica como asistente de programación
  • Tener un entorno reproducible, seguro y con backup automatizado
💡

Este entorno está diseñado estratégicamente para:

  • Trabajar con millones de registros: Superando las limitaciones clásicas de Excel.
  • Ejecutar modelos localmente: Sin enviar datos clínicos o sensibles a la nube (Privacidad Total).
  • Garantizar reproducibilidad: Crítico para la transparencia y auditoría en cualquier organización.
  • Entorno profesional listo para producción: Configurado para pasar de desarrollo a despliegue sin fricciones.
  • Bases preparadas para la nube: Las herramientas que aprenderás (Git, terminal Linux, entornos aislados) son las mismas que se usan en AWS, Azure y GCP.

¿Por qué estas herramientas y no otras?

HerramientaPor qué la usamos
WSL2 (Win)Estabilidad y velocidad de Linux sin dejar Windows
Homebrew (Mac)Gestor de paquetes que unifica la instalación de todas las herramientas
Rig + PakControl de versiones de R y paquetes sin errores de compilación
uvEntornos Python rápidos y reproducibles (reemplaza pip + venv + pyenv)
OllamaIA local — sin enviar datos sensibles a la nube
Git + GitHubTrazabilidad y auditoría, crítico en instituciones públicas
Restic + RcloneBackup encriptado y automatizado a la nube

Ventajas Técnicas

  • Velocidad Nativa: Linux gestiona archivos pequeños (Git/Node/R) hasta 10x más rápido que Windows.
  • Control Total: Gestión de versiones para evitar conflictos de software.
  • Seguridad: Backup deduplicado y encriptado por defecto.
⚠️

Requisitos

Sistema Operativo: Windows 10 (v2004+) / Windows 11 o macOS Catalina o superior.

Hardware ideal: 16 GB RAM (8 GB mínimo), 20-30 GB libres, GPU NVIDIA opcional para IA.

🚀

Curso complementario: Terminal y Bash

Una vez que termines de configurar tu entorno, domina la línea de comandos y sácale el máximo provecho a tu setup.

Ir al curso →

02

Terminal Básica

Antes de instalar herramientas, necesitas aprender a hablar con tu computadora.

💡

¿Qué es la Terminal?

La terminal es como un chat con tu computadora. En lugar de hacer clic en carpetas y botones, le escribes instrucciones directas. Es más rápido, más preciso y es la forma en que trabajan los profesionales de datos en todo el mundo.

El Sistema de Archivos

Tu computadora organiza todo en carpetas (directorios) como un árbol invertido:

/
├── home/
│ └── usuario/
│ ├── workspace/ <-- Aquí vivirán tus proyectos
│ │ ├── proyecto-1/
│ │ └── proyecto-2/
│ ├── Documentos/
│ └── .bashrc <-- Archivo de configuración (oculto)
├── usr/
│ └── bin/ <-- Programas instalados
└── tmp/ <-- Archivos temporales

Comandos de Navegación

ComandoQué haceEjemplo
pwdMuestra dónde estás/home/usuario
lsLista archivos y carpetasproyecto-1/ datos.csv
ls -laLista TODO (incluye ocultos y detalles)drwxr-xr-x .git/
cd carpetaEntra a una carpetacd workspace
cd ..Sube un nivelDe proyecto-1/ a workspace/
cd ~Va a tu carpeta personal/home/usuario

Comandos de Archivos

ComandoQué haceEjemplo
mkdir nombreCrea una carpetamkdir mi-proyecto
cp origen destinoCopia un archivocp datos.csv backup.csv
mv origen destinoMueve o renombramv viejo.txt nuevo.txt
rm archivoBorra un archivorm basura.tmp
rm -r carpetaBorra una carpeta y todo su contenidorm -r proyecto-viejo
⚠️

Cuidado

rm NO envía a la papelera de reciclaje. Lo que borres con rm se pierde para siempre. Úsalo con precaución.

Ver Contenido

ComandoQué hace
cat archivoMuestra todo el contenido de un archivo
head archivoMuestra las primeras 10 líneas
tail archivoMuestra las últimas 10 líneas
clearLimpia la pantalla de la terminal

Atajos de Teclado Esenciales

Tab

Autocompletar nombres de archivos y carpetas. ¡Úsalo siempre!

↑ ↓

Flechas Arriba/Abajo

Navegar por comandos anteriores. No reescribas, recicla.

Ctrl + C

Cancela cualquier comando que se haya colgado o está tardando mucho.

💡

Windows: Dos Terminales

En Windows tendrás dos terminales. Es importante saber cuándo usar cada una:

PowerShellUbuntu (WSL)
Cuándo usarlaSolo para gestionar WSLPara TODO lo demás
Ejemploswsl —install, wsl —shutdowngit, node, R, python
Cómo abrirlaBuscar “PowerShell”Buscar “Ubuntu”

Regla simple: Solo usa PowerShell para instalar o reiniciar WSL. Para todo el curso, usa Ubuntu.

💡

Mac: Terminal con Zsh

Tu Mac ya viene con una terminal lista. Usa la app Terminal (búscala en Spotlight con Cmd + Espacio). Desde macOS Catalina usa Zsh en lugar de Bash, pero todos los comandos de esta guía funcionan igual.

Ejercicio Práctico

Ejecuta estos 10 comandos en tu terminal. Copia el bloque y ejecútalos en orden:

  1. pwd — ¿Dónde estoy?
  2. cd ~ — Ir a tu carpeta personal
  3. mkdir terminal-practica — Crear una carpeta de prueba
  4. cd terminal-practica — Entrar a la carpeta
  5. echo "..." > mi-archivo.txt — Crear un archivo con texto
  6. cat mi-archivo.txt — Ver el contenido del archivo
  7. cp mi-archivo.txt copia.txt — Crear una copia
  8. ls -la — Listar archivos para verificar
  9. clear — Limpiar la pantalla
  10. cd ~ && rm -r terminal-practica — Volver al inicio y borrar la práctica
Terminal window
pwd
cd ~
mkdir terminal-practica
cd terminal-practica
echo "Hola, soy un archivo de prueba" > mi-archivo.txt
cat mi-archivo.txt
cp mi-archivo.txt copia.txt
ls -la
clear
cd ~ && rm -r terminal-practica

Si todos los comandos funcionaron sin errores, ¡ya dominas lo básico de la terminal!

03

El Motor (Sistema Operativo)

En Windows, instala un Linux real dentro del sistema (WSL2). En Mac, necesitas un gestor de paquetes.

💡

¿Qué es WSL2? (Explicación para Humanos)

Imagina que tu computadora habla dos idiomas. Windows es genial para Office, correos y navegar. Pero las herramientas de Ciencia de Datos (R, Python, servidores) funcionan “nativo” en Linux.

WSL2 es un “traductor mágico” de alta velocidad. Te permite tener un Linux real (Ubuntu) viviendo dentro de tu Windows, compartiendo archivos y recursos, sin que tu PC se ponga lento como con las máquinas virtuales antiguas.

1. Instalación

Abre PowerShell como Administrador: haz clic derecho en el botón de Inicio (icono de Windows, esquina inferior izquierda) y selecciona Terminal (Administrador) o Windows PowerShell (Administrador). Si te pregunta si quieres permitir cambios, haz clic en . Luego ejecuta:

Terminal window
wsl --install -d Ubuntu-24.04
⚠️

Después del comando:

  1. Reinicia tu computadora (Inicio → Reiniciar).
  2. Al volver, se abrirá automáticamente una ventana negra. Te pedirá crear un nombre de usuario y contraseña para tu nuevo sistema Linux.
  3. Importante: al escribir la contraseña NO aparecen caracteres en pantalla (ni puntos ni asteriscos). Es normal — solo escribe y presiona Enter.
  4. Este usuario/contraseña es independiente de tu cuenta de Windows. Recuérdalo bien.

2. Validar tu Versión

Es crucial confirmar que estás usando la versión 2 (WSL2) y no la 1 (que es lenta). En PowerShell ejecuta:

Terminal window
wsl -l -v

Busca la columna VERSION. Debería decir 2 al lado de Ubuntu.

3. Configurar Idioma Español

WSL viene en inglés por defecto. Para que R, Python, Quarto y otras herramientas muestren fechas, acentos y caracteres correctamente, sigue estos 3 pasos en tu terminal de Ubuntu:

💡

¿Qué es sudo?

Es como “ejecutar como administrador” en Windows. La primera vez te pedirá la contraseña de Linux que creaste al instalar WSL (no la de Windows). Al escribirla, no aparecen caracteres — es normal.

Paso A: Generar el locale español

Terminal window
sudo locale-gen es_ES.UTF-8

Paso B: Establecerlo como idioma del sistema

Terminal window
sudo update-locale LANG=es_ES.UTF-8

Paso C: Agregar variables de entorno al perfil

Esto asegura que programas como Quarto y R usen español al renderizar (evita acentos rotos):

Terminal window
echo 'export LC_ALL=es_ES.UTF-8' >> ~/.bashrc
echo 'export LANG=es_ES.UTF-8' >> ~/.bashrc
source ~/.bashrc

Verificar

Cierra y abre la terminal de Ubuntu, luego ejecuta:

Terminal window
locale

Deberías ver LANG=es_ES.UTF-8 y LC_ALL=es_ES.UTF-8 en la salida. Si es así, quedó bien.

¿Olvidaste tu contraseña de WSL?

No te preocupes. Si tienes acceso a Windows, recupérala así:

  1. Abre PowerShell (o CMD) como Administrador.
  2. Entra como root (superusuario) sin contraseña:
Terminal window
wsl -u root

Cambia tu contraseña (reemplaza tu_usuario por tu nombre real):

Terminal window
passwd tu_usuario

Comandos Útiles de WSL

Guarda estos comandos para PowerShell, te ayudarán a gestionar tus instalaciones:

Ver qué versiones de Linux puedes instalar:

Terminal window
wsl --list --online

Ver tus distros instaladas y estado:

Terminal window
wsl -l -v

Apagar WSL (útil si se cuelga o consume mucha RAM):

Terminal window
wsl --shutdown
💡

¿Qué es Homebrew?

Homebrew es el gestor de paquetes de Mac. Es como una tienda de apps para la terminal — te permite instalar, actualizar y desinstalar herramientas con un solo comando (brew install ...). Sin Homebrew, tendrías que descargar manualmente cada herramienta desde diferentes sitios web.

Abre la aplicación Terminal e instala Homebrew:

Terminal window
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
⚠️

¡No ignores el final!

Cuando termine la instalación, verás una sección que dice “Next steps:”. Debes copiar y ejecutar los comandos que te muestra. Se verán parecidos a esto (la ruta puede variar):

Terminal window
echo >> /Users/tu_usuario/.zprofile
echo 'eval "$(/opt/homebrew/bin/brew shellenv)"' >> /Users/tu_usuario/.zprofile
eval "$(/opt/homebrew/bin/brew shellenv)"

Copia y pega exactamente lo que tu terminal muestre (no este ejemplo). Luego verifica:

Terminal window
brew --version

Si muestra un número de versión (ej: Homebrew 4.x.x), quedó bien.

04

Herramientas Base

Git, Curl, compiladores y utilidades esenciales.

HerramientaPara qué sirve
build-essential / Xcode CLTCompiladores C/C++ — necesarios para que R y Python puedan instalar paquetes que usan código compilado
gitControl de versiones — lo usaremos a fondo en el Paso 10
curl / wgetDescargadores de archivos desde la terminal (muchos instaladores los necesitan)
treeVisualiza la estructura de carpetas como un árbol — muy útil para entender proyectos

En tu terminal de Ubuntu:

Terminal window
sudo apt update && sudo apt upgrade -y
sudo apt install -y build-essential git curl wget unzip tree

Compiladores (Xcode Command Line Tools)

Necesarios para que R y Python puedan compilar paquetes con C/C++:

Terminal window
xcode-select --install

Se abrirá un popup del sistema. Haz clic en “Instalar” y espera a que termine. Si dice que ya están instalados, perfecto.

Herramientas vía Homebrew

En tu Terminal:

Terminal window
brew update
brew install git curl wget tree
05

R Moderno (Rig + Pak)

Rig gestiona versiones y Pak instala librerías a velocidad luz.

💡

¿Qué son estas herramientas?

  • Rig: Gestor de versiones de R (como NVM para Node). Te permite tener múltiples versiones instaladas y cambiar entre ellas.
  • Pak: Instalador rápido de paquetes de R. Resuelve dependencias automáticamente (no más errores de compilación).
  • Tidyverse: Colección de paquetes de R para ciencia de datos (dplyr, ggplot2, readr…). Es el estándar de la industria.

1. Instalar Rig

En tu terminal de Ubuntu:

Terminal window
curl -Ls https://github.com/r-lib/rig/releases/download/latest/rig-linux-latest.tar.gz | sudo tar xz -C /usr/local

2. Dependencias Críticas (Ubuntu)

Necesario para compilar Tidyverse:

Terminal window
sudo apt install -y libcurl4-openssl-dev libfontconfig1-dev libfreetype6-dev libfribidi-dev libharfbuzz-dev libjpeg-dev libpng-dev libpq-dev libssl-dev libtiff-dev libwebp-dev libx11-dev libxml2-dev pandoc

¿Por qué es necesario esto?

Muchos paquetes de R no son código R puro: internamente tienen código C o C++ que se compila en tu máquina al instalarlos. Para compilar ese código, R necesita encontrar las bibliotecas de sistema correspondientes (los archivos -dev). Ubuntu base y WSL no las incluyen por defecto.

Sin estas dependencias, pak fallará con errores crípticos tipo cannot find -lssl o fatal error: libpq-fe.h: No such file or directory, incluso aunque pak mismo funcione perfectamente.

Las más críticas son:

  • libpq-dev — biblioteca de PostgreSQL. La necesitan paquetes como RPostgres y DBI para conectarse a bases de datos. También la usa pak internamente al resolver algunas dependencias.
  • libssl-dev — cabeceras de OpenSSL. Imprescindible para conexiones seguras (HTTPS). La usan pak, httr2, curl y prácticamente cualquier paquete que descargue datos de internet.
  • El resto (libfreetype, libharfbuzz, libjpeg, etc.) son necesarias para que ggplot2 pueda renderizar gráficos con fuentes e imágenes correctamente.

1. Instalar Rig

En Mac, primero agregamos la fuente (“tap”) y luego instalamos:

Terminal window
brew tap r-lib/rig && brew install rig

2. Dependencias Críticas (Mac)

Terminal window
brew install openssl curl freetype harfbuzz fribidi libpng libtiff jpeg libxml2 pandoc

3. Activar R y Tidyverse

Terminal window
sudo rig add release
sudo rig system add-pak

Entra a R escribiendo R en tu terminal e instala:

pak::pkg_install(c("tidyverse", "languageserver", "nx10/httpgd"))

Para salir de R

Escribe q() y presiona Enter. Si pregunta “Save workspace image?”, escribe n y presiona Enter.

06

Python (uv)

Instala Python con uv, un gestor todo-en-uno ultrarrápido escrito en Rust.

💡

¿Qué es uv?

uv es un gestor todo-en-uno para Python, escrito en Rust. Reemplaza a pip, venv y pyenv en una sola herramienta ultrarrápida. Con uv puedes instalar Python, crear entornos virtuales y gestionar dependencias.

1. Instalar uv (Gestor de Python)

Ejecuta en tu terminal:

Terminal window
curl -LsSf https://astral.sh/uv/install.sh | sh
⚠️

Importante

Cierra y abre tu terminal para que el comando uv esté disponible.

En WSL: cierra la ventana de Ubuntu (la X) y búscala de nuevo en el menú Inicio → “Ubuntu”.

En Mac: cierra Terminal (Cmd+Q) y ábrela de nuevo.

2. Instalar Python

Terminal window
uv python install 3.12

3. Verificar

Terminal window
uv python list
python3 --version
07

Workspace & Organización

Una buena organización de archivos es la base de cualquier proyecto profesional.

⚠️

El error más común en WSL

Trabajar sobre archivos que están en el disco de Windows (C:) en lugar del sistema de archivos de Linux. Impacto Real: Si trabajas en la zona incorrecta, todo será 5 a 20 veces más lento (Git, npm, DuckDB).

❌ MAL/mnt/c/Users/…Disco Lento (Windows)
✅ BIEN/home/usuario/…Disco Rápido (Linux)

La Regla de Oro: Todo lo relacionado con Data Science VIVE en WSL. Windows es solo la pantalla.

💡

El Puente Windows ↔ WSL

Desde WSL puedes ver todos los archivos de Windows. Tu disco C: se monta automáticamente como /mnt/c/. Así se traduce una ruta:

En WindowsEn WSL (Linux)
C:\Users\TuUsuario\Documentos/mnt/c/Users/TuUsuario/Documentos
C:\Users\TuUsuario\Desktop/mnt/c/Users/TuUsuario/Desktop
C:\Users\TuUsuario\OneDrive/mnt/c/Users/TuUsuario/OneDrive

Ejemplo práctico: Si tienes un Excel en “Mis Documentos” y quieres leerlo desde R en WSL:

# En R dentro de WSL
library(readxl)
datos <- read_excel("/mnt/c/Users/TuUsuario/Documentos/datos.xlsx")

Importante: Esto sirve para leer archivos puntuales. Tus proyectos de código siempre deben vivir en /home/ (WSL) por rendimiento.

1. Crear Carpeta Maestra

En tu terminal de Ubuntu (no en PowerShell):

Terminal window
cd ~
mkdir workspace
cd workspace

2. Crear Alias (Atajo ‘ws’)

En tu terminal de Ubuntu:

Terminal window
echo 'alias ws="cd ~/workspace"' >> ~/.bashrc
source ~/.bashrc

Migrar Carpeta Existente (Windows → WSL)

Si ya tienes un proyecto en Windows (ej: en OneDrive) y quieres pasarlo a Linux:

Opción A: Terminal (Profesional & Rápido)

El comando cp -r copia carpetas enteras. ¡Usa comillas si la ruta tiene espacios!

Terminal window
cp -r "/mnt/c/Users/TuUsuario/OneDrive/Tu Carpeta" ~/workspace/

Opción B: Visual (Arrastrar)

  1. En la terminal WSL, escribe explorer.exe . (con el punto).
  2. Se abrirá una ventana de Windows dentro de Linux.
  3. Arrastra tu carpeta desde otra ventana de Windows hacia esta.
⚠️

Importante

Si copias un proyecto de código, borra las carpetas node_modules, .venv o .git y genéralas de nuevo en Linux. Las versiones de Windows suelen fallar aquí.

💡

Organización en Mac

Aunque Mac no tiene el problema de discos de Windows, es vital mantener el orden. Crearemos una carpeta workspace en la raíz de tu usuario para separar código de documentos personales.

1. Crear Carpeta Maestra

En tu Terminal:

Terminal window
cd ~
mkdir workspace
cd workspace

2. Crear Alias (Atajo ‘ws’)

En tu Terminal:

Terminal window
echo 'alias ws="cd ~/workspace"' >> ~/.zshrc
source ~/.zshrc
08

Git & GitHub

Git rastrea cada cambio en tu código. GitHub lo respalda en la nube.

💡

¿Qué es Git? (Explicación para Humanos)

Git es como Ctrl+Z con superpoderes para todo tu proyecto. Cada vez que haces un “commit”, Git toma una foto (snapshot) del estado completo de tus archivos. Puedes volver a cualquier foto anterior, ver qué cambió y cuándo, y trabajar en paralelo sin miedo a romper nada.

A diferencia de guardar archivos normalmente (que sobreescribe), Git guarda el historial completo. Es la diferencia entre tener un solo “Guardar” y tener una línea de tiempo infinita.

El Flujo de Git

📝
Working Directory
Tus archivos editados
📦
Staging Area
Listos para foto
💾
Repository Local
Foto guardada
☁️
GitHub
Respaldo en la nube
git addgit commitgit push☁️

Configuración Inicial

En tu terminal, configura tu identidad (esto aparecerá en cada commit):

Terminal window
git config --global user.name "Tu Nombre"
git config --global user.email "tu@email.com"
git config --global init.defaultBranch main
⚠️

Importante

Usa el mismo email que tienes (o tendrás) en tu cuenta de GitHub. Si no coinciden, tus commits no se vincularán a tu perfil y aparecerán como un usuario desconocido.

Ejercicio Guiado: Tu Primer Repositorio

Ejecuta cada comando en tu terminal y observa qué pasa:

  1. mkdir && cd — Crear carpeta y entrar
  2. git init — Inicializar Git (crea la carpeta oculta .git)
  3. echo — Crear un archivo README
  4. git status — Ver estado: archivo “sin rastrear” (rojo)
  5. git add — Preparar para snapshot (mover a staging)
  6. git status — Ver estado: archivo en “staging” (verde)
  7. git commit — Tomar la foto (commit)
  8. git log — Ver el historial
Terminal window
mkdir mi-primer-repo && cd mi-primer-repo
git init
echo "# Mi Proyecto" > README.md
git status
git add README.md
git status
git commit -m "primer commit: agregar README"
git log
💡

Nota Windows

Git se instaló en el Paso 3 dentro de WSL. Todo lo de Git se hace desde la terminal de Ubuntu, no desde PowerShell.

Instalar GitHub CLI

En tu terminal de Ubuntu:

Terminal window
sudo apt install gh
💡

Nota Mac

Git viene preinstalado o se instaló con Homebrew en el Paso 3. Todo funciona directamente desde Terminal.

Instalar GitHub CLI

Terminal window
brew install gh

Conectar con GitHub

  1. Crea una cuenta en github.com (si no tienes una).
  2. Autentícate con GitHub CLI:
Terminal window
gh auth login

Te hará 4 preguntas. Responde así:

  1. Where do you use GitHub?GitHub.com
  2. What is your preferred protocol?HTTPS
  3. Authenticate Git with your GitHub credentials?Yes
  4. How would you like to authenticate?Login with a web browser

Se mostrará un código de 8 caracteres en la terminal (ej: A1B2-C3D4) y se intentará abrir el navegador.

Si el navegador no se abre automáticamente (común en WSL): copia el código, abre manualmente github.com/login/device en tu navegador de Windows, pega el código e inicia sesión.

  1. Crea el repositorio y súbelo, todo desde la terminal:
Terminal window
cd mi-primer-repo
gh repo create mi-primer-repo --public --source=. --remote=origin --push

Esto crea el repo en GitHub, lo conecta y sube tu código en un solo comando.

Cheat Sheet: Comandos Git Esenciales

ComandoQué hace
git statusVer qué archivos cambiaron
git add archivoPreparar archivo para commit
git add .Preparar TODOS los archivos
git commit -m “mensaje”Guardar snapshot con descripción
git pushSubir commits a GitHub
git pullDescargar cambios de GitHub
git log —onelineVer historial compacto

Para Profundizar

09

IDE & Verificación

Un editor moderno conectado y un script para validar que todo funciona.

💡

¿Qué es Positron?

Positron es un IDE (editor de código) creado por el equipo de RStudio/Posit, diseñado específicamente para Ciencia de Datos. Combina lo mejor de VS Code con soporte nativo para R y Python (consolas integradas, visor de datos, gráficos interactivos). Es gratuito y de código abierto.

1. Positron / VS Code

Descarga Positron desde positron.posit.co e instálalo (en Windows descarga el .exe, en Mac el .dmg).

💡

Conectar Positron a WSL

Positron se instala en Windows, pero necesita conectarse a tu Linux (WSL) donde viven todas las herramientas.

  1. Abre Positron.
  2. Presiona Ctrl+Shift+P y escribe WSL.
  3. Selecciona “Connect to WSL”.
  4. Ve a Archivo → Abrir Carpeta y navega a /home/tu_usuario/workspace.

A partir de ahora, siempre abre Positron y conéctate a WSL antes de trabajar.

Atajo: Abrir proyectos desde la terminal

Puedes crear una función en tu terminal para abrir Positron con conexión WSL directamente, sin tener que conectarte manualmente cada vez:

Terminal window
echo 'positron() {
"/mnt/c/Program Files/Positron/bin/positron" --remote wsl+Ubuntu-24.04 "$(readlink -f "${1:-.}")"
}' >> ~/.bashrc
source ~/.bashrc

Ahora puedes usarla así:

  • positron . — abre el directorio actual en Positron con WSL
  • positron ~/workspace/otro-proyecto — abre una ruta específica
  • positron (sin argumentos) — también abre el directorio actual

Tip para Mac

Si el comando positron en la terminal dice “command not found”, abre Positron, presiona Cmd+Shift+P y escribe “Install ‘positron’ command in PATH”. Luego podrás abrir proyectos con positron .

2. Examen Final

Copia y pega este script en tu terminal para verificar que todo quedó instalado:

Terminal window
check() { if command -v $1 >/dev/null 2>&1; then echo "✅ $1: OK"; else echo "❌ $1: Faltante"; fi; }
check "git"; check "gh"; check "node"; check "npm"; check "R"; check "uv"; check "python3"; check "ollama"; check "restic"; check "rclone"

Si todas las líneas dicen OK, ¡completaste la configuración!

⚠️

¿Algo sale como 'Faltante'?

Vuelve al paso donde se instala esa herramienta y repite los comandos. Si sigues con problemas, verifica que cerraste y abriste tu terminal después de cada instalación.

3. ¿Y ahora qué?

Tu entorno está listo. El siguiente paso es dominar la herramienta que más vas a usar: la terminal.

🚀

Siguiente paso: Curso de Terminal y Bash

Aprende a moverte con soltura en la línea de comandos, automatizar tareas y sacarle el máximo provecho a tu nuevo entorno.

Ir al curso →

01

Node.js (NVM)

Avanzado

Usamos NVM para instalar Node.js sin permisos de administrador.

💡

¿Qué es Node.js y por qué lo necesitamos?

Node.js es un motor de JavaScript que funciona fuera del navegador. Muchas herramientas modernas de IA (como Claude Code y Gemini CLI) están construidas con Node. NVM (Node Version Manager) te permite instalar y cambiar versiones de Node sin permisos de administrador — evitando conflictos y errores de permisos.

1. Instalar NVM

Ejecuta en tu terminal:

Terminal window
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.1/install.sh | bash
⚠️

Importante

Cierra y abre tu terminal para que el comando nvm esté disponible.

En WSL: cierra la ventana de Ubuntu (la X) y búscala de nuevo en el menú Inicio → “Ubuntu”.

En Mac: cierra Terminal (Cmd+Q) y ábrela de nuevo.

Verifica que NVM se instaló correctamente:

Terminal window
nvm --version

Si muestra un número (ej: 0.40.1), todo bien. Si dice “command not found”, cierra y abre la terminal de nuevo.

2. Instalar Node

Terminal window
nvm install --lts

Verifica la instalación:

Terminal window
node --version
npm --version

Ambos deben mostrar un número de versión.

02

Gemini CLI & Claude Code

Avanzado

Instala y configura agentes de IA en tu terminal.

💡

¿Qué son los agentes de IA en terminal?

Son herramientas que te permiten usar inteligencia artificial directamente desde la terminal, sin abrir un navegador. Pueden leer tu código, sugerir cambios, ejecutar comandos y ayudarte a programar más rápido. Requieren Node.js (instalado en el paso anterior).

⚠️

Importante: la IA no reemplaza aprender a programar

Usar IA generativa como asistente es una excelente idea… si ya sabes programar. Si estás comenzando, puede ser contraproducente: obtienes código que funciona pero no entiendes, y eso frena tu aprendizaje real.

Si estás empezando:

  • Úsala para pedir explicaciones (“¿qué hace este código?”, “¿por qué da este error?”)
  • Úsala como guía conceptual, no como generador de soluciones
  • Escribe tú el código, aunque sea más lento y cometas errores — ahí está el aprendizaje

Generar código con IA solo tiene sentido cuando ya sabes evaluar si lo que genera es correcto, seguro y adecuado para tu contexto. Llegar a ese punto toma tiempo y práctica. No hay atajos.

1. Instalar las herramientas

Gemini CLI (documentación oficial):

Terminal window
npm install -g @google/gemini-cli

Claude Code (documentación oficial):

Terminal window
curl -fsSL https://claude.ai/install.sh | bash

2. Configurar Gemini CLI

Gemini CLI tiene una capa gratuita generosa con solo una cuenta de Google. También ofrece planes de pago con mayor cuota de uso a través de Google AI Studio.

✨ Autenticación

Ejecuta gemini en tu terminal. Se abrirá el navegador para iniciar sesión con tu cuenta de Google. Acepta los permisos y listo.

Terminal window
gemini

Una vez autenticado, ya puedes usar Gemini como agente de IA en la terminal. Escribe /quit para salir.

Pruébalo con un prompt real:

Terminal window
gemini -p "Actúa como un experto en salud pública y resume los beneficios de usar R para análisis epidemiológico."

3. Configurar Claude Code

Claude Code (requiere suscripción de pago)

Disponible en los planes Pro (uso limitado), Max (uso ampliado) o mediante API de pago. Ejecuta claude en tu terminal y sigue las instrucciones para autenticarte.

Terminal window
claude
03

Ollama (IA Local)

Avanzado

Ejecuta modelos de IA directamente en tu computadora, sin enviar datos a la nube.

💡

¿Qué es Ollama?

Ollama te permite ejecutar modelos de inteligencia artificial (LLMs como Llama, Mistral, Gemma) directamente en tu computadora, sin enviar datos a la nube. Ideal para datos sensibles o para experimentar sin costo.

1. Instalar Ollama

Ollama en WSL2

En tu terminal de Ubuntu, primero instala la dependencia necesaria:

Terminal window
sudo apt-get install -y zstd

Luego instala Ollama (documentación oficial):

Terminal window
curl -fsSL https://ollama.com/install.sh | sh

Verifica que se instaló correctamente:

Terminal window
ollama -v

Inicia el servidor de Ollama:

Terminal window
ollama serve

WSL2 accede directo a tu GPU NVIDIA. No instales drivers en Linux, usa los de Windows.

Boost de RAM para Modelos Grandes

Por defecto, WSL2 solo usa el 50% de tu RAM. Si Ollama se cierra o va lento, asigna más memoria creando un archivo de configuración en Windows.

  1. En Windows, ve a tu carpeta de usuario (C:\Users\TuUsuario\).
  2. Crea un archivo llamado .wslconfig.
  3. Abre con Bloc de notas y pega esto (ajusta memory a tu gusto):
[wsl2]
memory=12GB
processors=8
swap=4GB

Luego reinicia WSL en PowerShell con wsl --shutdown.

Instalar Ollama (Mac)

Descarga la App oficial para Apple Silicon: Descargar Ollama para Mac · Documentación oficial

  1. Abre el archivo .dmg que descargaste.
  2. Arrastra Ollama a la carpeta Aplicaciones.
  3. Abre Ollama desde Aplicaciones. Si macOS dice que no puede verificar el desarrollador, ve a Preferencias del Sistema → Privacidad y Seguridad y haz clic en “Abrir de todas formas”.
  4. Aparecerá un ícono de llama en la barra superior de tu Mac. Eso significa que Ollama está corriendo.

Al ejecutar la app, se instala automáticamente el comando ollama en tu terminal.

2. Descargar tu Primer Modelo

Ollama necesita al menos un modelo para funcionar. Descarga uno ligero (~2 GB):

Terminal window
ollama pull llama3.2

Pruébalo con una pregunta:

Terminal window
ollama run llama3.2

Se abrirá un chat interactivo. Escribe cualquier pregunta y presiona Enter. Para salir, escribe /bye.

04

Backup Blindado

Avanzado

Estrategia 3-2-1 automatizada con Restic y Rclone.

💡

¿Qué es la estrategia 3-2-1?

3 copias de tus datos, en 2 medios diferentes, con 1 copia fuera de tu ubicación (la nube). Es el estándar de la industria para no perder datos.

  • Restic: Toma “fotos” (snapshots) de tu workspace. Solo guarda lo que cambió (deduplicación), y todo queda encriptado automáticamente.
  • Rclone: El “puente” que conecta Restic con servicios de nube (OneDrive, Google Drive, Dropbox). Tú eliges dónde guardar.
📂
Tu Workspace
Código Local

→ Encriptación →

☁️
OneDrive
Snapshot Seguro

1. Instalación

Terminal window
sudo apt install -y rclone restic
Terminal window
brew install rclone restic

2. Configurar Nube

Ejecuta en tu terminal y sigue el asistente interactivo paso a paso:

Terminal window
rclone config

Responde así en cada pregunta:

  1. e/n/d/r/c/s/q> → escribe n (new remote) y presiona Enter.
  2. name> → escribe onedrive y presiona Enter.
  3. Storage> → busca el número de “Microsoft OneDrive” (suele ser ~33), escríbelo y presiona Enter. También puedes escribir onedrive directamente.
  4. client_id> → déjalo vacío (solo presiona Enter).
  5. client_secret> → déjalo vacío (solo presiona Enter).
  6. region> → escribe 1 (Microsoft Cloud Global) y presiona Enter.
  7. Edit advanced config? → escribe n y presiona Enter.
  8. Use auto config? → escribe y. Se abrirá tu navegador para iniciar sesión con tu cuenta de Microsoft.
  9. config_type> → escribe 1 (OneDrive Personal) y presiona Enter.
  10. Drive OK? → escribe y y presiona Enter.
  11. y/e/d> → escribe y para confirmar y presiona Enter.
  12. e/n/d/r/c/s/q> → escribe q para salir del asistente.

Si usas Google Drive o Dropbox en lugar de OneDrive, el proceso es similar: solo elige el servicio correspondiente en el paso 3.

3. Inicializar & Script

Terminal window
restic -r rclone:onedrive:Backup_Curso init
⚠️

Contraseña de Restic

Este comando te pedirá crear una contraseña nueva (no es la de tu sistema ni la de OneDrive). Es la clave que encripta tus backups.

  • Escríbela en un lugar seguro (un gestor de contraseñas, un papel guardado, etc.).
  • Si la pierdes, no podrás recuperar tus backups. No hay forma de resetearla.
  • Te la pedirá cada vez que hagas un backup o restaures archivos.

Crea el script de automatización con un solo comando:

cat << 'SCRIPT' > ~/backup.sh
#!/bin/bash
# ============================
# Backup Blindado - Restic + Rclone
# ============================
# --- Variables configurables ---
REPO="rclone:onedrive:Backup_Curso"
SOURCE="$HOME/workspace"
RETENTION_DAYS=30
RETENTION_WEEKLY=8
RETENTION_MONTHLY=6
# --- Exclusiones ---
EXCLUDES=(
--exclude="node_modules"
--exclude=".venv"
--exclude="__pycache__"
--exclude=".Rproj.user"
--exclude=".DS_Store"
--exclude="*.tmp"
)
echo "=== Fase 1: Backup ==="
restic -r "$REPO" backup "$SOURCE" "${EXCLUDES[@]}" --verbose
echo "=== Fase 2: Limpieza de snapshots antiguos ==="
restic -r "$REPO" forget \
--keep-daily "$RETENTION_DAYS" \
--keep-weekly "$RETENTION_WEEKLY" \
--keep-monthly "$RETENTION_MONTHLY" \
--prune
echo "=== Fase 3: Verificación de integridad ==="
restic -r "$REPO" check
echo "=== Backup completado: $(date) ==="
SCRIPT
chmod +x ~/backup.sh

Cómo usar el script

  • Ejecución manual: ~/backup.sh
  • Te pedirá la contraseña de Restic que creaste arriba.
  • Para automatizar (cada día a las 2 AM):
Terminal window
crontab -e

Se abrirá un editor de texto en la terminal. Si es nano (lo más común): usa las flechas para ir al final del archivo, pega la siguiente línea, luego presiona Ctrl+O (guardar) y Ctrl+X (salir).

Agrega esta línea al final:

Terminal window
0 2 * * * RESTIC_PASSWORD="tu_password" ~/backup.sh >> ~/backup.log 2>&1

0 2 * * * = “a las 2:00 AM, todos los días”. Reemplaza tu_password por la contraseña que creaste al inicializar Restic.

Tip: Para confirmar que los backups de la madrugada corrieron sin errores, lee el archivo de registro:

Terminal window
cat ~/backup.log

Si el archivo se vuelve muy largo con los días, usa tail ~/backup.log para ver solo los últimos eventos.

🚀

¿Quieres entender mejor los scripts y la terminal?

En esta sección usamos scripts Bash, crontab y redirección de salida. Profundiza en estos temas y aprende a automatizar tareas como un profesional.

Ir al Curso de Terminal y Bash →

Siguiente 0. Introducción