En cierto nivel, muchos desarrolladores saben que deberían escribir documentación, o escribir más, o mejorar lo que han escrito. Y tienen un poco de culpa por no escribir documentación, por lo que cuando se les pregunte al respecto, le proporcionarán un montón de razones (o, tal vez de forma poco caritativa, excusas) para no hacerlo. Mi escritura no es lo suficientemente buena. Mi Inglés es pobre. Odio escribir No es mi trabajo Nadie lee los documentos. Escribir documentos no es tan importante como escribir código. Estoy ocupado.
Pero ninguno de esos es la verdadera razón. Hay muchas pruebas de que las personas leen documentación; Como muestra el enlace, a menudo claman por ello. Los escritores de idiomas no nativos producen habitualmente documentación valiosa. Muchos desarrolladores escriben documentos, aunque esa no es su habilidad preferida. Y todos están ocupados. Estos son impedimentos reales para hacer documentación, pero no son excepcionales ni insuperables. Las razones que dan los desarrolladores no son por qué la documentación no se escribe. No explican por qué los desarrolladores eligen no hacer una buena documentación.
La verdadera razón es que los desarrolladores no necesitan la documentación como otros usuarios la necesitan. Cuando un usuario encuentra un nuevo software por primera vez, necesita respuestas a preguntas como: ¿Qué es esto? ¿Como funciona esto? ¿Para que sirve? Los desarrolladores originales ya tienen las respuestas a esas preguntas a modo de experiencia. Pero la documentación es una prótesis para la experiencia. ¿Por qué molestarse con la imitación si ya tiene el artículo genuino? Los desarrolladores, por su cercanía a sus proyectos, podrían nunca experimentar el bien que la documentación hace para sus audiencias.
- ¿Cómo se compararían las industrias de semiconductores y de desarrollo de software entre 10 y 15 años después en términos de pago, tamaño de la industria y consolidación (seguridad laboral)?
- ¿Qué software debo usar para hacer una aplicación?
- Como consultor de software, ¿cómo respondería a un cliente difícil?
- ¿Cuál es el enfoque de prueba hacia los servicios web?
- ¿Cuál es el mejor enfoque para alternar características en el desarrollo basado en troncales?
No estoy conjeturando; Yo hablo por experiencia. Soy escritor técnico y amo mi trabajo. También programo de forma rutinaria. Pero, para ser sincero, si no fuera por orgullo profesional, probablemente no escribiría documentación para acompañar el código que escribo. Simplemente no lo necesito.