Cómo uso la IA para entregar código

Deja de intentar escribir prompts ingeniosos. Empieza a aplicar ingeniería de contexto.

La mayoría de la gente usa la IA de la manera incorrecta. Piden una funcionalidad en una sola frase. La IA devuelve código que utiliza las librerías equivocadas, rompe tus convenciones de nomenclatura y reintroduce errores antiguos. Pasas la tarde arreglando el desastre.

Una IA sin contexto es como un desarrollador junior que nunca ha leído tu base de código. Lo olvida todo lo del día anterior. No le darías a un nuevo empleado un ticket de una sola línea esperando un código perfecto. Le darías un documento de onboarding.

Utilizo un archivo de memoria del proyecto en mi repositorio. Este archivo actúa como un documento de onboarding que la IA lee cada vez. Contiene reglas específicas del proyecto que un externo no conocería:

• No negociables: Cómo deben verse las URLs y cómo los slugs deben coincidir con producción. • Reglas de lógica: Derivar valores de las configuraciones en lugar de usar números fijos (hardcoding). • Casos de borde (edge cases): Configuraciones específicas de CDN o rutas de archivos que evitan fallos silenciosos.

Cada error que cometo se convierte en una línea en este archivo. Esto convierte al archivo en un activo que genera interés compuesto. La calidad de los resultados de la IA mejora con el tiempo porque dejo de repetirme.

Mi flujo de trabajo sigue estos pasos:

  • Bootstrap del contexto: Pide a la IA que redacte el archivo de memoria a partir de tu código y luego edítalo.
  • Reafirmar la tarea: Pide a la IA que resuma el objetivo antes de escribir código. Esto permite detectar errores tempranamente.
  • Mejorar el prompt: Pregúntale a la IA qué es lo que resulta ambiguo en tu petición.

Usa la IA para estas tareas:

  • Escribir boilerplate y scaffolding.
  • Refactorizaciones siguiendo patrones.
  • Explicar código desconocido.
  • Revisiones mecánicas en todo un repositorio.
  • Escribir tests y fixtures.

Evita usar la IA para estas tareas:

  • Tomar decisiones de arquitectura novedosas.
  • Tomar decisiones de criterio o de producto.
  • Cualquier cosa donde equivocarse sea costoso.
  • Diseño crítico para la seguridad.
  • La revisión final antes de la entrega.

La disciplina es sencilla:

  • Delimita las tareas a un alcance pequeño. No digas "construye esta funcionalidad". Di "realiza este cambio específico".
  • Proporciona el contexto de antemano.
  • Verifica cada resultado. Ejecuta la compilación y lee el diff.
  • Revísalo como si fuera el PR de un desarrollador junior. Nunca hagas commit de código sin que un humano lo haya leído.
  • Incorpora las lecciones aprendidas de nuevo en tu archivo de contexto.

El apalancamiento no está en el prompt. El apalancamiento está en el contexto que mantienes.

Source: https://dev.to/faizahmedfarooqui/how-i-actually-use-ai-to-ship-code-context-engineering-over-clever-prompts-il8

Optional learning community: https://t.me/GyaanSetuAi