Copilot es una herramienta de generación automática de código que ha hecho mucho ruido y es utilizada por programadores de todo el mundo.

Yo también me dejé llevar por el bombo y platillo, jugué con ella, intenté cambiar mi flujo de trabajo y me fastidió. Los contras acabaron pesando más que los pros.

Ahora te lo cuento. A continuación se describe la interacción con el autorrelleno del copiloto. No hay duda sobre el chat, es algo bueno y útil, pero no es de eso de lo que trata este artículo.

Configuración

Durante este tiempo he usado Copilot principalmente con dos lenguajes: PHP (laravel) y typescript (react). Como editor nvim (montaje LazyVim en la captura de pantalla). He escrito tests a doble cara.

Lo que me gustó

Por supuesto, Copilot parece un milagro. Cuanto más repetitivo es el código, más y mejor adivina lo que hay que hacer.

En algunos lugares, te muestra soluciones sencillas que no se te ocurrirían por ti mismo.

En general, al usar código simple, te quedas con un espacio en blanco que no quieres escribir, pero aquí te lo han preparado todo. Este código también requiere edición, pero sigue siendo práctico.

Por qué me detuve

Pero cuanto más avanzaba, más situaciones surgían en las que me daba cuenta de que el copiloto era más un estorbo que una ayuda.

Disminución de la productividad

La automatización habitual que proporciona el editor produce memoria motora. No tienes que pensar demasiado cuando el autocompletado te dice algo.

El código se inserta automáticamente y no se trata sólo de elegir la implementación deseada de la función, sino también código adicional, lo que deja claro dónde y cómo escribir.

Si se introduce una función, nos encontramos dentro de su llamada, donde se añaden los argumentos, si los hay.

Esto deja de funcionar con el copiloto. Cada vez que sugiere algo, hay que mirar atentamente lo que ofrece allí, e incluso después de insertar el código, lleva algún tiempo darse cuenta de quién soy, dónde estoy y qué hacer ahora con él.

CPU
1 vCPU
MEMORIA
1 GB
ALMACENAMIENTO
10 GB
TRANSFERENCIA
1 TB
PRECIO
$ 4 mes
Para obtener el servidor GRATIS debes de escribir el cupon "LEIFER"

A veces espero y deseo una simple pista para completar una línea de texto o una función, pero en lugar de eso, obtengo una especie de envoltorio fuera de tema.

Como resultado, he empezado a pasar por encima del envoltorio más a menudo y a enfadarme porque las acciones sencillas se han vuelto más difíciles.

Importar

Se importa un tema aparte. Copilot inserta fragmentos de código sin ninguna conexión real con el entorno.

Si hay símbolos como clases o funciones externas, naturalmente no se realizará ninguna importación automática.

Esto es confuso porque no siempre está claro qué se ha importado y qué no.

Errores

Copilot se equivoca constantemente. Si empieza a escribir el comando equivocado o llama a la propiedad o método equivocado, Copilot seguramente le dirá algo, por lo que se producen fallos.

El autocompletado regular protege contra esto porque si no está ahí, sabes que has cometido un error. En algunos casos, tu autocompletado no es sintácticamente correcto.

Esto ha ocurrido en PHP, cuando introduces lo que parece necesario, sólo para darte cuenta de que no puso un punto y coma al final u olvidó la comilla de cierre en la línea.

Total

En comandos cortos, el copiloto es más bien una molestia. Autocompletar normal + memoria motora es más rápido y simplemente más agradable porque no tienes que pensar.

En grandes trozos de código, puede ser útil, pero cuando el proyecto ya ha tenido lugar, mucho se hace copiando y pegando y del mismo modo, por ejemplo, en las pruebas de integración para cruds. Además, hay un chatgpt cerca donde se pueden hacer preguntas y discutir cosas.

Fuente