Me pone un debugger con patatas, por favor
Publicado por blaxter - 18 Oct 2007 a las 22:56He leído este post donde un desarrollador que ha asistido a una charla de Jim Weirich (creador de rake) habla sobre los debugger en general y sobre el poco soporte de un debugger en ruby en particular. Parece ser que algunos piensan que no tener soporte para un debugger es una feature:
Asking why Ruby has weak debugger support is like asking why a dolphin doesn't have gills. Ruby has weak debugger support because Ruby programmers shouldn't be using a debugger. Ruby supports TDD and BDD better than any other language except possibly Smalltalk. Debugger support is for languages that you can't run tests against gracefully.
WTF? ¿Un debugger es para lenguajes en los que no se pueden ejecutar tests fácilmente? Una leche. Un debugger es una herramienta para el desarrollo, punto. Si tu lenguaje favorito resulta que no tiene (aunque ruby tiene), no te inventes teorías o intentes convencer al resto de programadores de otros lenguajes (que si tienen debuggers) que tienes razón. En definitiva, no me llores. Lógicamente ha habido muchas respuestas frente a argumentos tan inconsistentes y frágiles, como la estupenda respuesta cuando tus herramientas apestan....
La ausencia de un debugger no es una característica, es una importante y significativa carencia en tus herramientas
También hay que reconocer que usando TDD, o simplemente pruebas, deberíamos anticiparnos y detectar bugs, y un debugger debería de ser innecesario. Pero prefiero tener la opción de poder usar uno cuando quiera, que su carencia. El ansia que es muy mala, cuanto más, mejor, ¿no?.
Actualización Abril 2008: Meses después se podría considerar que hay herramientas más que suficientes como para debuggear aplicaciones ruby con bastante facilidad. No tan bien como lenguajes como C o Java, pero si decéntemente.
4 Comentarios »
RSS feed para los comentarios de esta entrada.
Dejar un comentario
Esta obra está bajo una
licencia de Creative Commons.
Este blog funciona gracias a WordPress
con el theme GimpStyle
diseñado por Horacio Bella y adaptado por un servidor.
Feed entradas
Hola:
Estoy de acuerdo contigo. Errar es humano y para eso tenemos debuggers.
Tenía un compañero de la otra escuela. Decía que deberían quitarnos el debugger, porque así nos obligaban a ser más cuidadosos en la programación, simplemente por miedo a tener que depurar luego los errores sin debugger. Siguiendo la misma teoría, supongo que también deberíamos evitar que probaramos nuestros programas. Deberían entregarse, sin haberlos ejecutado ni una sola vez, al cliente. Y ya puestos, ¿para qué compilarlos?. Ni una sola compilación hasta el momento de entregar. ¡¡ Así seguro que somos muy, muy, muy cuidadosos por miedo a que se nos caiga el pelo luego !!!.
Se bueno.
Comentario por chuidiang — 19 Octubre, 2007 @ 21:55 #
El depurador (si, lo digo en español!) es una herramienta indispensable, pero usarlo en exceso puede que traiga malas consecuencias. Por ejemplo en mi trabajo pusimos una herramienta en producción y como no hay depurador pues nos volvimos locos. La mejor combinación es usar depurador + logs
Comentario por Josepul — 20 Octubre, 2007 @ 13:05 #
No, la mejor combinación es usar tests, los logs son para saber qué hace la aplicación en producción, no deberían de tener ninguna relevancia en tiempo de producción. El debugger cuanto menos se use mejor, pues trae muy malas costumbres, pero de eso a no tener la posibilidad de no usarlo hay un trecho.
Comentario por blaxter — 20 Octubre, 2007 @ 13:15 #
Lo puse en mi RSS a tu blog, muy bueno. Continua con el!, me gustaria si podrias comentar como se esta pinchando un poco la burbuja de Ruby y Ruby on Rails. Soy fanatico de PHP (CGI, CLI, y GTK) y Python , aparte de ganarme la vida como Cobolero…..:(
Comentario por Eddie — 25 Octubre, 2007 @ 3:45 #