Joel Spolsky es un conocido (sobre todo por el sitio web Stack Overflow, que fundó junto a Jeff Atwood) ingeniero de software, autor, emprendedor y divulgador, especializado en los campos de la programación y de la ingeniería del software.
Spolsky realiza una reflexión sobre un tema que he tratado recurrentemente en mis artículos y que es la comunicación como un elemento de gran valor e importancia tanto en los proyectos de desarrollo de software (traducción libre): «La diferencia entre un programador aceptable y un gran programador no se basa en el número de lenguajes de programación que dominan o si prefieren Python o Java, sino que se encuentra en la capacidad de comunicar sus ideas».
Esta cita, que sobre todo intenta poner en relieve la importancia de la comunicación, es extensible al resto de roles del proyecto.
Y es que acaso, ¿no es comunicación la codificación? No es lo mismo un código que se pueda leer, comprender y mantener con facilidad que otro en el que el programador no se haya aplicado en eso. ¿No es comunicación los comentarios en el código?, ¿no es comunicación la documentación técnica de un proyecto?, ¿no es comunicación la que tienes con los compañeros en el proyecto?, ¿no es comunicación la que puedes tener en un momento determinado con el cliente?, ¿con tus superiores?, ¿con personas de otros departamentos?.
Yo no resto importancia a la capacidad técnica de un desarrollador, antes al contrario, pero para poder destacar (salvo que estés al este de la campana de Gauss), esa cualidad debe venir acompañada por otras y la comunicación es una de ellas. De hecho muchas empresas, tienen muy en cuenta esa capacidad antes de contratar determinados tipos de perfiles.