Este artículo de susam.net reflexiona sobre una decisión de diseño后悔ada en un proyecto personal llamado Wander Console, una herramienta web descentralizada y auto-hosteable que permite a los visitantes explorar páginas recomendadas por una comunidad de dueños de sitios web personales. El autor añade a su herramienta un parámetro de query string (via=) a las URLs de las páginas que se cargan, permitiendo a los propietarios de esas páginas ver en sus logs de acceso que el tráfico provenía de un Wander Console. Esta funcionalidad fue implementada tras una solicitud popular, aunque el autor confiesa que su instinto le decía que no era una buena idea, pero no pudo articular exactamente por qué.
El problema central es que añadir query strings a URLs tiene varios inconvenientes técnicos: primero, rompe la experiencia del usuario al modificar la URL original de la página visitada; segundo, genera URLs únicas e innecesarias que pueden causar problemas con el cacheo de contenido; tercero, introduce tracking implícito sin el consentimiento del usuario. Chris Morgan, en su blog referenced, explica que los query strings de tracking/abuso deberían requerir consentimiento explícito, no imponerse por defecto.
El autor reconoce que cometió dos errores: implementar una funcionalidad cuestionable bajo presión (estaba investigando teoría de grafos algebraicos con plazos) y hacerla opt-out en lugar de opt-in. Cuando algo como esto se implementa sin reflexión adecuada, debería al menos requerir que el usuario lo active conscientemente, no desactivarlo si no lo quiere.
Una lección importante del Jurassic Park que cita el autor: "Tus científicos estaban tan ocupados pensando si podían que no se preguntaron si deberían". Esta frase resume el problema de añadir features sin evaluar críticamente sus implicaciones. El artículo recomienda prudencia en el diseño de herramientas web: evitar modificar URLs ajenas, no imponer tracking, y tomar tiempo para razonar sobre las decisiones de diseño antes de implementarlas.
Wander Console existe actualmente en más de 50 sitios web con más de 1500 páginas recomendadas, demostrando que proyectos simples y descentralizados pueden crear valor sin necesidad de server-side logic compleja.
