viernes, septiembre 06, 2024

Cursor: El primer IDE para developers Súper-Empowered con GenAI (Claude 3.5 Sonnet & GPT-4o

La inteligencia artificial ha transformado el desarrollo de software, y herramientas como ChatGPT o GitHub Copilot han demostrado cómo la IA puede hacer más accesibles y menos propensas a errores las tareas complejas de programación. Sin embargo, el verdadero cambio llega con Cursor, un editor de código que integra la Inteligencia Artificial en el núcleo del proceso de programación. A diferencia de otros editores, Cursor está diseñado desde cero para aprovechar al máximo las capacidades generativas de la IA, prometiendo una revolución en la manera en que los desarrolladores, tanto expertos como principiantes, abordan su trabajo diario.

Cursor es una plataforma que combina un entorno de desarrollo familiar, como Visual Studio Code, con un asistente de IA avanzado. Este editor permite generar, editar y depurar código utilizando comandos en lenguaje natural, lo que simplifica y optimiza el flujo de trabajo de los programadores. Desde su lanzamiento, Cursor ha sido adoptado por profesionales de empresas tecnológicas como Replicate, Midjourney, OpenAI, Perplexity y Shopify.
  
El impacto de Cursor en la comunidad de desarrolladores ha sido notable, generando tanto entusiasmo como cautela. Mientras algunos ven en esta herramienta una revolución en la programación, otros se preguntan cómo afectará a largo plazo las habilidades fundamentales de los desarrolladores. A medida que Cursor gana tracción, surge un debate sobre el futuro de la programación asistida por IA y su posible influencia en el desarrollo de software en los próximos años.

¿Qué es Cursor?

Como ya he dicho, Cursor es un editor de código impulsado por Inteligencia Artificial, diseñado específicamente para integrar la IA en el núcleo del proceso de desarrollo de software. Derivado de Visual Studio Code, Cursor es un fork independiente que incorpora funcionalidades avanzadas de IA para transformar la programación en un proceso más eficiente, intuitivo y accesible. Esta herramienta permite a los desarrolladores interactuar con su código utilizando comandos en lenguaje natural, ofreciendo sugerencias contextuales, generando código automáticamente y optimizando el flujo de trabajo de manera proactiva.

Figura 3: About Anysphere

Cursor es el producto estrella de Anysphere, una startup tecnológica fundada por Michael Truell, Sualeh Asif, Arvid Lunnemark y Aman Sanger. La empresa ha logrado atraer una considerable atención y financiamiento, recaudando en 2023 8 millones de dólares en una ronda semilla respaldada por inversores del ecosistema de OpenAI, y recientemente, en Agosto de 2024, 60 millones de dólares. La filosofía de Anysphere y de Cursor se centra en democratizar el proceso de desarrollo de software, haciéndolo más accesible y eficiente, mientras prioriza la privacidad y la seguridad del código de los usuarios.

Funcionalidades clave

Las funcionalidades clave de Cursor se destacan por su integración con la inteligencia artificial, lo que transforma la experiencia de codificación en un proceso más eficiente y avanzado. Estas son algunas de las funcionalidades más importantes:
  • Autocompletado Inteligente: Esta función ofrece sugerencias predictivas y adaptativas basadas en el contexto del código y los patrones de trabajo del desarrollador. No solo sugiere términos o líneas individuales, sino que es capaz de completar bloques enteros de código, lo que ahorra tiempo y reduce la posibilidad de errores, todo mientras se adapta al estilo de codificación del usuario.
Figura 4: Autocompletado Inteligente  
  • Generación y Edición de Código: Esta funcionalidad permite a los desarrolladores generar código automáticamente a partir de descripciones en lenguaje natural y realizar ediciones inteligentes en el código existente. No solo traduce comandos verbales en código funcional, sino que también optimiza y corrige el código en tiempo real, mejorando su eficiencia y alineándolo con las mejores prácticas.
Figura 5: Generación de código con lenguaje natural
  • Asistencia y Reescrituras Inteligentes: Cursor ofrece asistencia proactiva y reescrituras automáticas del código, detectando y corrigiendo errores mientras el desarrollador escribe. Su capacidad para realizar optimizaciones contextuales y refactorizaciones asegura que el código sea más limpio, eficiente y alineado con los estándares del proyecto, todo mientras se adapta a las preferencias del usuario.
Figura 6: Smart Rewrites y Cursor prediction
  • Inserción de docs: Cursor te permite poder insertar documentación de cualquier framework, librería, etc. que te sea de utilidad en el proyecto, incluso puedes subir tu propia documentación, para posteriormente al realizar preguntas a los modelos de IA tengan como contexto estos documentos.
Figura 7: Use Documentation

Beneficios y limitaciones

Al ofrecer sugerencias proactivas para la re-escritura y optimización del código, la herramienta reduce la incidencia de errores comunes y fomenta la adopción de mejores prácticas de programación. Sin embargo, este beneficio tiene sus límites. A pesar de su capacidad para detectar y corregir errores básicos, Cursor puede tener dificultades cuando se enfrenta a problemas más complejos que requieren un entendimiento profundo del flujo lógico del programa o del contexto específico.

Otra ventaja significativa de Cursor es su capacidad para facilitar el aprendizaje. La herramienta actúa como un tutor, proporcionando explicaciones en tiempo real y sugiriendo mejoras que pueden acelerar la curva de aprendizaje, especialmente para aquellos que están comenzando en la programación o explorando nuevos lenguajes y frameworks

Figura 8: Chat viral enlace localhost

Sin embargo, esta facilidad de uso también conlleva el riesgo de que los usuarios, especialmente los novatos, se vuelvan excesivamente dependientes de la herramienta, lo que podría limitar su capacidad para desarrollar una comprensión profunda de los fundamentos de la programación. De hecho, se hizo viral este chat donde alguien le cuenta a su amigo que, usando Cursor, construyó algo en tiempo récord. Cuando el amigo le pide el link para probarla, le pasa un localhost.

Instalación y precios

Cursor se puede utilizar de manera gratuita, pero está muy limitado. Incluye 2000 auto-completados, y la posibilidad de hacer 50 solicitudes a LLMs premium como Claude 3.5 Sonnet o GPT-4o. Ya con el plan Pro de 20 USD mensuales tenemos autocompletados ilimitados, la posibilidad de hacer 500 solicitudes a estos LLMs premium con rapidez garantizada, e ilimitadas sin garantía de poder ser realizadas con prioridad. Por último, existe un plan Business de 40 USD al mes por usuario, más enfocado a equipos.

Figura 9: Tabla de precios y características incluidas

Conclusiones

El futuro de Cursor promete grandes avances en el desarrollo de software. Se espera la integración de modelos de lenguaje aún más avanzados, mejorando la capacidad de generación y asistencia de código. También se trabaja en optimizar la edición multi-archivo para proyectos complejos, asegurando cambios consistentes en todo el proyecto, y se priorizarán mejoras en seguridad, con un modo de "privacidad total" para proteger el código de posibles filtraciones.

Es normal el uso de GPT o Claude mientras programamos. De la manera en la que se ha ido haciendo es por ejemplo copiar la parte del código que quieres arreglar y llevarla a esta herramienta para que lo optimice, y copiar la respuesta de nuevo a nuestro editor de código. ¿Se optimizará aún más este proceso usando Cursor? Pruébalo con la versión gratuita para comprobar si te puedes adaptar bien a esta nueva forma de trabajar, descárgalo de la página oficial.

Saludos,  

Autor: Javier del Pino, Investigador de Inteligencia Artificial en Ideas Locas

No hay comentarios:

Publicar un comentario