¿Por qué tantos desarrolladores culpan a PHP, como una razón para recoger malos hábitos de programación?

Los lenguajes de programación, como todo lo demás, tienen sesgos introducidos por sus creadores. Si se crea un lenguaje para ser limpio, idiomático, y hay documentación escrita para explicar las buenas prácticas con ese idioma, es más probable que un programador que use ese lenguaje escriba un código más limpio.

No he usado PHP ampliamente, pero por lo que he visto, no hace el esfuerzo de imponer y promover técnicas de programación limpias.

  • Los espacios de nombres se introdujeron en el idioma 14 años después de su inicio.
  • Muchos de los paquetes de idiomas estándar son solo un montón de funciones lanzadas al espacio de nombres global (por ejemplo, PHP: Mysql – Manual)
  • Una búsqueda rápida de PHP idiomático revela que no es realmente una gran preocupación para el lenguaje. Por lo que puedo decir, PHP fue creado para facilitar la escritura de scripts web muy pequeños (es decir, el nombre es Herramientas personales de la página de inicio), pero la mayoría de las aplicaciones web modernas son mucho más complejas.
  • PHP permite (¿alguno puede incluso promover?) Incluyendo código directamente en la página con html y lógica de presentación. Se ha convertido en una idea bastante aceptada que separar las preocupaciones es una buena idea. Otros idiomas (más modernos) generalmente intentan promover y hacer cumplir esa separación de preocupaciones.

Usando python como contraejemplo, fue diseñado para ser un lenguaje limpio e idiomático (Python (lenguaje de programación). Esto naturalmente lleva a más discusión y documentación sobre la calidad del código, lo que lleva a que los programadores de python tengan más recursos para corregir los malos hábitos. Creo que esto también es cierto para lenguajes como Ruby, Scala y Java.

“Hay personas a las que les gusta la programación. No entiendo por qué les gusta la programación”.
Rasmus Lerdorf, creador de PHP