No puedes hacer pruebas unitarias para el gusto
Naturaleza del “gusto” y si se puede probar
- Muchos sostienen que no puedes hacer pruebas unitarias completas para el gusto porque:
- El gusto es la parte de la especificación que olvidaste o que no puedes articular.
- Las reglas necesitan excepciones, cuyas excepciones son juicio contextual; lo que queda es “gusto”.
- Solo puedes externalizar una pequeña parte, parecida a una regla; el resto sigue siendo implícito.
- Otros responden que algunas partes sí se pueden codificar:
- Comparaciones por pares de “me gusta o no” pueden entrenar funciones de puntuación de ML.
- Guías de estilo, lenguajes de patrones y directrices de UI capturan algunos estándares compartidos.
- Linters y scripts pueden hacer cumplir convenciones (nombres, colores de marca, límites entre capas).
IA, LLMs y el gusto personal/organizacional
- Se describe a los LLMs como potentes pero atascados en el nivel de un “nuevo empleado inteligente”:
- Sin memoria persistente e individualizada a largo plazo.
- El RL / la retroalimentación tiende a promediar hacia un estilo genérico, no hacia el gusto de una persona.
- Los modelos a menudo toman decisiones seguras, pero sin gusto o arriesgadas, salvo que estén estrictamente gobernados.
- Enfoques propuestos:
- Entrenar modelos de preferencia separados por persona/equipo; fallar cuando discrepen.
- Usar agentes más “gates” humanos o tickets de validación antes de cerrar el trabajo.
- Tratar a los LLMs como desarrolladores junior; codificar decisiones en ADRs/documentos y dejar que los sigan.
Filosofía de pruebas y los límites del TDD
- Se considera que las pruebas sirven para asegurar que algo “no está mal”, no para hacerlo “bueno” o con buen gusto.
- Se critica el TDD intenso y las pruebas unitarias de bajo nivel:
- La corrección no se compone de forma limpia; el comportamiento emergente aparece en niveles más altos.
- El exceso de mocking y los objetivos de cobertura del 100% reducen la confianza y ralentizan los cambios.
- Otros defienden el TDD cuando se aplica en niveles adecuados de abstracción y para bugs.
- Se sugieren pruebas de snapshot y regresión visual para gráficos/UI, pero no capturan el “se siente bien”.
UX, visuales y “sensación”
- Muchos señalan que las UIs/imágenes generadas por IA a menudo se sienten baratas o extrañas.
- Algunos creen que las redes neuronales pueden reconocer cualidades como “cursi”, dado suficiente número de ejemplos etiquetados.
- Las herramientas pueden probar aspectos objetivos (colores, consistencia del diseño), pero la fricción subjetiva de UX sigue requiriendo humanos.
Intuición, antropomorfización y pragmatismo
- La intuición humana (por ejemplo, percibir un fallo estructural) se compara con el gusto: basada en la experiencia pero difícil de codificar.
- El uso de “nosotros” con colaboradores de IA genera preocupación por una antropomorfización sutil.
- Varias voces abogan por aceptar lo “suficientemente bueno”, usando la IA como herramienta de apoyo mientras los humanos conservan el gusto final y la gobernanza.