LuAITools.com
提交工具
Volver a casos de uso
🤖
Un flujo práctico para programar mejor y más rápido

Programar con IA: las herramientas que realmente uso

La IA puede acelerar mucho el desarrollo de software, pero los mejores resultados aparecen cuando cada herramienta tiene una función concreta y el programador mantiene el control sobre la arquitectura, el código y las pruebas.

La IA ya forma parte del trabajo diario de un programador

Después de años trabajando con proyectos web y aplicaciones, tengo bastante claro algo: no intentaría construir un proyecto entero simplemente copiando y pegando código generado por una IA.

En un proyecto real hay demasiadas decisiones detrás del código: arquitectura, base de datos, seguridad, rendimiento, mantenimiento y compatibilidad con lo que ya existe.

Por eso prefiero utilizar varias herramientas, pero con responsabilidades diferentes. Una me ayuda a pensar el problema, otra trabaja directamente sobre el proyecto y otra resulta útil para revisar o automatizar determinadas tareas.

El objetivo no es utilizar la mayor cantidad posible de IA. El objetivo es conseguir un flujo de trabajo en el que la IA ahorre tiempo sin convertir el proyecto en un conjunto de código difícil de mantener.

Programar con IA: las herramientas que realmente uso
Programar con IA: las herramientas que realmente uso

1. Cursor: mi herramienta principal para programar

Si tuviera que recomendar una sola herramienta a un desarrollador que quiere empezar a programar con IA, probablemente elegiría Cursor.

La razón es sencilla: no se limita a completar una línea de código. Puede trabajar teniendo en cuenta el contexto del proyecto, buscar archivos relacionados, modificar diferentes partes del código y ejecutar determinadas tareas.

Esto resulta especialmente útil en proyectos con frameworks modernos como Next.js, React, Vue, Python o TypeScript.

Por ejemplo, no le pediría simplemente:

“Crea una página de inicio.”

Prefiero darle información como:

“Este proyecto utiliza Next.js, TypeScript y Tailwind CSS. Analiza primero la estructura actual y los componentes existentes. Quiero crear una nueva página de inicio utilizando los componentes que ya existen. No cambies la arquitectura y explícame primero qué archivos necesitas modificar.”

La diferencia es importante. Cuando la IA conoce las reglas del proyecto, tiene menos posibilidades de inventar estructuras innecesarias.

Otra costumbre que recomiendo es revisar siempre los cambios antes de aceptarlos. Que Cursor pueda modificar diez archivos de una vez no significa que debamos aceptar automáticamente todo lo que propone.

2. Claude Code: para proyectos y tareas más complejas

Claude Code tiene otro enfoque. Resulta especialmente interesante cuando una tarea requiere analizar una parte importante del proyecto, trabajar desde la terminal o realizar cambios que afectan a muchos archivos.

Por ejemplo, imagina que una aplicación tiene un sistema de autenticación antiguo y quiero reorganizarlo.

En lugar de decir:

“Reescribe la autenticación.”

Primero pediría:

“Analiza cómo funciona actualmente la autenticación. Localiza dónde se gestionan las sesiones, permisos y usuarios. Identifica código duplicado y posibles problemas. No modifiques ningún archivo todavía.”

Después de revisar el análisis, se puede pasar a la implementación.

“Realiza la refactorización siguiendo el plan. Conserva el comportamiento actual, ejecuta los tests y avísame si encuentras algún problema antes de realizar cambios adicionales.”

Este sistema funciona mucho mejor que entregar a un agente una petición enorme y esperar que resuelva todo de una vez.

3. GitHub Copilot: rápido para las tareas del día a día

GitHub Copilot sigue siendo una opción muy práctica para los desarrolladores que trabajan habitualmente con GitHub.

Su punto fuerte está en la asistencia durante la programación: completar código, explicar funciones, generar pruebas, ayudar con determinadas tareas y trabajar dentro del flujo habitual de desarrollo.

Yo lo utilizaría especialmente para tareas como:

  • Completar funciones mientras escribo.
  • Generar código repetitivo.
  • Crear tests.
  • Explicar código que no conozco.
  • Ayudar con comandos de Git.
  • Preparar cambios para una revisión.

Para una función pequeña no siempre tiene sentido utilizar un agente completo. Muchas veces basta con escribir la intención y dejar que Copilot ayude a completar el trabajo.

4. ChatGPT: primero pensar, después programar

Hay una parte del desarrollo en la que prefiero utilizar una herramienta conversacional: pensar antes de escribir código.

Muchas veces el problema no es programar una función. El problema es decidir cómo debería funcionar.

Por ejemplo, si estoy creando una aplicación SaaS, puedo plantear primero algo como:

“La aplicación utiliza Next.js, Supabase y Stripe. Necesito añadir suscripciones mensuales. Analiza la arquitectura que debería utilizar, los permisos, los estados de pago, los posibles problemas de seguridad y los casos que debería cubrir. No escribas código todavía.”

Después de discutir las diferentes opciones, puedo convertir esa conversación en una especificación técnica.

Finalmente llevo esa especificación a Cursor o Claude Code para comenzar la implementación.

Este orden tiene una ventaja importante: evita empezar a escribir código antes de haber decidido exactamente qué queremos construir.

5. Cómo combinar todas las herramientas

No recomiendo abrir cuatro herramientas de IA y pedirles exactamente lo mismo. Eso normalmente genera respuestas contradictorias y pérdida de tiempo.

Es mucho más efectivo asignar una función concreta a cada una.

  1. ChatGPT: analizar el problema y discutir la arquitectura.
  2. Cursor: implementar la mayor parte del código dentro del proyecto.
  3. Claude Code: abordar tareas complejas, refactorizaciones y trabajos que afectan a numerosos archivos.
  4. GitHub Copilot: ayudar con código pequeño, autocompletado y tareas cotidianas.
  5. GitHub: controlar versiones, revisar cambios y colaborar con otros desarrolladores.

El flujo podría resumirse así:

Idea → análisis → planificación → implementación → pruebas → revisión → commit.

Un ejemplo de trabajo real

Supongamos que quiero añadir un sistema de favoritos a una aplicación web.

Primero: explico a ChatGPT cómo está construida la aplicación y qué quiero conseguir. Le pido que analice las diferentes opciones.

Después: defino las tareas necesarias: estructura de datos, API, permisos, interfaz, estados de carga y pruebas.

A continuación: abro el proyecto en Cursor. Antes de escribir código, le pido que analice la estructura existente.

Luego: implemento las funciones una por una. Después de cada cambio importante ejecuto las pruebas.

Si el cambio se complica: puedo utilizar Claude Code para revisar el proyecto y realizar una refactorización más amplia.

Finalmente: subo los cambios a GitHub, reviso el diff y creo el pull request.

La IA hace gran parte del trabajo mecánico, pero las decisiones importantes siguen pasando por el desarrollador.

El error más peligroso al programar con IA

El error que más veo es tratar a la IA como si fuera un programador autónomo al que simplemente se le entrega una descripción y se espera un producto terminado.

Para una pequeña demostración puede funcionar.

Para una aplicación que tendrá usuarios reales, pagos, cuentas, datos privados o muchas funcionalidades, es una estrategia bastante peligrosa.

El código puede funcionar aparentemente bien y aun así tener problemas de seguridad, consultas innecesarias, mala gestión de errores, dependencias incorrectas o una arquitectura difícil de mantener.

Por eso tengo una regla bastante simple:

No aceptes código que no entiendes.

No necesitas escribir manualmente cada línea, pero sí deberías ser capaz de explicar qué hace el código y por qué forma parte de la arquitectura.

Cómo obtener mejores resultados de la IA

1. Proporciona contexto

Indica qué lenguaje utilizas, qué framework tienes, cómo está organizada la aplicación y qué restricciones debe respetar la IA.

2. Divide las tareas

Una petición concreta suele producir mejores resultados que una instrucción gigantesca con veinte objetivos diferentes.

3. Pide primero un plan

En tareas importantes, prefiero que la IA explique primero qué pretende hacer y qué archivos necesita modificar.

4. Obliga al código a pasar pruebas

Ejecutar tests, linters y builds debería formar parte del proceso habitual. El código que simplemente “parece correcto” no es suficiente.

5. Revisa siempre el resultado

Cuanto más autónomo sea el agente, más importante es revisar sus cambios. La velocidad sin control solamente permite producir errores más rápido.

¿Qué combinación elegiría yo?

Para alguien que está empezando, no compraría cinco servicios diferentes.

Una configuración sencilla: ChatGPT + Cursor + GitHub.

Con esto puedes analizar problemas, programar dentro del editor y mantener el código bajo control.

Para un desarrollador avanzado: ChatGPT + Cursor + Claude Code + GitHub.

Esta combinación permite separar el razonamiento, la programación diaria y las tareas más complejas.

Para equipos que trabajan intensivamente con GitHub: GitHub Copilot puede ocupar un papel más importante en el flujo diario.

Lo importante es no confundir cantidad de herramientas con productividad. Tener diez asistentes abiertos no convierte automáticamente a nadie en un mejor programador.

Mi conclusión después de trabajar con este tipo de herramientas

La programación con IA ha cambiado bastante. Ya no hablamos solamente de autocompletar una función o generar un pequeño fragmento de código.

Los agentes actuales pueden analizar proyectos, modificar archivos, ejecutar comandos, trabajar con tests y participar en tareas que antes exigían mucho trabajo manual.

Pero hay una diferencia entre programar más rápido y programar mejor.

Para mí, la mejor estrategia es utilizar ChatGPT para aclarar el problema, Cursor como herramienta principal de desarrollo y Claude Code cuando la tarea necesita un análisis más profundo o cambios a gran escala. GitHub y Copilot completan el flujo cuando el proyecto necesita colaboración y control del código.

La IA debería quitarte trabajo repetitivo, no quitarte responsabilidad sobre el proyecto.

Lista de herramientas de IA utilizadas

  • Cursor — Editor de código con IA y agente de programación.
  • Claude Code — Agente de programación para terminal y tareas complejas.
  • GitHub Copilot — Asistente de programación integrado en el entorno de desarrollo y GitHub.
  • ChatGPT — Análisis, arquitectura, planificación y revisión técnica.

Herramienta complementaria: GitHub — control de versiones, colaboración, commits y pull requests.

Comentarios