Como humano, y como programador, encuentro que es muy fácil cometer errores y pasar por alto ciertas cosas, especialmente cuando se presiona por el tiempo.
Es fácil, y quizás demasiado tentador, culpar a cierto lenguaje, por ser demasiado accesible para su propio bien. Pero eso sería pasar por alto el problema más amplio de la falibilidad humana, independientemente del lenguaje elegido para programar.
Por supuesto, hemos avanzado mucho desde el lenguaje ensamblador, y creo que sería una programación mucho más productiva en un lenguaje más moderno, como PHP, Python, Ruby o Java.
De hecho, PHP (y otros lenguajes de script) han reducido la barrera de entrada. Eso puede significar que más recién llegados a la programación prueben PHP primero. Pero eso no significa que todos los programadores de PHP estén, de alguna manera, menos calificados o menos capaces de aprender de sus errores que los programadores de otros idiomas.
Rasmus Lerdorf creó PHP en su forma original en 1994, ha evolucionado considerablemente desde entonces. En su encarnación más moderna, admite programación orientada a objetos, así como marcos excelentes, como Symfony. PHP como lenguaje se ha liberado de sus restricciones originales y ha crecido para ofrecer una gran flexibilidad en la forma en que los programadores pueden elegir usarlo. Puedes usarlo para crear un script de código de espagueti de 9,000 líneas, o puedes usarlo dentro del contexto de un marco MVC moderno, como Symfony: ¡es tu elección!
Sospecho firmemente que las vulnerabilidades de seguridad no están restringidas a un solo idioma.
Es tentador descartar a todos los programadores de PHP como algo menos capaces, o más propensos a escribir código inseguro. Pero me pregunto cuánto de eso es sesgo de lenguaje y cuánto de eso es un hecho.