Cuándo confiar y cuándo ignorar a Copilot

Resumen

Trabajar con GitHub Copilot acelera tu desarrollo, pero también puede llevarte por caminos equivocados si no sabes interpretar sus sugerencias. La clave está en desarrollar criterio técnico para diferenciar entre una respuesta útil y una alucinación, sobre todo cuando trabajas con lenguajes como Go o frameworks como .NET Web API.

¿Por qué Copilot falla con lenguajes menos populares como Go?

Los modelos de IA aprenden mejor con lo que más se usa, y eso impacta directamente la calidad de sus respuestas.

Durante la creación de una API en Go aparecieron dos errores en la línea 22, columna 79, indicando que faltaba una declaración de statement. Al copiar el error al chat, Copilot detectó que había código fuera de la función main, justo afuera de las llaves que delimitan su cuerpo. La solución fue mover ese bloque dentro de la función con un simple Ctrl + X, sin necesidad de copiar todo el código a ciegas [01:00].

Aquí aparece una lección potente: Visual Studio Code y Copilot no están tan familiarizados con Go, por eso no marcaron el error de forma visual antes de ejecutar. Los lenguajes más populares reciben mejor soporte porque la herramienta se entrenó con más ejemplos de ellos.

¿Por qué Copilot funciona mejor con unos lenguajes que con otros? Porque fue entrenado con grandes volúmenes de código público. Lenguajes muy usados como C# o JavaScript tienen más contexto disponible que lenguajes menos masivos como Go.

¿Cómo refinar prompts para crear un proyecto Web API en .NET?

La forma en que preguntas determina la calidad de la respuesta que recibes.

Al iniciar un nuevo chat con la pregunta ¿cómo puedo crear un nuevo proyecto de API en .NET?, Copilot propuso una estructura de directorios y pidió crear un workspace nuevo, algo innecesario porque ya existía uno [02:30]. Al refinar el prompt a ¿cómo lo puedo hacer desde una línea de comandos?, la respuesta fue: Lo siento, no te puedo asistir con eso.

La tercera iteración tampoco fue precisa. Al preguntar por un proyecto de .NET genérico, Copilot devolvió instrucciones para crear un proyecto de .NET MAUI, que es un framework para aplicaciones móviles, no para APIs web. Solo cuando el prompt fue específico (cómo crear un proyecto Web API de .NET) la conversación se acercó al objetivo.

¿Cuál es el comando correcto para crear un Web API en .NET?

La solución directa, basada en experiencia previa y no en lo que sugería Copilot, fue ejecutar:

bash dotnet new webapi -n netapi

Este comando crea el proyecto con la estructura mínima de un Web API, incluyendo Swagger y un controlador de ejemplo llamado WeatherForecast [04:15].

¿Cómo ejecutar el proyecto y abrirlo en el navegador?

Una vez creado el proyecto, los pasos para correrlo son:

  1. Ubicarte en la carpeta del proyecto con cd netapi.
  2. Restaurar dependencias con dotnet restore.
  3. Ejecutar el proyecto con dotnet run.

Al abrir la URL en el navegador no aparece nada por defecto. Copilot omitió un detalle clave: hay que agregar la ruta /swagger/index.html al final para visualizar la interfaz de Swagger. Ese tipo de omisiones son las que solo detectas si tienes contexto previo del framework.

¿Qué es Swagger en un Web API? Es una interfaz que documenta y permite probar los endpoints de tu API directamente desde el navegador. En .NET viene preconfigurado al crear el proyecto.

¿Qué significa discernir con Copilot y por qué es una habilidad fundamental?

Discernir es la capacidad de evaluar críticamente lo que la IA te entrega antes de aplicarlo.

Cuando trabajas con una tecnología que dominas, como .NET, puedes notar de inmediato que una respuesta sobre MAUI no aplica a tu caso. Cuando navegas a ciegas, como ocurrió con Go, dependes más de la herramienta, pero aún así puedes detectar incoherencias estructurales: un método ubicado fuera de la función main es un error de sintaxis básico que cualquier desarrollador puede identificar leyendo el mensaje del compilador.

Las pequeñas alucinaciones de Copilot pueden desviarte de tu objetivo original. Por eso conviene:

  • Validar que la respuesta corresponde a la tecnología exacta que pediste.
  • Comparar las sugerencias con tu experiencia previa antes de aplicarlas.
  • Refinar el prompt cuantas veces sea necesario hasta que la respuesta sea precisa.
  • No copiar y pegar bloques completos sin entender qué hace cada parte.

¿Qué es una alucinación de Copilot? Es cuando la IA genera una respuesta que parece correcta pero contiene información inventada, imprecisa o fuera de contexto respecto a lo que pediste.

Copilot es tu herramienta de trabajo, no tu guía para hacer todo tu trabajo. Esa es la diferencia entre un desarrollador dependiente y uno que usa la IA como aliada. ¿Te ha pasado que Copilot te lleva por un camino equivocado? Cuéntame en los comentarios cómo lo resolviste.