Actualmente una de las extensiones más productivas para editores de código como Visual Studio code, es Github Copilot, si no has escuchado de copilot, simplemente debes saber que es una extension que permite autocompletar código de forma inteligente
Esta extension se usa principalmente en Visual Studio Code pero tambien esta disponible para otros editores como Vim, NeoVim, o los IDEs de Jetbrains.
Este servicio tiene un trial de 60 dias, y que vencidos tiene un costo (12$ mensuales o 100$ anuales).
Sin embargo esta es una lista de alternativas a copilot, entre gratuitas y de pago que puedas utilizar:
Si tienes prisa esta es la lista completa de servicios que mencionaré:
- Tabnine
- Captain Stack
- GPT Code Clippy
Ademas de otras alternativas extras que al menos vale la pena mencionarlas (como Second Mate, Intellicode, Code Whisperer, Google ML, YouCompleteMe)
empecemos con Tabnine.
Tabnine
Tabnine es la alternativa más popular a Copilot, este tiene un plan gratuito con autocompletado inteligente básico, que puedes instalar desde multiple editores como Visual Studio Code, Intellij, Vim, entre muchos otros y un plan PRO desde 12$ al mes con más caracteristicas, que te permite ejecutar el servicio localmente, es decir sin internet.
Te permite seleccionar que repositorios de tu cuenta de Github quieres usar para proveerle un contexto a la extension, es decir para que pueda saber que autocompletar, e incluso tiene un plan para empresas donde se puede autohospedar en sus propios servidores.
Instalarlo es tan facil como buscarlo en la tienda de Visual Studio Code.
Captain Stack
A diferencia de copilot y tabnine, Captain Stack es una extensión open Source solo para Visual studio code provee autocompletado que no esta basado en AI, sino que te permite escribir terminos de busqueda en tu código y este hará las busquedas en sitios como Google, StackOverflow y Github para ofrecerte sugerencias de autocompletado. https://github.com/hieunc229/copilot-clone
la extension es completamente gratuita, aunque su proceso de instalacion se debe hacer manualmente, es decir clonando y configurandolo tu mismo, al no estar en el marketplace de Visual Studio Code.
GPT Code Clippy
GPT Code Clippy es un proyecto que segun su propio repositorio es una alternativa Open Source a Github Copilot. Tambien esta basada en AI, con el modelo GPT-3 y hace uso de Repositorios publicos de Github para entrenar sus modelos, y de momento tan solo ofrece integrarse en Visual Studio Code, el proceso de instalación tambien es manual, y el proyecto aun esta en fase de prototipo, así que no es buena idea usarlo en proyectos de producción al poder sugerir código inseguro.
Otras alternativas
Por supuesto esta no son las unicas alternativas a copilot, tambien tenemos a opciones como:
- YouCompleteMe una extensión para autocompletado en Vim
- Second Mate, el cual es una imitacion de Copilot para Emacs basado en un modelo (GPT-Neo-2.7B) que permite autocompletado más simple, y es enteramente gratuita
- IntelliCode, Este es un proyecto de Microsoft para el IDE Visual Studio que tambien esta entrenado en algunos repositorios de Github, solo que esta más pensando en ser usado en equipos de desarrollo de proyectos no abiertos, y sus recomendaciones son más simples que las que ofrece Copilot
- [Code Whisperer], debido a la popularidad de Copilot, en junio el 2022, Amazon anuncion el desarrollo de su propia herramienta de autocompletado inteligente llamada Code Whisperer la cual esta siendo entrenada con repositorios internos de la empresa, foros, y documentaciones de APIs, aunque aun esa en version Preview.
- [Google ML], por su parte Google en Julio del 2022, tambien anunció una herramienta de autocompletado que estan usando sus desarrolladores interamente de la empresa, basada en una arquitectura de redes neuronales llamada Transformer
- Mutable AI Esta es otra extension para Visual Studio Code que soporta algunos lenguajes populares como Python, Javascript, o Rust
Conclusión
Si eres un desarrollador iniciante, realmente no te hace falta ninguna herramienta de autocompletado, por lo que mejor es que practiques la sintaxis sin ayuda. Pero si ya trabajas mucho con código repitiendo los mismos bloques de código en multiples proyectos este tipo de herramientas es muy util. De momento entre todas las herramientas que hemos visto, Github copilot y Tabnine siguen siendo de las mejores opciones que tenemos.
En fin, este tipo de herramienta ya se estan convirtiendo el algo más comun de usa, y a medida que pasen los meses seguiremos viendo más alternativas.
Así que de momento comentame, ¿Conoces alguna otra alternativa a Copilot?