Hace unos meses, me decidí a probar un poco como funcionaba eso de la inteligencia artificial en un entorno de programación, con Java, Javascript, React, Angular u otros , en una situación de desarrollo normal.
Mi primera prueba fue con Tabnine, en aquel momento, me ofrecía un mes de prueba gratuito, y, aunque reconozco que me gusto, (teneis los comentarios aqui), cuando acabó el mes, pensé en probar Github Copilot, ya que es una herramienta de GitHub con el que ya trabajaba, y, puestos a tirar de un repositorio, el de Github me pareció atractivo.
Como parecia que funcionaba, decidir contratar la version mas sencilla , y empece a utilizarla en mi trabajo diario.
Despues de estos meses, he pensado que seria buena idea comentar como me ha ido, y que ventajas ha aportado a los IDEs que normalmente utilizo y que son
- Visual Studio Code, para entornos de Frontend y Node
- Eclipse, para PHP, básicamente, aunque tengu una version preparada para Java para cuando tengo que preparar desarollos de escritorio o web sin Spring
- STS, Para java, normalmente Spring y SpringBoot
Si acaso, otro dia podemos hablar de la utilización de Visual Studio Code, con STS. cosa que quiero probar, a la vez de trabajar con docker, para poder independizar las versiones que utilizo….
Visual Studio Code y Github Copilot
Nuestro primer desafío, aunque no el mas complejo, es instalar el plugin Copilot. Realmente, Copilot proporciona la extensión necesaria, por lo que solo es necesario añadir la extensión
En unos momentos, se instalara todo lo necesario
Si empezais con la version gratuita, podeis bajar por las instrucciones, que considero importante leer, hasta llegar a
En donde debeis pulsar, para que abra el navegador en GitHub-Copilot y podais registraros.
Empezando a trabajar en Visual Code
A partir de este momento, ya podeis empezar a trabajar con Code; bueno, vosotros solo teneis que seguir escribiendo el codigo que necesiteis, y, a veces, Copilot os ofrece terminar la linea, u os ofrece la siguiente linea o lineas que conviene poner a continuación; por ejemplo el codigo contiene
SI doy un Intro en la linea 10, me encuentro con
Localizó un posible texto en mi historia y me lo sugirió. Vale, puede que no sea muy buena, si quiero utilizarlo, solo deberé pulsar TAB, y si no, sigo con lo que quiera hacer
Ahora, he ido a la linea 7, y he pulsado Ctrl+Enter, para pedir sugerencias, y me muestra algunas
Otra forma de trabajar, es abriendo un chat; para ello debemos ir a los tres puntos que cierran nuestra lista a la izquierda y seleccionar Chat
Y, automáticamente, aparece la pantalla de chat,
En donde podemos realizar preguntas, o utilizar las sugeridas, en este caso, deberemos seleccionar el codigo relacionado en el area de la derecha.
En este caso he preguntado como podía mover un objeto por la pantalla, sabiendo que estoy en javascript, y esta ha sido la respuesta.(He ampliado el lado izquierdo en aras de la claridad)
Me ha ofrecido un codigo javascript, comentado para que lo utilice, y….en la parte inferior, me ha ofrecido otra solucion:
En donde tambien puedo clicar, para conseguir mas información
Instalando en Eclipse o en STS
En este caso, la instalación, no es que sea mas costosa, si no, que no viene de Copilot directamente, pero ya existe en el marketplace
El funcionamiento es el mismo, Copilot va sugiriendo lo que le parece, y, en caso necesario, aunque no tenemos chat, podemos añadir un comentario al programa, y esperar que Copilot lo resuelva. Como siempre, el TAB acepta la sugerencia
En la parte inferior derecha de la pantalla tenemos un boton para cualquier incidencia que tengamos
Por ejemplo, para logonarme, pulso en Sig int, y me aparece una pantalla
Puedo copiar el «Device code», o pulsar directamente el botón de «Copy Code and Open», y se abrirá el navegador
Pegamos lo copiado y pulsamos en «Continue» para ver
Aceptamos
Y, tras esto, podemos empezar a trabajar, por ejemplo, he terminado de definir los campos de un Entity, y escribo el comentario de la linea 49; automáticamente, copilot, me ofrece el constructor
Si me interesa, pulsare TAB y listo…
Otro ejemplo; he empezado a crear el servicio para Peliculas, y empiezo a escribir la linea 3
Estoy llegando a Implements, y Copilot me sugiere el resto….No esta mal; tras darle al TAB, e importar lo necesario, acepto que me escriba los metodos de la interfaz, y me encuentro con
Media clase hecha, tengo que escribir la definición del campo, y el constructor de la clase, (líneas 15 a 19) y al ir a escribir la linea 24, solo «return», Copilot descubre lo que me interesa, y completa la linea, me va a valer, y daré un TAB.
Puede que Eclipse no sea tan eficiente, y, la verdad, programo con Eclipse (STS) pero tengo abierto Visual code, para poder utilizar el chat… Copilot puede hacerte un programa basico, en minutos.
Esta vez he vuelto a Visual Code, y he seleccionado el Entity Programa, en chat, he indicado «create service». La respuesta la dejo a continuación, y sin comentar, porque no se que puedo decir…..
y siguió
Conclusión
Puede que la Inteligencia Artificial todavia no sea inteligencia, pero nos puede ahorrar horas de trabajo, por lo que deberíamos plantearnos el incluirla en nuestros procesos diarios, sin ningún tipo de temor. Ahora ya es útil; puede que le falte mucho por conseguir ser «inteligente«, pero una herramienta de ese valor, no la podemos ignorar en nuestro cajón de trastos.
Para Visual Code
Para Eclipse/STS
Relacionado
Descubre más desde Recursos para formacion
Suscríbete y recibe las últimas entradas en tu correo electrónico.