¿Por qué la gente elige Ruby o Python sobre PHP?

PHP, como lenguaje, tiene una mala reputación por tres razones principales:

  1. INCREÍBLEMENTE es fácil de recoger. En parte porque el lenguaje está diseñado de esa manera, pero también porque hay una gran cantidad de documentación para PHP dirigida a personas que no sabe nada sobre programación y que nunca se debe enseñar nada sobre programación. 🙂 Este es mi ejemplo favorito: guía de WPDesigners “¿Así que quieres crear temas de WordPress, eh?” Http://www.wpdesigner.com/2007/0. Es brillante en el sentido de que asume absolutamente NINGÚN conocimiento sobre lo que diablos estás haciendo, y enseña PHP sin la necesidad de ningún conocimiento previo en absoluto. Lo que es genial, pero el problema es que estas personas piensan que realmente pueden programar, y luego proceden a liberar un flagelo de piezas de código no probadas, llenas de errores, ilegibles y horribles en el mundo, lo que le ha dado a PHP un mal rap. Drupal (y la increíble cantidad de complementos de mierda que está disponible para él) es un buen ejemplo de esto.
  2. Es asqueroso para una persona compsci. El lenguaje, aunque es absolutamente capaz, es como un conducto Leatherman pegado con una motosierra, un martillo y un pollo. No está diseñado de manera limpia de abajo hacia arriba por un científico informático, como la mayoría de los otros lenguajes, lo que da como resultado lo que se describe detalladamente en las respuestas a ¿Cuáles son los horrores de PHP?
  3. PHP ya no es genial . Alrededor de 2004, cuando se lanzó Facebook, PHP fue la mierda. Desde entonces, el desarrollo de la misma se ha estancado y el trono como la nueva y genial cosa de desarrollo ha sido superado por Ruby on Rails. Si duda del estancamiento de PHP, lea este http://tmont.com/blargh/2010/7/p… y compare el índice TIOBE si PHP en 2005 con el de ahora: http: //www.tiobe.com/ index.php / p …

Su pregunta está cargada.

“¿Por qué la gente elige Ruby o Python sobre PHP?”

  • ¿Cuáles personas?
  • ¿De verdad que sí?
  • ¿Es Ruby o Python?
  • ¿Cuál es el nivel de habilidad / experiencia / preferencia / contexto de trabajo de esas personas?

Los archivos de falacia podrían ayudar allí.

En cuanto a la pregunta real: o están más familiarizados con esos idiomas que con PHP, o han escuchado cosas malas sobre PHP y no tienen suficientes cosas malas sobre Python o Ruby, o temen salir de su comodidad Zona, o una multitud de otras razones.

Esencialmente debido a este PHP:

cubo de funciones ($ n)
{
devolución ($ n * $ n * $ n);
}

$ a = matriz (1, 2, 3, 4, 5);
$ b = array_map (“cubo”, $ a);
print_r ($ b);

Es este Ruby:

a = [1,2,3,4,5]
b = a.map {| e | e ** 3}
pone b

Lo que esto significa es que en lugar de escribir `array_map (” fun “, an_array)` puedes hacer `an_array.map block`, esto tiende a guardar más código y es más fácil de leer si consideras que este patrón se repite en todo el idioma. .

Sin embargo, ambos son grandes lenguajes. Con pros y contras.

Ah, las guerras del lenguaje. Qué divertido.

Los desarrolladores que pueden elegir sus herramientas a menudo eligen las que son más nuevas, más interesantes, más atractivas para explorar y usar, sobre las que son tradicionales, aburridas y de la vieja escuela.

PHP no tiene una gran reputación. Se ha visto mucho uso, algo así como los trenes han visto mucho uso. Es capaz, algo así como la capacidad de los trenes. Es fuerza de producción, algo así como cómo son los trenes. No es un avión de pasajeros, ni un avión de combate, ni una bicicleta, ni un segway, ni una tabla de skate, ni un auto de auto-manejo de Google, ni siquiera un Chevrolet, es un tren.

Al igual que los vagones en un tren se unen desde lejos, y al igual que a menudo no coinciden uno con el otro, y al igual que todos se ven obligados a alinearse y trabajar juntos de una manera muy restringida … con Con frecuencia, PHP está combinando tecnologías mal emparejadas, trabajando duro para que se alineen de manera adecuada y trabajen juntos. El resultado puede ser algo feo.

Con Ruby y Python, a veces, no siempre, pero a veces, es posible resolver problemas de maneras muy elegantes. Los desarrolladores eligen utilizar lenguajes, herramientas, protocolos y estándares que les permitan resolver problemas graves, pero no los pesan.

Php7 no está disponible y ¿por qué sabes que la gente elige Ruby o Python sobre PHP? Todavía se está usando mucho en todo el mundo por cierto. Desde que PHP nació, ayuda a las personas a construir MVP allí rápidamente y aún muchos productos grandes lo están utilizando.
Depende totalmente del caso. ¡No sobre el idioma!

Si bien depende de las exigencias de cada proyecto; Para responder a tu pregunta, aquí es por qué la gente elige Python sobre PHP:

1. Python tiene un mejor framework web que PHP
2. PHP tiene una curva de aprendizaje corta pero Python es mejor a largo plazo.
3. Python es más legible que PHP
4. Python ofrece herramientas de depuración más simples que están disponibles fácilmente
5. Las bases de código de Evented están disponibles en Python
6. Python es más ‘propósito general’ que PHP
7. El Lambdas, proporcionado por Python, ofrece una ventaja sobre PHP

¿No es suficiente? Lea detenidamente aquí: 10 razones por las que Python obtiene puntaje sobre PHP para el desarrollo web

Una buena razón para elegir Python o Ruby sobre PHP es que le permiten agregar código C a sus bibliotecas en lugar de requerir que se instale una extensión de PHP a nivel mundial. Tal vez PHP8 …

Debido a que PHP fue diseñado como un lenguaje de plantillas muy parecido al ASP clásico, es fácil para alguien que ha estado diseñando páginas web para grock. (También señalaría que PHP ganó a muchos de sus usuarios después de que MS eliminara el soporte para ASP clásico) pero tiende a volverse difícil de manejar cuando se crean aplicaciones web grandes sin un marco web bien diseñado como Slim. Cambié a python porque descubrí que el código fuente era más compacto e intrínsecamente más fácil de leer y seguir, especialmente años o meses después.

La gente piensa que esas elecciones son mejores. Puede que tengan razón. Tal vez sea mejor para ellos. Todos pueden elegir, es su decisión.