Binary Coffee

PHP, un lenguaje polémico

binary coffee podcast espacio_binario
## ¬ŅC√≥mo Escuchar el p√≥dcast? <iframe src="https://anchor.fm/espaciobinario/embed/episodes/Episodio-1-PHP-un-lenguaje-polmico-eh40vc" height="102px" width="400px" frameborder="0" scrolling="no"></iframe> ## ¬ŅCu√°ndo, c√≥mo y qui√©n cre√≥ PHP? Nos encontramos en la d√©cada del 90, conocida tambi√©n como la d√©cada del internet y rodeados de lenguajes de programaci√≥n de los cuales a√ļn en la actualidad podemos encontrar algunos c√≥mo C++, Perl o Java que recientemente se creaba, adem√°s de otros lenguajes que ya no se encuentran entre nosotros como son el caso de Lisp y Pascal. En este contexto surge el conocido HTML, que aunque no es un lenguaje de programaci√≥n en s√≠ dado que se define como un lenguaje de marcas de hipertexto, o lo que ser√≠a en ingl√©s HyperText Markup Language, da paso a la programaci√≥n web que conocemos en la actualidad de lado de JavaScript, como cerebro de ese cuerpo carente de pensamiento que es HTML en su b√°sica expresi√≥n, y este d√ļo perp√©tuo de HTML-JavaScript es interpretado por los tambi√©n en nacimiento: navegadores web. En este inicio comentado, carentes de medios que te permitieran dar un poco m√°s de sentido al emergente internet, muchos desarrolladores fueron creando sus propias herramientas de trabajo. Es as√≠ como surge en 1994 a manos (o dedos, como prefieran) de un dan√©s-canadiense de nombre Rasmus Lerdorf: ‚ÄúPHP Tools‚Äú, acr√≥nimo de Personal Home Page Tools, y como su nombre lo indica, no eran m√°s que herramientas para el monitoreo de una p√°gina web, que en este caso particular, permit√≠an contabilizar las visitas a su curr√≠culum personal. As√≠ surge la primera versi√≥n de PHP, que para nada se parece al de la actualidad, pero que ya en su momento fue una idea brillante que mejoraba en gran manera el desarrollo de aplicaciones web. ## ¬ŅPor qu√© PHP destaca sobre otros lenguajes en esta d√©cada de los 90? - Es sencillo y f√°cil de aprender - Gratuito, open source y multiplataforma - Reutilizaci√≥n de c√≥digo, dado que al ser un lenguaje de scripting, no se pod√≠a ofuscar el c√≥digo, haciendo que muchas personas lo utilizaran, por la gran cantidad de c√≥digo disponible a la que pod√≠an acceder - Gratis, ante rivales como ASP de Microsoft - Por su popularidad y el coste en su momento de los hostings, el stack LAMP era casi la norma, y quien no pudiera permitirse un hosting, ten√≠a que adoptarlo aunque no quisiera. Ante la complejidad innata de los lenguajes existentes en el momento, tales c√≥mo c++, que en su gran mayor√≠a necesitaban ser compilados, e incluso con la aparici√≥n casi al mismo tiempo de java, que trae la revolucionaria idea de un lenguaje compilado de manera multiplataforma a partir de una m√°quina virtual que lo interpretara en cada sistema operativo, PHP c√≥mo lenguaje scripting y con una sencillez indiscutible, que llevaba a un desarrollo acelerado de las aplicaciones, fue sin duda una de las mejores opciones que emergi√≥ en esta d√©cada del internet. ## ¬ŅEn qu√© sistemas operativos est√° soportado PHP? Pues b√°sicamente PHP es un lenguaje de script, no necesita ser compilado, lo que lleva a que con tener en int√©rprete del mismo para cada sistema operativo (SO), sea posible ejecutarlo en cualquier plataforma. Comentar adem√°s que no siempre fue as√≠, no es hasta la versi√≥n PHP 3 que es lanzada en el 2000, que se hace posible utilizarlo en diferentes SO, anteriormente solo se pod√≠a utilizado en sistemas operativos compatibles con POSIX. ## ¬ŅCuando surge la especificaci√≥n de PHP como lenguaje de programaci√≥n? Primeramente definir que las especificaciones de un lenguaje, no son m√°s que las reglas que rigen dicho lenguaje. Llamemos reglas a todo lo referido desde sem√°ntica del lenguaje, hasta palabras reservadas del mismo. Esto es de mera importancia, dado que permite la reproducidad del lenguaje, es decir, que m√°s de una persona pueda crear su propio compilador del lenguaje, as√≠ como herramientas tales como de formateo de c√≥digo o simplemente un linter. Despu√©s de 19 a√Īos que PHP fuese creado, espec√≠ficamente en 2014, se crea la primera versi√≥n oficial de las especificaci√≥n del lenguaje. Esto puede parecer algo poco importante, pero para nada lo es. Si hacemos una r√°pida hojeada por otros lenguajes, podemos ver que pr√°cticamente, incluso antes de que se implementaran los compiladores e int√©rpretes de dichos lenguajes, se definieron sus especificaciones. Esto es lo que permite que lenguajes como java, tengan m√°s de un compilador como son el caso de openjdk y oraclejdk, que b√°sicamente hacen lo mismo, con la diferencia de que uno es privado y el otro no (y otras m√°s que no vamos a decir ahora mismo). ## ¬ŅQuien da soporte a PHP? ¬ŅQu√© versiones se utilizan actualmente de PHP? Las primeras versiones de PHP, las cuales fueron creadas por Rasmus, eran como se dijo antes, principalmente destinadas a los prop√≥sitos generales que su autor necesit√≥ en su momento, aunque al publicar dichas herramientas y ponerlas de c√≥digo abierto y libres de uso, aumentaron r√°pidamente su utilizaci√≥n a nivel mundial. Este crecimiento de usuarios que estaban utilizando PHP Tools, y m√°s adelante la versi√≥n refinada del mismo PHP/FI (PHP Form Interpreter) que heredaba la idea del anterior y agregaba una nuevas funcionalidades y herramientas, fueron todas principalmente desarrolladas por Rasmus. No es hasta 1997 que sale a relucir los papeles de dos estudiantes universitarios en Tel aviv, Andi Gutmans y Zeev Suraski. Estos dos personajes, contactan a Rasmus y empiezan a colaborar para sobre la base de PHP/FI, empezar un nuevo lenguaje con la idea del anterior, pero mejor√°ndolo y dando el surgimiento a las versiones ancestras directas del PHP que se utiliza en la actualidad, PHP 3. Mencionar que para este momento, se estima que aproximadamente unos 70000 dominios en internet, utilizaban PHP. La pr√≥xima entrega de PHP, vendr√≠a un poco despu√©s, en el a√Īo 2000. PHP 4, la nueva versi√≥n, ven√≠a nuevamente con un cambio dr√°stico, pero esta vez no a nivel de lenguaje, sino a nivel del core del lenguaje. Andi Gutmans y Zeev Suraski, fueron los part√≠cipes de este nuevo motor que precisamente nombraron a partir de sus nombres: motor zend. Este nuevo motor, continuaba siendo compatible con la versi√≥n anterior, pero mejoraba el soporte con la mayor√≠a de los servidores web, adem√°s de que propon√≠a una arquitectura modular, que permitiera mayor contribuci√≥n por parte de la comunidad. Y m√°s adelante y a partir de la versi√≥n PHP5, que sale en 2004 que sale con la versi√≥n 2 de este motor zend que mencionamos antes y una serie de mejoras significativas del lenguaje. Ya esta versi√≥n y a partir de la misma, todas las versiones venideras, fueron creadas y sostenidas por una comunidad de desarrolladores de todo el mundo, guiadas por el PHP development team, que no es m√°s que la empresa fundad por los personajes Andi Gutmans y Zeev Suraski, llamada Zend company, creada en 1999. Luego viene una √©pocas de estancamiento de la versi√≥n, donde no es hasta 2018, que sale la versi√≥n 7 de php, porq el desarrollo de la versi√≥n 6 fue todo un desastre, y todas las propuestas y mejoras que al final se definieron en esta versi√≥n, pasaron a ser subversiones de PHP5. Y es aqu√≠ donde viene la versi√≥n actual, que es PHP7 y la que se encuentra actualmente con soporte oficial por el PHP development team, y que se encuentra en su versi√≥n PHP7.3 > *Dato curioso*: Se estima que a√ļn en la actualidad, cuando hace m√°s de 3 a√Īos, desde 2017 que no se le da soporte oficial a PHP 5.6, que es la versi√≥n m√°s utilizada, pues hay posiblemente m√°s de 1 mill√≥n de sitios online, que a√ļn lo utilizan. Y esto ocurre tambi√©n con las √ļltimas verisones, dado que seg√ļn la p√°gina oficial de PHP, la √ļtima versi√≥n estable es PHP7.3 y todav√≠a hay muchos sitios que est√°n en versiones como PHP7.0 que ya no tiene soporte oficial. ## ¬ŅActualmente qu√© empresas utilizan PHP? - Wikipedia - Wordpress - Facebook, decir aqu√≠, que aunque despu√©s de cierto tiempo, y para solventar el crecimiento acelerado que ten√≠an y la carencia de PHP en cuanto a rendimiento, pues crearon su propio dialecto o versi√≥n de PHP, que nombraron Hack. Hack es un lenguaje de programaci√≥n libre y cualquiera puede acceder a este. - Slack - WhatsApp > *Nota*: Seg√ļn datos de la p√°gina web technology surveys, casi el 80% de los servidores de los que ellos tienen conocimiento, est√°n utilizando PHP. y por otra parte, casi la mitad de los mismo, utilizan PHP5, versi√≥n sin soporte desde 2017. Comentar que para investigar el stack de tecnolog√≠as de estas empresas, utilizamos en su gran mayor√≠a la plataforma https://stackshare.io/, donde los mismos desarrolladores pueden compartir que tecnolog√≠as se utilizan en las empresas o proyectos en que trabajan. ## ¬ŅEs factible actualmente ser un desarrollador PHP? ¬ŅHay ofertas de trabajo para desarrolladores de PHP? Actualmente PHP, es uno de los lenguajes menos remunerados, pero esto es f√°cilmente explicable si nos dedicamos a analizar los clientes. Generalmente los clientes corporativos y de grandes empresas, buscan productos robustos y con tecnolog√≠as en la misma l√≠nea, lo que lleva a que desarrolladores de lenguajes como Java sean mejor remunerados, porque sus clientes se lo pueden permitir. Mientras que si vemos los clientes que buscan a desarrolladores PHP, encontramos a peque√Īas empresas o personas independientes que quieres levantar sus negocios e incursionar en el mundo de internet, y claramente su presupuesto no es comparable. Esto no solo pasa con PHP, sino que tienen muchos otros lenguajes que se encuentran en la misma situaci√≥n, como Ruby por mencionar alguno. ## ¬ŅQu√© opina la comunidad de PHP? [**Eduin**](https://github.com/eduinlight): Fue el primer lenguaje en que empec√© en el mundo de la programaci√≥n web. Gracias a este lenguaje aprend√≠ much√≠simo conceptos, y usando Codeigniter como framework, hice varios proyectos. PHP se ha ido actualizando y hoy en d√≠a a bajado mucho el tiempo de respuesta. [**Lazaro Armando**](https://twitter.com/LazaroArmand0): PHP, por sus siglas de *Porquer√≠a Hecha Programaci√≥n*. Si quieres tener trabajo, aprende php, si empiezas un nuevo proyecto con este lenguaje; mejor ded√≠cate a otra cosa. ## Conclusiones A todos quienes nos escuchan, estamos muy interesados en su feedback, y que nos ayuden a mejorar. Por lo que ser√≠a muy bueno tener su apoyo en las redes sociales del podcast y que nos den sugerencias de qu√© temas tratar, as√≠ de qu√© partes o secciones deber√≠amos agregar o quitar al formato del podcast. Nos pueden encontrar en la cuenta en twitter [espac10binar10](https://twitter.com/espac10binar10) y en telegram en el grupo [espaciobinario](https://t.me/espaciobinario). Adem√°s de que pueden seguir el podcast en la plataforma que desees, ya que estamos en iboox, spotify, googlepodcast, entre otras, y de esa manera no te pierdas los nuevos cap√≠tulos que estrenemos. ## Bibiograf√≠a - https://www.php.net/manual (historia y documentaci√≥n en la p√°gina oficial de PHP) - https://sg.com.mx/buzz/sobre-php-y-su-relevancia (Historia y explicaci√≥n del por qu√© PHP sigue siendo tan usado en la actualidad) - https://www.itworld.com/article/2697195/php-gets-a-formal-specification--at-last.html (Noticia de cuando se crea y definen las especificaciones de PHP) - https://github.com/php/php-langspec (Proyecto en github con las especificaciones de PHP) - https://stackshare.io/ (p√°gina para investigar qu√© empresas utilizan PHP en su stack de tecnolog√≠as)
Opiniones