> For the complete documentation index, see [llms.txt](https://elguerre.gitbook.io/de0an/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://elguerre.gitbook.io/de0an/capitulo-11-backstage-y-un-futuro-prometedor/comenzando-con-ia.md).

# Comenzando con IA

Si después de leer este capítulo tienes ganas de probar, esta sección es para ti. Una guía práctica para dar tus primeros pasos con IA como herramienta de desarrollo.

No necesitas ser experto en inteligencia artificial. No necesitas un máster en machine learning. Solo necesitas curiosidad y las ganas de probar algo nuevo — que, como hemos dicho muchas veces a lo largo de este libro, es lo que nos define como desarrolladores.

## Instalar Claude Code

Claude Code es un agente de IA que funciona desde la terminal. Para instalarlo:

```bash
# Requisito: Node.js 18 o superior
npm install -g @anthropic-ai/claude-code
```

Una vez instalado, navega a la carpeta de tu proyecto y ejecútalo:

```bash
cd mi-proyecto
claude
```

Claude Code analizará la estructura de tu proyecto y estará listo para ayudarte. Puedes pedirle que lea archivos, escriba código, ejecute comandos, cree tests... todo desde la terminal.

## Los conceptos clave

Para sacar el máximo partido a un agente de IA como Claude Code, conviene entender algunos conceptos:

**Contexto.** La IA trabaja mejor cuanto más contexto tiene sobre tu proyecto. Claude Code lee automáticamente la estructura de archivos, pero tú puedes enriquecerlo:

* **`CLAUDE.md`**: un archivo en la raíz de tu proyecto que describe las convenciones, la estructura y las reglas del proyecto. Es como un "manual de instrucciones" para la IA.
* **Archivos de memoria**: Claude Code puede recordar decisiones y patrones entre sesiones.

**Sub-agentes.** Claude Code puede delegar tareas complejas a agentes especializados que trabajan en paralelo. Por ejemplo, mientras un sub-agente busca archivos relevantes, otro puede estar analizando la arquitectura.

**Skills.** Capacidades especializadas que la IA puede invocar: crear commits con formato convencional, revisar pull requests, generar documentación...

## Tu primer proyecto con IA

Imagina que quieres crear una aplicación de tareas con Angular. Así sería el flujo:

```
> Crea un nuevo proyecto Angular con routing, Material Design
  y un componente Home con una lista de tareas.
```

La IA:

1. Ejecutará `ng new` con las opciones adecuadas.
2. Añadirá Angular Material (`ng add @angular/material`).
3. Creará el componente Home con la lista.
4. Configurará el routing.
5. Te mostrará el resultado y te preguntará si quieres ajustar algo.

A partir de ahí, el diálogo continúa:

```
> Añade un formulario para crear nuevas tareas con validación.
```

```
> Crea un servicio que conecte con una API REST en /api/tareas.
```

```
> Genera tests unitarios para el servicio de tareas.
```

Cada instrucción construye sobre lo anterior. La IA mantiene el contexto de todo lo que ha hecho.

## El paradigma: desarrollador como director de orquesta

La forma de trabajar con IA cambia tu rol, pero no lo elimina. Piensa en ti como un **director de orquesta**:

* **Sabes qué música quieres**: defines los requisitos, la arquitectura, las prioridades.
* **Conoces los instrumentos**: entiendes las tecnologías, los patrones, las buenas prácticas.
* **Diriges la ejecución**: guías a la IA con instrucciones claras y específicas.
* **Escuchas el resultado**: revisas el código generado, lo evalúas, lo ajustas.

La diferencia con el "Vibe Coding" del que hablamos antes es que tú tienes el control. Sabes qué estás pidiendo y puedes evaluar si lo que recibes es correcto.

## Saber qué pedir vs. saber cómo pedir

Dos habilidades complementarias:

**Saber qué pedir** requiere conocimiento técnico. Si no sabes qué es un Signal, un Service Worker o una Minimal API, no podrás pedirle a la IA que los implemente correctamente. Por eso, todo lo que aprendiste en los capítulos anteriores — y en tu carrera — sigue siendo valioso.

**Saber cómo pedir** es la nueva habilidad. La IA responde mejor a instrucciones:

* **Específicas**: "Crea un componente Angular con Signals que muestre una lista paginada de tareas" es mejor que "hazme una lista".
* **Con contexto**: "Siguiendo el patrón que usamos en el componente de Proyectos, crea uno similar para Tareas" da a la IA un modelo a seguir.
* **Incrementales**: es mejor pedir paso a paso que intentar generar toda la aplicación de golpe.

## Modelos locales con Ollama

Si prefieres no depender de servicios cloud, Ollama te permite ejecutar modelos de IA en tu propia máquina:

```bash
# Instalar Ollama (descarga desde ollama.com)

# Descargar un modelo
ollama pull qwen2.5-coder:7b

# Ejecutar el modelo
ollama run qwen2.5-coder:7b
```

Modelos recomendados para desarrollo:

| Modelo               | Tamaño  | Uso recomendado                         |
| -------------------- | ------- | --------------------------------------- |
| `qwen2.5-coder:7b`   | \~4 GB  | Autocompletado, tareas sencillas        |
| `codellama:13b`      | \~7 GB  | Generación de código, explicaciones     |
| `deepseek-coder:33b` | \~18 GB | Tareas complejas (requiere GPU potente) |

> **Nota**: Los modelos locales requieren RAM y, idealmente, una GPU dedicada. Un modelo de 7B puede funcionar razonablemente en un equipo con 16 GB de RAM, pero los modelos más grandes necesitan hardware más potente.

## Por dónde seguir

Si quieres profundizar, estos son mis recursos recomendados:

* **Documentación de Angular**: [angular.dev](https://angular.dev) — renovada, moderna, con tutoriales interactivos.
* **Documentación de .NET**: [learn.microsoft.com/dotnet](https://learn.microsoft.com/dotnet) — completa y bien mantenida.
* **.NET Aspire**: [learn.microsoft.com/dotnet/aspire](https://learn.microsoft.com/dotnet/aspire) — la guía oficial.
* **Claude Code**: [docs.anthropic.com/claude-code](https://docs.anthropic.com/en/docs/claude-code) — documentación del agente.
* **Ollama**: [ollama.com](https://ollama.com) — modelos locales.
* **OpenTelemetry**: [opentelemetry.io](https://opentelemetry.io) — el estándar de observabilidad.
* **Tendero**: [tendero.elguerre.com](https://tendero.elguerre.com) — mi propio siguiente paso: comercio electrónico con IA y agentes en .NET y Angular, construido en abierto. Te lo cuento en el epílogo.

Y por supuesto, la mejor forma de aprender es hacer. Crea un proyecto, experimenta, rompe cosas, arregla cosas. Con la IA como copiloto, el coste de experimentar es más bajo que nunca.

No tengas miedo a probar algo nuevo.
