Ocho expertos comentan los Pros y Contras de programar con PHP

Balu29 Noviembre 2010 - 2:42pm 2 comentarios
Enviar por Email Imprimir

8 expertos comentan los Pros y Contras de programar con PHPEn Mashable recientemente publicaron un artículo muy interesante sobre PHP y la visión que tienen de él, distintos "expertos". El artículo se quedó entre mis borradores, pero como más vale tarde que nunca, aquí lo comparto.

En este artículo vamos a enfocarnos en el aspecto más amplio de PHP y dar respuestas a preguntas como ¿Qué es lo que hace a PHP un buen lenguaje? ¿Cuáles son los inconvenientes de programar con PHP? ¿Y cuáles son las mejores aplicaciones que se han hecho con PHP?

A continuación, te dejo las respuestas. Pero, no olvides también compartir tus ideas: ¿Cuáles son las mayores fortalezas y limitaciones de PHP?...

1. Elizabeth Naramore: Código Spaghetti

Elizabeth NaramoreNaramore es una empleada de SourceForge y fundó PHPWomen.org.

Ella nos dijo en un e-mail, "Una de las mayores fortalezas de PHP es también una de sus limitaciones. PHP es muy flexible en general, no hay menos de 30 maneras de realizar la misma tarea. (Por ejemplo, yo no creo que sea posible contar, en estos momentos, el número de frameworks de PHP que hay).

“Si bien esto es algo bueno para los que les gusta hacer las cosas a su manera, es complicado que otras personas continúen su labor, y hace que el debugging y refactoring se vuelvan una pesadilla. Esto podría dar como resultado hacks de hacks y un montón de código espagueti y basura... si los estándares de programación no son consistentes y las mejores prácticas no son seguidas”.

Cuando hablamos de lo que PHP hace bien, Naramore dice que es una gran fanática del framework para pruebas de Sebastian Bergmann, PHPUnit, el cual fue escrito en y para PHP.

2. Keith Casey: Seguridad

Keith CaseyCasey fundó una tienda de software y realiza una gran labor en el circuito de las No-conferencias.

Él dice que la mayor fortaleza de PHP es su ubicuidad y su relativa facilidad. “Puesto que puede ser usado para casi cualquier cosa, actualmente funciona en cualquier sistema operativo. Drupal, WordPress, Joomla, etc. se han beneficiado de esto y lo alimentan aún más.”.

Sin embargo, esta facilidad de uso es tanto una bendición como una maldición, desde el punto de vista de Casey. “La mayor debilidad de PHP es que puede ser muy fácil de aprender. No habían - y hay - algunas aplicaciones PHP terriblemente inseguras. Muchos de los no-desarrolladores no conocen y no saben valorar la seguridad. Se tiene la idea de que PHP es en sí insegura, cuando el problema recae dentro de cada proyecto.”.

En cuanto a las mejores aplicaciones creadas con PHP, Casey no es el único entre los “panelistas expertos” en señalar a Facebook. “Ellos han llevado a PHP a una escala más allá de lo que mucha gente ha considerado posible. Y que mejor, que han resuelto problemas de caché, operaciones, deployment, etc. Ellos han resuelto y compartido gran parte de esa información con la comunidad. HipHop es el proyecto más visible.

3. Lorna Jane Mitchell: Baja barrera de entrada

Lorna Jane Mitchell"Lornajane", como Mitchell es más conocida en línea, es una consultora, desarrolladora, escritora y oradora de PHP.

Al igual que Casey, Mitchell dice que la mayor fortaleza del lenguaje y su debilidad son una y es la misma: "Cualquier persona puede programar en PHP”.

"La baja barrera de entrada significa que hay mucho malo en el mundo de PHP. Pero el PHP malo que funciona es útil, incluso si no lo es mucho. Personalmente creo, que si se pueden resolver los problemas con PHP, entonces deberíamos de seguir adelante y hacerlo, aunque no es perfecto”.

Mitchell recomienda Joind.in como un buen ejemplo de lo que se puede hacer con PHP (Ella destaca que es un proyecto open source) y, también, apunta a phpMyAdmin, una aplicación construida con PHP para el manejo de uno o más servidores MySQL sobre la web.

4. Chris Cornutt: Flexible, pero “atolondrado”

Chris CornuttCornutt trabaja en PHPDeveloper.org y Joind.in y usa PHP desde 1998.

Las ideas de Cornutt parecen eco de las de Naramore; otra vez, la flexibilidad de PHP es tanto un pro como un contra.

Él dice que la capacidad de adaptabilidad del lenguaje “vuelve sencillo obtener y conseguir lo que uno quiere, sin tener que preocuparse en la configuración de una gran cantidad de recursos, previamente. Cualquier persona, desde un programador junior hasta un programador del más alto nivel, puede decir que tiene la solución y que ser capaz de romper las reglas cuando se es necesario es esencial para el desarrollo con PHP”.

"Desafortunadamente, esta también es una de sus mayores limitaciones. PHP, mientras es un gran lenguaje de desarrollo web, todavía tiene una mente un poco atolondrada. El desarrollo que se ha hecho en los últimos años, sufre de la mentalidad “¿no sería genial si…?”.”.

"Si bien esto puede llevarnos a algunas cosas novedosas y otras sorprendentes, de lo que el lenguaje puede hacer; también lo hace más difícil de mantener, a largo plazo. Eso es la mitad de lo que el desarrollo de PHP es: Encontrar la mejor manera de adoptar las mejores prácticas en el desarrollo a pesar de cómo las cosas fueron implementadas en el lenguaje.".

Cornutt también reconoce a Joind.in como un buen ejemplo de aplicación PHP. "Se basa en una plataforma LAMP bastante simple; pero hace varias cosas bien con la integración de servicios web externos.".

5. Abraham Williams: Copy-Paste Hacking

Abraham WilliamsWilliams es un desarrollador y a su estilo “defensor de hackers”.

Williams, al igual que sus colegas, admite que PHP “ofrece una ruta corta a un producto mínimamente viable”. También dice que los recursos disponibles en línea pueden ser geniales y terribles al mismo tiempo.

"Hay una enorme cantidad de código por ahí, listo para copiar y pegar, listo para hackear juntos. Por otro lado, la baja barrera de entrada termina en una gran cantidad de código basura que no nos gustaría tener en nuestro servidor.".

Él también dice que una de sus aplicaciones PHP favoritas es la plataforma de microblogging StatusNet (Http://status.net/).

6. Demian Turner: OOP Elegante

Demian TurnerTurner ha estado trabajando proyectos web y open source desde 1996. El se encarga de PHPKitchen.com y fue un finalista reciente de Seedcamp.

Mientras que muchos de los expertos anteriores dijeron que la baja barrera de entrada es un inconveniente, Turner tiene un enfoque diferente. El dice que “Ciertos aspectos de PHP son más sencillos de aprender en comparación con los mismos aspectos de otros lenguajes”, lo cual puede conducirnos a “un código terrible” .

Sin embargo, él ve a PHP como una excelente herramienta para desarrolladores disciplinados. “Se mantiene cerca de sus raices C, mientras que elimina algunos puntos de dolor innecesarios, como el manejo de memoria, apuntadores y el ciclo de compilación”. La implementación OOP es más sencilla, elegante y fácil de leer que sus pares. El mantra de Java de la “complejidad a cualquier precio” no aparece por ningún lado; los métodos con nombres concisos se usan en todo. Las librerías y extensiones existen para casi todas las tecnologías del planeta y la actividad del hacking y participación en comunidad son más aceptadas que en cualquier otro lenguaje de programación”.

Sin embargo, señala que PHP también tiene sus limitaciones. Turner dice que los desarrolladores tienen "demasiadas opciones a la hora de seleccionar una librería o framework para trabajar; y, la información disponible a veces es sesgada y poco fiable (escritos por adolescentes), por lo que una gran cantidad de tiempo se puede desperdiciar en búsqueda de la calidad".

Y por último señala que "En este momento no hay ninguna IDE decente para PHP, no hay algo comparable a lo que tiene disponible Java… Un nuevo candidato, que parece prometedor, pero no es free, es PHPstorm, hasta ahora he encontrado un alivio en comparación con Netbeans. Eclipse, en la Mac, al menos, no creo que entre en carrera. "

Como buen ejemplo de PHP, Turner señala a PHPDoc, es "probablemente la mejor aplicación PHP escrita hasta ahora".

7. Stuart Herbert: Documentación

Stuart HerbertHerbert viene programando con PHP desde 1999, ha estado escribiendo sobre PHP desde hace varios años y ha contribuido genialmente a Gentoo Linux.

El dice que la mayor fortaleza de PHP es “la documentación puesta a disposición en PHP.net de forma gratuita. Con algunos otros idiomas, hay que salir a comprar documentos como libros, pero no con PHP”.

Sin embargo, dice que el lenguaje “carece de un equivalente confiable al CPAN (Comprehensive Perl Archive Network) de Perl, una gran colección de software y documentación de Perl. El proyecto más cercano que tenemos a eso, es PEAR o PHPClasses.org. Ambos son útiles, pero ninguno brinda lo que CPAN ha dado a los programadores de Perl, desde hace años”.

Y en cuanto a grandes aplicaciones con PHP, dice que “La mejor aplicación tiene que ser Facebook. A diferencia de Twitter, ellos han tenido pocos problemas de escalabilidad que han afectado a sus usuarios. Simplemente funciona, un poco como lo hace PHP”.

8. Maggie Nelson: Comunidad y Percepción

Maggie NelsonNelson es una desarrolladora de PHP que trabaja actualmente en Flickr.

Ella dice que “La gran fuerza de PHP no radica en que sea fácil, sino en por qué es así. La mejor parte de PHP es su comunidad saludable (amigable, activa y productiva). Si simplemente estas empezando con PHP, inmediatamente tienes... una documentación en buen estado y fácil de acceder en php.net.

Nelson también dice que la comunidad de PHP esta llena de “geniales personas que siempre están dispuestas a explicar y ayudar a comprender. Sólo da un vistazo al canal  #phpc (de la comunidad PHP) en irc.freenode.net. A pesar de que este canal explícitamente afirma no ser un canal de ayuda, siempre apunta en la dirección correcta ante cualquier problema relacionado con PHP que se este enfrentando”. Señala a PHP Planet como un gran recurso para y por miembros de la comunidad de PHP.

Y cuando hablamos de los inconvenientes de PHP, Nelson piensa que todo es una cuestión de perspectiva.

“Hoy en día, la mayor limitación de PHP será como es percibida por los desarrolladores. Con los años, PHP ha carecido de las características que otros lenguajes ofrecen. En cierto modo, PHP es un lenguaje fácil de criticar. Ahí esta la crítica popular sobre la elección del separador de namespace o la molestia sobre el orden incoherente de los parámetros en funciones pre construidas.

“Estas son cosas pequeñas; pero son cosas que los desarrolladores parecen disfrutar al burlarse de ellas. En realidad, muchas de las críticas originales sobre el lenguaje se han abordado, mitigado o corregido por completo. Por ejemplo, PHP ahora cuenta con una manera más agradable de soporte a la programación orientada a objetos y un maravilloso estándar de librería pública.”.

Y para aquellos que se quejan de las limitaciones de PHP, Nelson concluye sucintamente: "PHP es de código abierto por una razón: Deja de cuestionarte, involúcrate y arreglarlo".

Para Nelson, las aplicaciones web favoritas de PHP incluyen a Flickr (naturalmente), la Wikipedia (que corre con MediaWiki, escrita con PHP) y Threadless, el ahora legendario, comercializador de camisas online.

Comentarios

Imagen de Eclipse

Yo no creo que se esté enfocando bien el quit de la cuestión.
Y quiero tomar como ejemplo a la plastilina: mientras que algunos sólo podrían hacer formas geométricas con la ayuda de hormas rectas, otros crean efigies o emulan un rostro humano sobre un cráneo, ayudando así a la criminología.
Pero esto por qué se presenta de esa manera?: por la flexibilidad del material.

Pienso que las dos mayores fortalezas de PHP son: FLEXIBILIDAD y PRESTACIONES, y en esta última, el grado de escalabilidad que tiene este lenguaje.
Imagínense que, con las mismas herramientas debamos moldear una figura en plastilina y otra en piedra.

No creo que la debilidad de que cualquiera pueda programar en PHP, escribiendo código sucio, redundante, no-reutilizable, pesado, e inseguro, se deba tomar como un "CONTRA" a fin de lanzar una evaluación final sobre el lenguaje en discusión.

Para que un sistema que se ha escrito en un lenguaje de programación, pueda evolucionar, el lenguaje utilizado debe poder escalarse, ergo, el lenguaje es por lo tanto FLEXIBLE.
La flexibilidad de PHP es la guinda sobre la torta. La magia la realizan los programadores.

Imagen de Darkovat

Coincido contigo Eclipse, la Flexibilidad con la que cuenta Php es de lo más hermosa en programación, porque nos permite desplayarnos, imaginar, transformar e idear diferentes formas (eficaces, económicas y seguras) de realizar diferentes tareas.
Dar los pros y contras de un lenguaje basados en lo que sus usuarios más inexpertos hacen no es justo; si en esas vamos, lenguajes "antiguos" como C++ y no tanto como Java tenían las mismas deficiencias para con sus usuarios de más bajo nivel.
Considero que la fortaleza de PHP aumentará cuando los standars de desarrollo mejoren y creen reglas y fundamentos claros para el desarrollo. Ya arrancaron varias empresas con sus frameworks, ahora bien hay que unificar todas esas experiencias y saber que hacer y que no hacer.

Saludos!

Tutoriales

Cómo descargar videos de VK.com
En este artículo voy a explicar como descargar videos y películas...
Descargar Facebook Móvil Gratis
Por si aún no lo han hecho, es posible descargar Facebook Móvil...
Cómo generar tráfico web con las redes sociales - Paso a Paso
Muchas empresas están publicando contenidos como la forma de crear...

Artículo Recomendado

3 Tips cruciales para recuperar archivos eliminados
¿Te imaginas perder el trabajo de toda una semana en tan solo unos segundos? Todos hemos pasado por este problema. Quizás eliminamos por error un archivo importante o lo borramos sin pensar que era valioso para otro... más