A veces me pregunto como es posible que hoy en día la gente siga cableando valores en su código.
Último ejemplo que me he encontrado: acts_as_sphinx. Este simpático plugin permite de manera muy sencilla que nuestros modelos active record lancen búsquedas contra un sphinx. Es sencillo, funciona y se adapta muy bien a lo que buscamos para una aplicación que estamos desarrollando y por eso lo usamos. Sin embargo, no es perfecto. Y lo que me “cablea” es que la caguen en algo tan trivial. Digamos que este plugin nos “obliga” a que el fichero de configuración de sphinx sea $RAILS_ROOT/config/sphinx.conf
(mala idea porque no se puede usar “de serie” una configuración diferente para producción y desarrollo, aunque esa ya es otra historia).
El código maligno se encuentra en acts_as_sphinx_tasks.rake
:
1 2 3 4 5 |
|
Ahora el fichero de configuración de ejemplo/documentación de sphinx:
1 2 3 4 5 6 7 |
|
Me parece muy bien que a los autores del plugin les guste que el fichero de pid esté en /var/run/searchd.pid
, pero yo no lo coloco ahí. ¿Era tan difícil, ya que sabes dónde localizar el fichero de configuración, extraer de él el nombre del fichero con el pid? Yo creo que no. Puede hacerse en 5 líneas. Menos incluso. Y menudo cambio.
Y alguién dirá que no pasa nada, que redefina las tareas rake o que modifique el plugin. Y yo diré que bien, que de acuerdo, pero que, como plugin que es, debería ofrecer una funcionalidad mínima y correcta, sin que me obligue a hacer nada a mayores (porque para eso es el código de terceros, para no tener que hacerlo uno mismo). No pretendo cambiar el funcionamiento del plugin. Sólo que haga lo que dice que hace correctamente.
Dejo en la recamara un ejemplo de cableo salvaje de valores en una libreŕia bastante conocida. Un día me animo y cuento la historia. Que no tiene desperdicio.
Lo sentimos, pero los comentarios están cerrados