Algunos lo son, otros no.
La enseñanza es una habilidad, y no una desarrollada casualmente. Claro, algunas personas son maestras naturales, otras parecen no aclarar ni siquiera las materias más simples.
Ser programador de ninguna manera te inclina a ser un maestro más o menos que cualquier otra cosa. Conozco personas con doctorados y demás en informática, programación, etc., etc., y son terribles para explicar cualquier cosa de una manera comprensible. Sobreutilizan las palabras, “es básicamente … es solo … solo mira el código …” y así sucesivamente. No pueden repensar un tema desde una perspectiva diferente, no saben por qué nadie entendería algo de la manera en que lo hacen.
Sí, he estado cerca de programadores durante un cuarto de siglo. Si no tienen experiencia en la enseñanza y no están naturalmente inclinados a ello, no aprenderán la habilidad solo porque programan.