Documentación: ¿Por qué no hay más desarrolladores que escriban manuales mejores y más completos?

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.

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.

Lo que les encanta a los desarrolladores es programar, no escribir manuales . En consecuencia, no muchos lo hacen.

Escribir buenos manuales también requiere buenas habilidades de escritura, lo que podría no ser el caso para todos los desarrolladores. Es difícil encontrar el momento para ser increíble en la programación y la escritura, ya que son dos habilidades muy diferentes .

Otra razón podría ser que las herramientas que están utilizando son demasiado complejas . Cuando, por ejemplo, quería documentar las decisiones de diseño para una aplicación que estaba haciendo, no pude encontrar la herramienta que tuviera las funcionalidades adecuadas y que fuera súper fácil de usar. Por lo tanto, fui y lo construí yo mismo: Pengloo .

Lo hicimos con la simplicidad en mente y le dimos un gran énfasis a su capacidad para estructurar el contenido adecuadamente. No estoy seguro de si es relevante escribir el tipo de manuales a los que se refiere, pero podría estar equivocado 🙂

¿Podría ser que las personas que persiguen una carrera como desarrolladores son a menudo las que tienen éxito siguiendo sus impulsos creativos, “haciendo lo que les gusta para ganarse la vida”? Y la mayoría de las veces las cosas “cuadradas”, como escribir una buena documentación, son más cuestiones de autodisciplina y orgullo profesional que, si se obedecen, le quitan tiempo a las cosas que son agradables y desafiantes. Además, en los antecedentes y el CV de los desarrolladores exitosos, sospecho que perfeccionar sus habilidades de escritura y adquirir una rutina que facilite escribir bien, a menudo no es una característica muy destacada.

Quizás las personas que combinan esos rasgos existen y producen una excelente documentación. Simplemente nunca los conozco.

La calidad de la documentación no contribuye al resultado final. Al menos, no hay una métrica que pueda usarse para determinar este valor

La escritura técnica es una habilidad y la mayoría de los desarrolladores desarrollan y no describen lo que están desarrollando a medida que lo desarrollan, sin mencionar que nadie lee la documentación, especialmente cuando su tamaño es novedoso. Para eso están las personas de la mesa de ayuda y ¿por qué recoger un montón de árboles por un puñado de cabezas de huevo y un montón de vertederos?

Porque escribir código es * mucho * más divertido.

More Interesting

¿Cómo se mejora la cultura de la empresa a una de apertura y colaboración de abajo hacia arriba en una startup de ~ 100 personas?

¿Qué es lo más interesante en las pruebas de software?

¿Con qué frecuencia una relación entre dos técnicos de software enfrenta un choque ideológico, especialmente cuando uno es de una empresa de servicios y el otro de una empresa de productos de primer nivel?

¿Cuáles son algunas buenas fuentes o libros para el diseño y la arquitectura del sistema?

Un amigo argumenta que los campos de entrenamiento, los MOOCS y los libros se consideran 'bombas y vertederos' en lugar de ofrecer una educación formal en CS. Si paso por MOOCS intensivos y campamentos de entrenamiento, ¿realmente me estoy engañando?

¿Cuál es la forma más rentable de convertir varios terabytes de videos FLV al formato H.263?

¿Por qué usaría o no utilizaría Mendix o OutSystems para el desarrollo rápido de aplicaciones comerciales?

¿Cómo se ve un algoritmo de código? ¿Qué es lo que necesita saber para poder hacerlo cuando esté programando?

¿Por qué es necesario mantener actualizado su software de seguridad?

¿Qué software es importante para un estudiante de arquitectura?

¿Cuánto ha contribuido LinkedIn al aumento de los salarios de ingeniería de software?

¿Cuál es la mejor manera de mostrar el estado futuro de la arquitectura de los sistemas de software a los ejecutivos de nivel CxO?

¿Cuáles son los buenos libros de desarrollo de software / arquitectura que uno puede leer?

¿Se puede demandar a una empresa por desarrollar software malo?

¿Por qué las personas en puestos de TI se llaman ingenieros?