34 puntos por GN⁺ 2025-03-13 | 8 comentarios | Compartir por WhatsApp
  • Existen afirmaciones exageradas sobre las herramientas de programación con IA
    • Afirmaciones de que puedes crear un SaaS en 3 días vs. afirmaciones de que son completamente inútiles → es muy probable que ambas estén exageradas
  • Cursor cambió por completo la forma de programar, pero todavía tiene problemas
  • Quiero compartir lo que he aprendido desde una postura escéptica sobre las herramientas de programación con IA

Configurar CursorRules

  • Si no tienes un archivo .cursorrules, es muy probable que pierdas tiempo
    • Ahora cambió a archivos .mdcCMD + Shift + P → se puede crear con New Cursor Rule
    • Configurarlo toma unos 10 minutos → puede ahorrarte varias horas
  • Configura reglas que encajen con tu stack tecnológico
    • Elige las reglas más adecuadas en colección de Cursor Rules
    • Empieza con el mínimo de reglas y amplíalas gradualmente → demasiadas reglas pueden afectar el rendimiento
  • Resuelve los problemas recurrentes agregándolos a las reglas
    • Si un problema aparece repetidamente, añádelo a las reglas para que la IA lo corrija automáticamente
    • Ej.: problema con nullish coalescing (??) en JS → se resolvió después de agregarlo a las reglas
  • Agrega información del proyecto y explicaciones sobre la estructura del código
    • Especifica en la parte superior del archivo una descripción del proyecto y la estructura del código
    • Si existe una estructura de archivos o una forma de escribir código específica, déjala claramente indicada

Obtener mejores resultados

  • La clave para mejorar la calidad del resultado es dar contexto
    • Si hay funciones necesarias o procedimientos similares, indícaselo a la IA con anticipación
    • No necesitas dar el nombre exacto de la función → el objetivo es facilitar el trabajo de programación
  • Da ejemplos
    • Proporciona pistas como "see @schedule.ts @utils.ts @ScheduleHeader.tsx"
    • Así puede referirse a código escrito de forma similar
  • La IA fue entrenada con código aleatorio
    • Para mejorar su desempeño, hay que comunicar con claridad los requisitos específicos de cada proyecto

Consejos rápidos

  • Composer (ahora renombrado como Agent) → adecuado para cambios simples y de bajo impacto
  • Chat (Ask) → adecuado para la mayoría de las demás tareas
    • Aplicar los cambios manualmente → mejora la comprensión y hace más precisos los ajustes al código
  • No confíes ciegamente en el código
    • El código generado por IA debe revisarse y corregirse
  • Refactoriza manualmente el código clave de forma periódica
    • Descubrir y corregir vacíos en el código → después puede mejorar la calidad del código generado por la IA
  • Haz preguntas como "¿esta es la mejor manera?" o "¿consideraste otro enfoque?"
  • Identifica cuándo es mejor resolver algo manualmente
  • Ten cuidado al corregir bugs
    • Salvo bugs menores, a la IA le cuesta hacer correcciones
    • Existe la posibilidad de que dañe seriamente el código
  • En tareas importantes, haz que la IA pregunte primero
    • Pregunta "¿lo entendiste completamente?" antes de empezar a escribir código

Conclusión

  • Ventajas de programar con IA
    • Puedes escribir código incluso cuando tu cerebro está cansado
    • También puede resolver problemas que normalmente serían difíciles de solucionar
  • Limitaciones de programar con IA
    • Puede decir "sí, ahora ya entendí el problema" y aun así empeorar la situación
    • Es importante aprender a usar bien la IA → no va a desaparecer, así que hay que aprovecharla bien como herramienta
  • Los desarrolladores junior deben tener cuidado: usar IA puede debilitar sus habilidades de programación
  • El rendimiento de la IA varía mucho según el tema de programación y el stack tecnológico
    → si el rendimiento de la IA sigue siendo malo, es muy probable que no sea culpa tuya

8 comentarios

 
colus001 2025-03-14

También recomiendo el sitio web de reglas de Cursor: https://cursor.directory/.

 
kipsong133 2025-03-14

He visto muchísimas afirmaciones de que los desarrolladores junior están perdiendo nivel por usar IA; estaría interesante si hubiera algún artículo sobre si de verdad pasa eso.
Leí muy bien el artículo :)

 
tominam2 2025-03-16

A mí me suena a eso de que usar atajos en el celular hace que se te deteriore la memoria.
La programación no se trata de tener la capacidad de no olvidar y recordar cosas obvias, ¿no?

 
kipsong133 2025-03-16

Yo también estoy de acuerdo. Memorizar las interfaces de un framework no es lo que define la habilidad para desarrollar.

 
seoseonyu 2025-03-14

Cursor es muy bueno, pero... en mi caso, que trabajo en varios equipos,
me dio pena que no tenga una función de sincronización de configuración.

Dicen que hay un truco para sincronizar haciendo enlaces simbólicos de las extensiones o de los propios archivos de configuración en una unidad de red,
pero como en VSCode se sincroniza con un clic, me da flojera tener que pasar por todo ese proceso.

 
pcj9024 2025-03-13

Casi no uso Cmd+K de vscode porque lo reemplacé por Cmd+R, pero todos siguen dando testimonio de cómo les mejoró la productividad. Uf, ¿debería cambiarme?

 
bungker 2025-03-14

Me cambié del VS Code que usé durante 5 años y está muy bueno.

 
GN⁺ 2025-03-13
Opinión de Hacker News
  • El liderazgo de ingeniería de la empresa está impulsando Cursor con fuerza. Es bueno para resolver tickets pequeños y mejorar el producto, pero no es adecuado para trabajo pesado

    • Al depender de Cursor, las habilidades de razonamiento y programación de los ingenieros junior se están debilitando
    • Personalmente, me preocupa mucho el conflicto de interés de que Cursor decida qué archivos agregar al contexto y cobre según su tamaño
    • Como muchos productos, al principio es barato, pero una vez que dependes de él, después se vuelve caro
  • El modelo de negocio actual de Cursor genera un conflicto fundamental entre los usuarios y el bienestar financiero de la empresa

    • Estos problemas están apareciendo a medida que los proveedores de LLM intentan escalar mediante cómputo en tiempo de razonamiento
    • Cursor está tratando especialmente de reducir los costos de razonamiento mediante el recorte de contexto
    • Si "adjuntas" un archivo a la conversación, Cursor deja de incluir el código de ese archivo en el prompt
    • En su lugar, ejecuta llamadas a funciones para abrir el archivo y leer partes del código hasta que siente que el modelo ya obtuvo suficiente información
    • Pero si el razonamiento se limita solo al prompt inicial, el modelo termina razonando únicamente a partir del propio prompt sin acceder a los archivos adjuntos
    • Ejecutar llamadas a funciones para traer más contexto después de razonar vacía por completo el significado de "pensar"
    • Esto hace que el modelo genere planes inconsistentes y modificaciones especulativas, lo que explica el extraño comportamiento de sobrecorrección de Claude
    • Cursor tiene todos los incentivos para minimizar el esfuerzo de razonamiento de o3-mini y Claude 3.7 con el fin de reducir la carga del servidor
  • Cursor es celebrado como una de las grandes historias de crecimiento SaaS, pero su modelo de negocio de uso ilimitado por $20 al mes los pone en una mala situación

  • Cada usuario debe considerar su propio lenguaje/stack. Es muy probable que Cursor no funcione igual de bien en todos los lenguajes

    • Estoy trabajando en un monorepo de Next.js/Typescript/Solidity con varias apps y paquetes, y puede manejar casi todo
    • Lo he usado alrededor de un mes y siento que todavía podría sacarle más provecho
  • Después de usar Cursor durante un mes, el día que se me cayó internet me di cuenta de que estaba empezando a olvidar cómo escribir código correctamente

  • La UX de estas herramientas está limitada principalmente por la capacidad de construir el contexto completo de lo que el usuario intenta hacer

    • Hace poco probé aider y fue una experiencia bastante frustrante
    • Me seguía pidiendo que "agregara" archivos del directorio, pero no podía agregarlos por sí mismo
    • No detectaba cambios manuales en archivos y generaba commits con código roto, entre otros problemas
    • Parece más importante darle a la IA el contexto completo que la calidad del modelo
    • Como las ventanas de contexto grandes son costosas, muchas herramientas siempre están tratando de ahorrar
    • A largo plazo, no hacer esos ahorros tiene más valor
    • Cargar el proyecto completo puede costar 2-3 dólares por pregunta, pero si el costo baja 20 veces, no me importaría
  • Los modelos grandes admiten ventanas de contexto enormes de millones o decenas de millones de tokens, con un costo comparable al precio de un auto pequeño y un alto consumo de energía

    • Nvidia se ha enriquecido con los altos márgenes de las GPU. Con el tiempo, los precios van a bajar
    • Soy optimista en que muchas cosas van a mejorar rápidamente
  • Cursor es útil para prototipado y desarrollo de MVP, pero empieza a tener dificultades cuando la base de código crece

    • Cuando hay archivos grandes o muchos archivos, la ventana de contexto se llena y aparecen problemas de consistencia
    • Si seleccionas manualmente archivos o fragmentos relevantes, puedes obtener mejores resultados, pero en ese punto no es muy distinto de usar una interfaz web
  • Sumando las opiniones de otros comentaristas, siento que usar Cursor es una mala idea

    • Es un SaaS de código cerrado, y la calidad del servicio puede variar de un día a otro
    • No he encontrado forma de evitar que envíe archivos .env en texto plano
  • Me desconcertó leer el consejo de "aprende cuándo resolver los problemas manualmente"

    • Es como decirle a un inversionista "compra barato y vende caro", un consejo vacío
  • He probado Cursor unas cuantas veces, pero siempre tengo las mismas quejas

    • No entiendo por qué hicieron un fork de VS Code, cuando podrían haberlo hecho como extensión al estilo Copilot
    • Algunas extensiones de VSCode no funcionan, hay que volver a configurar todo y agregar los espacios de trabajo otra vez
    • Comparado con Copilot, la ventaja que obtienes no es tan grande