Todavía no soy un desarrollador de Node.js, pero respeto a las personas que lo son, y no tengo una agenda para hacer que alguien use un idioma u otro.
Creo que las personas que dicen que desarrollar código en Node.js tiene ventajas, pero desde la perspectiva de la gestión de la configuración, usar PHP en un proyecto de equipo es más fácil y productivo que Node.js en la actualidad.
También hay contratación. Si está preparando un nuevo proyecto, ¿qué tan fácil es encontrar desarrolladores calificados que conozcan Node.js, en comparación con aquellos que conocen PHP?
- ¿Cuándo debe usar float vs inline-block vs table vs flex?
- ¿Cuál es el mejor lenguaje de programación para un sitio de viajes en línea que utiliza muchos precios externos (Expedia, Orbitz, etc.)?
- ¿Cuál es el mejor para hacer un sitio de nicho: WordPress o Joomla?
- ¿Cuál es el proceso de desarrollo del producto?
- ¿Qué tan importante es el conocimiento de bootstrap para el desarrollo web?
PHP es una tecnología madura, hay muchos más desarrolladores que pueden usarla, hay toneladas de recursos y toneladas de paquetes y extensiones de código existentes.
Se podría afirmar lo mismo sobre Javascript, pero no tanto sobre Node.js.
He estado involucrado recientemente con Node.js porque estoy ayudando a nuestro equipo de desarrolladores a crear una caja base Vagrant con herramientas de software instaladas. Todo fue bastante sencillo hasta que tuvimos que poner Node.js en la caja.
- Las versiones de Node.js disponibles en el repositorio de epel RPM son 0.10.36 (que se lanzó el 2015-01-26). Un paquete de solo 12 meses de antigüedad es increíblemente actual para un repositorio de RPM, pero obviamente está desactualizado.
- Cuando mi equipo de desarrolladores me pidió a mediados de diciembre de 2015 que instalara la “última” versión de Node.js, la última fue la 5.3.0. Solo han pasado ocho semanas desde entonces, y ya están a la altura de Node.js 5.6.0.
- Así que descargué el código fuente para 5.3.0 y escribí scripts de aprovisionamiento para compilarlo durante el aprovisionamiento del cuadro base. Esto duplicó el tiempo total necesario para construir una caja base. Quizás necesito crear un servidor RPM local, pero parece mucho trabajo para un paquete.
- Nodejs.org está periódicamente fuera de línea durante horas, lo que hace que sea muy inconveniente ejecutar compilaciones. Lección aprendida: descargue lo que necesita cuando pueda obtenerlo y guárdelo en su propio servidor de archivos.
- Los repositorios de NPM también están fuera de línea periódicamente.
- Varias herramientas de Node.js utilizadas por los desarrolladores requerían diferentes versiones conflictivas de algunos paquetes de NPM, y necesitaban que fueran globales. Esto crea un entorno de desarrollo dolorosamente complejo.
En general, esto no me da una buena primera impresión de Node.js como un proyecto maduro o estable. En este punto, sería reacio a recomendar Node.js en su forma actual para cualquier proyecto. Parece una pérdida de tiempo para mantener un entorno de desarrollo.
Mientras tanto, PHP se puede instalar simplemente con yum o apt-get. Auge. Hecho. Se puede instalar un entorno de desarrollo / prueba / producción para PHP de forma rápida y reproducible, basado en binarios oficiales y bien probados. Incluso PHP 7 es fácil de obtener como paquetes.