23 puntos por GN⁺ 2025-02-05 | 4 comentarios | Compartir por WhatsApp
  • Chat es un mal patrón de UI como herramienta de desarrollo

    • Está bien que el código exija precisión a los humanos, porque las computadoras la necesitan
    • Pero eso obliga a las personas a pensar como máquinas
    • Durante décadas se ha trabajado para hacer la programación más amigable para los humanos. Los lenguajes de alto nivel y las interfaces visuales son ejemplos de ello
    • Se esperaba que la IA resolviera este problema. La expectativa era que se pudiera programar en inglés
  • La primera ola de herramientas de codificación con IA

    • Las primeras herramientas de codificación con IA desperdiciaron la oportunidad. Hacen demos llamativos, pero producen software inútil
    • Se mencionan solo como algo “para prototipos”, pero en la práctica no tienen la precisión suficiente para un uso real
    • Muchas personas culpan a los modelos de IA y sostienen que deben volverse más inteligentes
    • Pero al construir software importante se necesita una comprensión clara, no conjeturas
  • Escribir software no es una conversación

    • Escribir software se parece a redactar leyes. Se usa inglés, pero se definen términos, se establecen reglas y se gestionan interacciones complejas
    • No se puede escribir un código tributario con mensajes de chat. Se necesitan documentos
    • Los documentos permiten organizar la complejidad, hacer referencia a puntos específicos y seguir los cambios de forma sistemática
  • La importancia de la programación basada en documentos

    • Cuando la intención está en los documentos, el inglés se convierte en un verdadero lenguaje de programación
    • Se puede ver todo el sistema de un solo vistazo
    • Se puede aclarar y mejorar la intención
    • Los cambios pueden rastrearse adecuadamente
    • El equipo puede trabajar en conjunto sobre el sistema
    • Los requisitos se convierten en su propio control de calidad
    • Los cambios parten de una especificación clara
  • El núcleo de la siguiente etapa de las herramientas de desarrollo con IA

    • Se vuelve importante una forma basada en documentos de expresar y gestionar la intención del usuario
    • Se necesitan herramientas que, en lugar de prototipos conversacionales, ofrezcan la precisión necesaria para el desarrollo de software real
    • Las empresas que adopten correctamente esta perspectiva liderarán el futuro de las herramientas de desarrollo con IA

4 comentarios

 
softer 2025-02-06

Dicen que están intentando incorporar grafos de conocimiento para complementar a los LLM, y que eso también parece ser efectivo.

 
beoks 2025-02-05

Aunque el título dice que la UI de chat no es adecuada, el contenido explica que el problema central son los requisitos ambiguos.
Parece que se resolvería si, en formato de chat, se le pidiera a la IA aclarar de inmediato las ambigüedades en la solicitud del usuario,
así que no entiendo por qué hace falta culpar específicamente a la UI de chat.

 
jhj0517 2025-02-05

Oh, esta es una opinión que me parece interesante y con la que también coincido 😊

 
GN⁺ 2025-02-05
Opiniones de Hacker News
  • Un usuario comentó que llevó a cabo un proyecto de generación de código usando o3-mini y o3-mini-high, y mencionó que el enfoque de "programación en pareja" es importante

    • Explicó que es importante hacer revisión de código y dar retroalimentación, y que no es bueno simplemente aceptar el código
    • Mencionó la importancia de generar pruebas unitarias, y recomendó pedir pruebas de humo después de entender el núcleo del código
    • Aconsejó iniciar una conversación nueva porque el modelo puede confundirse en contextos largos
    • Recomendó proporcionar ejemplos de código y no hacer prompts solo en inglés
  • Otro usuario sostuvo que el chat es un patrón de UI inadecuado y explicó que sirve como registro, pero no es bueno para realizar trabajo

    • Mencionó que el enfoque narrativo no es adecuado para construir cosas
  • Otro usuario expresó sorpresa de que no se mencionara Cursor y explicó que Cursor ha mejorado mucho la velocidad para escribir código

    • Explicó que, con una salida aplicada a archivos al estilo git-diff, se pueden aprobar o rechazar los cambios
    • Mencionó que entiende hasta cierto punto el contexto del codebase y que funciona mejor cuando se etiquetan archivos explícitamente
    • Explicó que es muy conveniente insertar directamente logs de terminal o errores de tipos en la interfaz de chat
  • Un usuario afirmó que "usar el chat como UX" es un callejón sin salida y lo explicó con el caso de SQL

    • Predijo que las interfaces de chat basadas en LLM no estarán expuestas al usuario
    • Mencionó que las interfaces de lenguaje natural solo se usarán en casos excepcionales en la interacción con máquinas
  • Explicó que el lenguaje natural no fue hecho para la precisión y que, para comunicarse con la IA, se necesita un subconjunto de un lenguaje de programación

  • Sobre la opinión de Daniel, explicó que no está afirmando que el chat sea una UI incómoda en general, sino que para especificar completamente un programa de computadora se necesitan muchos detalles

    • Explicó que los LLM llenan la ambigüedad con buenos valores por defecto y entregan una pantalla de inicio de sesión genérica
  • Mencionó que espera una función que implemente por voz una experiencia como la de Cursor para poder discutir cambios de código

  • Explicó un enfoque para impulsar el desarrollo de software basado en IA a partir de documentos de requisitos, y dio un ejemplo de convertir los requisitos en una checklist para usarla como instrucciones adicionales

  • Explicó que la primera ola no fue el chat sino el autocompletado, y que el chat resulta más intuitivo y requiere menos esfuerzo

    • Explicó que los documentos no son fijos, sino que pueden revisarse de forma iterativa mediante IA
  • Mencionó que espera un modelo de lenguaje estructurado que permita describir programas de computadora mediante la invención de un nuevo lenguaje