¿Cuál es el mejor lenguaje de back-end para aprender para el desarrollo de aplicaciones web?

Go tiene una gran confluencia de características que lo hacen ideal para el desarrollo de backend:

  • Velocidad y rendimiento extremadamente alto
  • Fuerte apoyo comunitario
  • Fuerte apoyo de la biblioteca
  • Tipo de seguridad
  • Concisión de la expresión

Yo diría que todo esto es importante.

Java es otro fuerte contendiente. No es tan rápido, ni en ningún lugar como conciso, pero es la única opción en algunos entornos empresariales, y puede crear servidores que escalen razonablemente.

PHP es demasiado lento para ser tomado en serio. Python y Ruby son peores en este punto. Puede considerar necesitar 50 veces más servidores en esos idiomas para atender la misma cantidad de solicitudes.

Con Go, puede ejecutar uno o unos pocos servidores y nunca necesitará escalar para la mayoría de las cargas. Si las cosas se ponen ocupadas y necesita escalar, ¿preferiría pagar y administrar 10 servidores o 500?

He visto un servidor Python matar un proyecto por completo, porque calcularon que nunca podría ser rentable con los gastos del servidor requeridos. He visto que otro servidor Python cuesta más de $ 10,000 / mes en hosting para un trabajo que no debería haber necesitado más de 3 instancias de servidor (a un precio de $ 150 / mes).

Para aquellos que dicen que PHP, Python o Ruby son “lo suficientemente buenos”, les digo que sus servicios nunca se han vuelto populares. Si lo hacen, lo último que desea hacer es pasar todo su tiempo descubriendo cómo escalarlos sin tener que gastar mucho dinero. Es una posición mucho mejor para poder agregar nuevas funciones que su cliente desee.

Cualquier respuesta puede ofender a muchas personas, porque los programadores suelen apegarse “irracionalmente” a sus idiomas de elección. Es como hablar de su religión o nacionalidad … pero aquí voy.

No hay mucho que discutir sobre el front-end, porque solo hay una opción: Javascript. Podemos discutir sobre frameworks, bibliotecas, etc. Pero debe aprender HTML, CSS y Javascript, les guste o no.

Sin embargo, el lado del servidor abre opciones casi ilimitadas: idiomas, bases de datos, servidores, marcos, etc. Así que aquí depende de usted (o de los requisitos de sus empleadores o clientes).

Mi sugerencia personal es Python. ¿Por qué? Debido a que es un lenguaje de programación de propósito general (se puede usar en cualquier lugar, en cualquier dominio, y tiene muchas bibliotecas para casi cualquier tarea imaginable), es fácil de aprender, fácil de usar, fácil de leer, viene con ” baterías incluidas “, hay miles de bibliotecas y marcos y es muy fácil obtener ayuda en línea. Hay muchos recursos para aprender.

Además, es muy utilizado y respetado en las grandes empresas tecnológicas y en el mundo académico: Google, Dropbox, Quora y muchas otras empresas dependen en gran medida de Python.

Pero solo tiene un inconveniente: es un lenguaje dinámico y, como tal, no es tan rápido como otras opciones. Por lo tanto, ahora hay una tendencia a usar GoLang para las partes de alto rendimiento. Incluso hay un proyecto que transpila Python to Go (Grumpy). Ambos idiomas son simples y bastante fáciles de aprender. Si conoce uno, puede recoger rápidamente el otro.

Sugiero no preocuparse por la escalabilidad y el rendimiento ahora. Python es más flexible y divertido, y te servirá mejor, al menos al principio. Aprende, disfruta, juega mucho con él y crea algo increíble. Si algún día en el futuro siente que no es suficiente para su empresa súper exitosa, comience a jugar con Go. Ambos idiomas parecen jugar bien juntos.

No existe el mejor lenguaje de back-end, aunque para los casos de uso que implican escalado, PHP no es el mejor lenguaje.

PHP no es escalable debido a su mala arquitectura, pero sigue siendo el lenguaje de script del lado del servidor de desarrollo web más popular. Si quieres usar PHP, prueba The Hack Programming Language, un derivado de PHP en HHVM

Ir parece ser una buena opción, porque está escrito para hacer las cosas. Está cuidadosamente diseñado teniendo en cuenta cómo funciona el desarrollador, eligiendo la mejor sintaxis, palabras clave y similares. Es escalable y sí, también es popular, y parece tener un futuro brillante.

Otras buenas opciones incluyen el lenguaje perenne Java: popular, de clase empresarial, robusto, portátil, bibliotecas, soporte y demás.

Node.js es otro entorno de tiempo de ejecución para desarrollar aplicaciones escalables en JS con menos recursos.

Si necesita codificar aplicaciones realmente muy escaladas, como la magnitud de Google, debe utilizar un lenguaje de nivel de sistema como C o C ++ utilizando CGI.

Elegir sabiamente.

¿Mejor en qué? PHP es el más popular y Facebook está en PHP. Sin embargo, las personas que han usado PHP y Python tienen una respuesta que es Python.

Sabes PHP. Entonces, creo que deberías aprenderlo profundamente. No es necesario cambiar GoLang. Porque PHP es lo suficientemente bueno.

No hay mejor idioma. Elige el idioma que mejor conoces. Si conoce mejor php, use php! Hará el trabajo.