Recientemente asistí a una conferencia impartida por Greg Wilson (Científico principal de Carpintería de Software). Del resumen:
La idea de que las afirmaciones sobre las prácticas de desarrollo de software deben basarse en pruebas es aún ajena a los desarrolladores de software, pero esto finalmente está empezando a cambiar: cualquier académico que afirma que una herramienta o práctica en particular hace que el desarrollo de software ahora se espera que más rápido, más barato o más confiable respalde esa afirmación con algún tipo de estudio empírico.
En general, la conferencia fue muy informativa y me dejó pensando profundamente en mi enfoque del desarrollo. En particular, ahora me encuentro buscando citas para respaldar muchas declaraciones. Anteriormente, había tomado la costumbre de simplemente repetir las verdades ofrecidas, tal vez con una nota mental para revisarlas más tarde.
En pocas palabras, estaba siendo crédulo .
Aquí hay un ejemplo tomado de la conferencia:
"Si más del 25% del código necesita refactorización, es más rápido volver a escribirlo".
Suena plausible, pero ¿es cierto? ¿Dónde está el estudio respaldando esto? ¿Es cierto para todos los idiomas? Y así sucesivamente.
Está bien, es bastante posible llevar esto a un extremo y no creer nada por nadie a menos que lo hayas derivado de ti mismo. primeros principios. De esa manera queda la locura (o tal vez las matemáticas ;-)). Pero, si alguien se acerca a usted con una declaración a lo largo del líneas de "Oye, al hacer esto en [elegir el idioma del momento] podremos aumentar la productividad al [elegir múltiplo de 10]%" eres ¿Está inclinado a aceptarlo o va a pedir evidencia probada?
Si es lo último (y espero que lo sea), entonces
- ¿A dónde irías para encontrar esta evidencia?
- ¿Qué tan estricto serías?
En resumen, si alguien le ofrece una declaración no verificada, ¿responderá con "cita requerida"?