Ante la oleada de gente que viene hablando de NodeJS, la cual también, alguna tiene cierto desprecio hacia PHP... cual creéis que será el futuro de PHP? Conviene seguir trabajando con este lenguaje?
Te voy a ofrecer mi opinion, desde el punto de vista "empresarial" y como una persona que esta aprendiendo a programar y por lo tanto, investigando donde enfocar mis esfuerzos:
Ahora mismo, para poner en marcha una plataforma web "en produccion" para una empresa, es dificil competir con PHP, quizas simplemente porque se lleva mucho mas tiempo desarrollando y por lo tanto, las plataforma existentes son mucho mas estables:
Quieres una web corporativa con secciones actualizables por usuarios no expertos? Es dificil (o imposible) competir con Wordpress, Drupal, y similares, aunque en el entorno JS ya empiezan a salir cosas interesantes, como por ejemplo:
Aunque mi impresion es que estas plataformas son *actualmente* más dificiles de instalar y operar, y quizas menos estables que sus competidores de PHP, por lo que dependiendo del entorno iria por una solucion u otra.
Si lo que buscas es una plataforma de comercio electronico, mi impresion es que la mayoria optan por una de las siguientes:
Magento
Prestashop
Woocommerce (acabo de leer un articulo americano que asegura que woocommerce es la tecnologia detras de mas del 50% de las tiendas online. No se si sera veridico, pero bueno).
Todas ellas son PHP.
En stackoverflow he encontrado lo siguiente:
Reaction: https://github.com/ongoworks/reaction
Getfwd: https://github.com/getfwd/fwd-node-client
Traider: https://github.com/EastpointSoftware/traider.io/
Ottemo: https://github.com/ottemo/ottemo
Nodeshop: https://github.com/topley/nodeshop (development stopped)
Marketcloud http://www.marketcloud.it/ (backend as a service, has a nodejs SDK) However, there isn't a clear winner yet and they're all not stable for a production site.
Y tambien Calypso.
El problema principal en todos estos casos es que no es tan estable como los competidores de PHP. Un sistema que parece interesante es https://spreecommerce.com/, construido en RoR.
En foros parece que hay algunas alternativas interesantes a PHP, sobre todo:
Discourse.org (RoR backend / Ember.js frontend) - este es el que usamos nosotros en OpenROV.com y foro.OpenROV.es
NodeBB.org - tiene una UI muy bien hecha (a mi gusto), y tiene un chat integrado (adios slack, etc.). Perfecto para crear comunidades. Lo malo es que me ha costado mas hacer que funcione bien en un entorno de produccion, y lo estoy testeando todavia.
Al final, creo que depende un poco de las necesidades que tengas. Es dificil competir con el entorno PHP en cuanto al ecosistema existente (plugins, themes, vamos que no tienes que volver a inventar la rueda cada vez que quieres desarrollar algo).
Pero plataformas y frameworks como node.js, MEAN stack, RoR, etc etc tienen muchas funcionalidades interesantes que puede ser intreresante, sobre todo desde el punto de vista de creación de apps "in-house" que quieres poder escalar rapidamente.
Concluyendo: los dias NO estan contados para PHP. En desarrollos para terceros, sigue siendo el lenguaje más interesante por las herramientas que tienes a tu disposicion y el ecosistema existente.
Pero está claro que están saliendo muchas alternativas a su "hegemonia" como lenguaje web, y que ofrecen posibilidades que son dificiles de emular con PHP, sobre todo en todo lo que concierne Single Page Applications.
Personalmente, estoy enfocando mis esfuerzos en JS frameworks y en RoR. A quien no le gustan las piedras preciosas? ;)
Gracias por tu respuesta Roy. La verdad es que supongo que dependerá de lo que quieras desarrollar, ya que para una web empresarial veo con poco sentido usar Node cuando puedes usar un WordPress...
Los que dicen eso no han probado el framework Laravel :D, ha elevado el desarrollo en PHP a un nivel exquisito. Y además, Google e Intel van a invertir en PHP7, normal, les conviene y mucho: http://www.phpclasses.org/blog/post/307-Google-and-Intel-to-Help-PHP-7-to-Become-Faster-and-More-Secure--Lately-in-PHP-podcast-episode-62.html
La verdad nunca pude probar laravel, pero ganas no me faltan. Siempre critican a PHP frente a Node lo de trabajar en tiempo real, que hay de cierto en esto?
Como viene PHP7 en cuanto a este tema?
No me refiero a código, sino a trabajar con datos en tiempo real, a trabajar con sockets, por ejemplo, socket.io en Node JS. En PHP también se puede trabajar con sockets, pero no se si hay problemas de concurrencia... siempre veo comparativas entre Node y PHP y en ellas indica que el nivel de saturación del servidor en PHP aumenta a medida que hay mas usuarios haciendo peticiones, en Node no (es lo que muestran esas comparativas). ¿No hay alguna forma de solucionar esto en PHP?, o simplemente si por ejemplo, tengo un juego en línea (una especie de dashboard, un comunio), ¿es recomendable que lo monte en un entorno con Node y desarrolle todo con JS?
La principal ventaja (o no, dependerá de tu proyecto) de Node frente a PHP es que es una plataforma orientada a eventos. El beneficio de esto es que no hará falta ejecutar la aplicación de principio a fin como pasa en PHP para responder a una petición, sino que se lanzará el evento en concreto que se pida que, a su vez, ejecutará la lógica de negocio que en un momento dado se necesite.
También te digo que se pueden usar ambas tecnologías al mismo tiempo; un ejemplo muy recurrente es el de tener una aplicación web en PHP con algún tipo de chat sobre Node.
La verdad es que estoy un poco cansado de la gente que echa la culpa al lenguaje de programación de si algo no va bien; pienso que es echar balones fuera.
Las cosas se pueden hacer terriblemente mal tanto en Node.js como en PHP como en Ruby como en Python... La cuestión es cuán buen programador eres para no cometer errores garrafales.
El futuro de este lenguaje es ser un java dinámico... Si le quitas el dolar y la flecha y tal y como se trabaja ahora cada vez es más javero. No es bueno ni malo, cada tecnología tiene sus virtudes y defectos, no creo ni que desaparezca ni que sea la mejor opción para muchas cosas. Recordar que todavía hay gente que programa en COBOL...
Es un lenguaje "feo", te lo digo yo que lo llevo usando más de 10 años, que cuando se buscan programadores PHP aparece mucho integrador de CMS.
Es un lenguaje que ha tenido un momento dulce, que se ha ninguneado y que ahora a mi parecer (y es mi opnión) se está consolidando. Todo "phpero" que lleva años con este lenguaje seguro que se ha hecho su propio framework... puff ^.^ ahora las cosas han cambiado y hay frameworks pequeños, grandes y monstruosos.
A mi parecer, PHP7 va a significar un relanzamiento del lenguaje y todas las tecnologías que existen alrededor. Durante mucho tiempo se vivió de los réditos (PHP es fácil de aprender y permite desarrollar con rapidez, más teniendo en cuenta el gran número de frameworks que han ido surgiendo) pero PHP estaba un nivel por debajo de otros lenguajes como Ruby, Python, Java, etc. Parece que se han puesto las pilas en el core de PHP y han ido añadiendo nuevas capacidades al lenguaje además de mejorar enormemente su rendimiento.
Que PHP siga evolucionando es bueno. Es bueno para la gente que come de PHP y para el resto de tecnologías que deben mantener el pulso por ser el de mayor uso.
Saludos.
18/08/2015 13:56
Ahora mismo, para poner en marcha una plataforma web "en produccion" para una empresa, es dificil competir con PHP, quizas simplemente porque se lleva mucho mas tiempo desarrollando y por lo tanto, las plataforma existentes son mucho mas estables:
Quieres una web corporativa con secciones actualizables por usuarios no expertos? Es dificil (o imposible) competir con Wordpress, Drupal, y similares, aunque en el entorno JS ya empiezan a salir cosas interesantes, como por ejemplo:
Pencilblue CMS - https://pencilblue.org/
keystone.JS - keystonejs.com/
Aunque mi impresion es que estas plataformas son *actualmente* más dificiles de instalar y operar, y quizas menos estables que sus competidores de PHP, por lo que dependiendo del entorno iria por una solucion u otra.
Si lo que buscas es una plataforma de comercio electronico, mi impresion es que la mayoria optan por una de las siguientes:
Magento
Prestashop
Woocommerce (acabo de leer un articulo americano que asegura que woocommerce es la tecnologia detras de mas del 50% de las tiendas online. No se si sera veridico, pero bueno).
Todas ellas son PHP.
En stackoverflow he encontrado lo siguiente:
Reaction: https://github.com/ongoworks/reaction
Getfwd: https://github.com/getfwd/fwd-node-client
Traider: https://github.com/EastpointSoftware/traider.io/
Ottemo: https://github.com/ottemo/ottemo
Nodeshop: https://github.com/topley/nodeshop (development stopped)
Marketcloud http://www.marketcloud.it/ (backend as a service, has a nodejs SDK) However, there isn't a clear winner yet and they're all not stable for a production site.
Y tambien Calypso.
El problema principal en todos estos casos es que no es tan estable como los competidores de PHP. Un sistema que parece interesante es https://spreecommerce.com/, construido en RoR.
En foros parece que hay algunas alternativas interesantes a PHP, sobre todo:
Discourse.org (RoR backend / Ember.js frontend) - este es el que usamos nosotros en OpenROV.com y foro.OpenROV.es
NodeBB.org - tiene una UI muy bien hecha (a mi gusto), y tiene un chat integrado (adios slack, etc.). Perfecto para crear comunidades. Lo malo es que me ha costado mas hacer que funcione bien en un entorno de produccion, y lo estoy testeando todavia.
Al final, creo que depende un poco de las necesidades que tengas. Es dificil competir con el entorno PHP en cuanto al ecosistema existente (plugins, themes, vamos que no tienes que volver a inventar la rueda cada vez que quieres desarrollar algo).
Pero plataformas y frameworks como node.js, MEAN stack, RoR, etc etc tienen muchas funcionalidades interesantes que puede ser intreresante, sobre todo desde el punto de vista de creación de apps "in-house" que quieres poder escalar rapidamente.
Concluyendo: los dias NO estan contados para PHP. En desarrollos para terceros, sigue siendo el lenguaje más interesante por las herramientas que tienes a tu disposicion y el ecosistema existente.
Pero está claro que están saliendo muchas alternativas a su "hegemonia" como lenguaje web, y que ofrecen posibilidades que son dificiles de emular con PHP, sobre todo en todo lo que concierne Single Page Applications.
Personalmente, estoy enfocando mis esfuerzos en JS frameworks y en RoR. A quien no le gustan las piedras preciosas? ;)
31/08/2015 06:45
También estoy aprendiendo Ruby y RoR.
Saludos.
19/08/2015 20:24
31/08/2015 06:55
Como viene PHP7 en cuanto a este tema?
01/09/2015 07:24
01/09/2015 09:07
01/09/2015 10:24
También te digo que se pueden usar ambas tecnologías al mismo tiempo; un ejemplo muy recurrente es el de tener una aplicación web en PHP con algún tipo de chat sobre Node.
31/08/2015 06:31
Las cosas se pueden hacer terriblemente mal tanto en Node.js como en PHP como en Ruby como en Python... La cuestión es cuán buen programador eres para no cometer errores garrafales.
08/09/2015 12:28
Es un lenguaje "feo", te lo digo yo que lo llevo usando más de 10 años, que cuando se buscan programadores PHP aparece mucho integrador de CMS.
Es un lenguaje que ha tenido un momento dulce, que se ha ninguneado y que ahora a mi parecer (y es mi opnión) se está consolidando. Todo "phpero" que lleva años con este lenguaje seguro que se ha hecho su propio framework... puff ^.^ ahora las cosas han cambiado y hay frameworks pequeños, grandes y monstruosos.
21/09/2015 17:26
Que PHP siga evolucionando es bueno. Es bueno para la gente que come de PHP y para el resto de tecnologías que deben mantener el pulso por ser el de mayor uso.