¿Qué idioma es mejor aprender para el desarrollo de software, aplicaciones y sitios web en la próxima década?

Lea primero http://norvig.com/21-days.html que ofrece información muy útil.

Tenga en cuenta que la programación es difícil y no se trata de conocer algunos lenguajes de programación (son solo herramientas, y aprenderá y usará varios de ellos), sino de resolver problemas con la ayuda de las computadoras . Debe leer SICP e Introducción a los algoritmos. Y necesitas unos diez años para aprender programación; como el aprendiz de violonchelo puede reproducir música mala antes de diez años de trabajo, podrá escribir programas malos en menos de diez años de trabajo …

Entonces deberías aprender varios lenguajes de programación. Si los sitios web son importantes para usted, asegúrese de estudiar también HTTP y HTML (tampoco lo son los lenguajes de programación, pero ambos son esenciales para los sitios web).

También recomendaría aprender algunos lenguajes de programación “académicos” o no convencionales (además de los comunes que todos utilizan). Por ejemplo, Ocaml con Ocsigen (un gran marco para el desarrollo web).

Los lenguajes de programación que aprenderá no son muy importantes (y tiene que aprender varios de ellos). Las habilidades y la experiencia que obtendrá son esenciales. Recomiendo contribuir a algún proyecto de software libre. Ver, por ejemplo, esto.

¿Qué herramientas son las mejores para construir una casa en la próxima década? ¿Un martillo? ¿Una sierra? ¿Un taladro? ¿Algo más?

Un lenguaje de programación es una herramienta diseñada para algún propósito. A menudo también se adapta bien a otros fines. Pero generalmente otros idiomas serán mejores en otros campos. Y sin especificar qué se supone que deben hacer estas aplicaciones, no le daré una pista sobre un solo idioma. Pero podríamos discutir algunas tecnologías si lo desea

  • C ++ -> la navaja suiza. Puedes hacer todo con eso. Puede ser difícil cortar madera, pero tiene una sierra. Y C ++ es un lenguaje muy rápido. Además, si necesita estar cerca de la máquina, entonces C ++ será la elección.
  • Elixir -> robusto, funcional, tolerante a fallas. Si estas tres actitudes son importantes, entonces Elixir es una de las mejores opciones. Un lenguaje muy joven (versión 1.0 en 2012) pero siguiendo la viñeta demuestra el paradigma y la filosofía de que los errores siempre existirán. Solo necesita aceptar que están allí y hacer que su sistema sea robusto contra él.
  • Rust -> C ++, pero con un nuevo concepto de gestión de memoria. ¿Qué pasa si su compilador se asegura de liberar las variables asignadas para evitar fugas de memoria pero aún así le permite trabajar con punteros y sin recolección de basura? Bienvenido a Rust.
  • Ir -> el camino fácil al lado oscuro de la fuerza. Un lenguaje muy simple. Fácil de aprender pero potente con una muy simple era crear llamadas asincrónicas. Otra gran característica: compilación cruzada. ¿Necesita binarios para varios sistemas operativos? Bienvenido a ir.
  • Clojure -> LISP al rescate. Tal vez solo mire los “grandes éxitos de Rich Hickey” y comprenderá por qué Clojure es un arma definitiva para crear aplicaciones con muchos menos errores. Clojure es realmente simple. Todo lo que necesitas es acostumbrarte a la sintaxis. Pero en realidad: solo pruébalo. Y como lenguaje JVM rápido como el infierno. (ver también: landoflisp.com)
  • Scala -> Bienvenido al mundo de Big Data. Akka streams, spark, akka actores, todas excelentes herramientas para este propósito. Scala se siente un gran académico y, a menudo, no va al grano, pero para ese propósito es una gran opción. Y rápido ya que como Clojure es un lenguaje JVM.
  • Elm -> Haskell para el desarrollo frontend. Elm no es práctico. Pero se siente bien lo que haces allí. Y es difícil hacer las cosas mal. Como Elixir, una lengua joven.

No existe el mejor idioma. Pero no use Java, se está volviendo bastante viejo y necesita una actualización, no es que Java sea malo, solo que hace mucho más con casi todo lo demás.

A menos que espere recibir gigabytes de datos y enviar al menos la misma cantidad cada minuto, todos los días, todos los días durante todo el año, entonces casi todo es muy bueno y lo llevará fácilmente a los próximos 4 a 10 años.

Ruby on Rails está hecho para hacer el trabajo. Contiene todo y el fregadero de la cocina. Tiene todas las herramientas que necesita para hacer lo que necesite, el sistema de paquetes GEM se encarga del resto. Es bastante bueno y puedes obtener tanta ayuda que no creo que ninguna otra opción te brinde más. Libros, screencasts, tutoriales, incluso gratis en youtube, lo tienes todo. También Rails está en constante desarrollo y no muestra signos de desaceleración.

NodeJS y Express, este es el nuevo chico en el bloque, por así decirlo. Es increíblemente rápido, tiene todo lo que necesita al alcance de su mano, todo está en JavaScript y tiene tantos paquetes que limita con la locura. No tiene problemas para poner su servicio en línea en solo minutos.

Go, a menudo llamado Golang, es un idioma de Google. Es muy asombroso y rápido. En una empresa para la que trabajé, hicimos pruebas con él y voló todo lo demás y luego descubrimos que solo estábamos usando 1 núcleo de 16 en esa máquina, por lo que la velocidad es increíble. Puede ser un poco tedioso escribir, no puede dejar atrás variables no utilizadas, importaciones o cualquier otra cosa. El administrador de paquetes no está controlado por la versión, pero hay formas de evitarlo. Es muy impresionante Te costará un poco encontrar libros e información sobre cómo hacer las cosas, pero eres bueno buscando recursos, todavía no puedo creer que Google lo haya llamado Ir, ya que es imposible buscar en Google google

Dentro de JVM, Java Virtual Machine Park, tienes Play Framework, es bastante bueno, pero se recomienda usar Scala para programarlo ahora. Dejé de usar Play hace unos años, pero fue bastante bueno en ese momento y fue una estafa descarada de Rails, pero no ocultó ese hecho y le dio créditos completos. Una cosa que me molestó bastante fue obtener datos recursivos, que es un modelo que contiene otros modelos, se bloqueará espectacularmente si lo intentas.

En PHP, que se está volviendo muy antiguo, pero debido a las horas locas que se dedican a cosas como los increíbles sistemas CMS, todavía se usa mucho y no muestra signos de ceder. Debido a la antigüedad y al alto uso, tienes muchos frameworks excelentes como CakePHP, Joomla, WordPress y podría continuar durante días.

Realmente nunca hay algo que sea mejor. Solo tiene que encontrar el que más le convenga y qué es lo que está haciendo. Cada lenguaje y marco tiene lados buenos y lados malos. Aquí no hay un lenguaje seguro, pero como Ruby y PHP, por ejemplo, tienen entre 15 y 20 años, no muestran signos de desaparecer, Cobol tiene más de 50 años, no desaparecerá y Java tiene 21 años y está Con mucho, el lenguaje de programación más utilizado en el mundo por un margen ENORME, a pesar de que ya no es genial y Oracle es el propietario cuestionable.

Simplemente encuentre algo a lo que tenga fácil acceso para obtener información y ayuda, que es en mis libros el mejor idioma para comenzar.

Es difícil decir qué idioma dominará la industria de la tecnología en la próxima década porque hoy en día todos los idiomas se usan para un propósito específico, por ejemplo, Java se usa para construir aplicaciones móviles. C y C ++ se usan para construir aplicaciones para escritorio y Javascript, Php y otros lenguajes se usan para construir aplicaciones web.

Las compañías tecnológicas como Google y Apple también están haciendo sentir su presencia, con Google’s Go simplemente superando a Swift de Apple para su inclusión en el Top Ten.

La mejor manera de ver lo que viene a continuación en la pista es seguir comprobando cuál será el futuro y parece que la realidad argumentada y la realidad virtual podrían ser el futuro.

No hay un idioma para cada situación. La razón de tantos idiomas es que son útiles para diferentes propósitos.
Sin embargo, si solo aprende bien un idioma, permítame recomendarle Scala. Los lenguajes JVM (es decir, relacionados con Java y que se ejecutan en todo) no van a desaparecer en nuestra vida, y son útiles en una gran variedad de situaciones. Scala es el más práctico y poderoso de los lenguajes JVM porque está diseñado para ser funcional desde cero, pero no lo obliga a trabajar con programación funcional y datos inmutables si no lo desea.

Tengo dos opciones para ti

Puede usar VB.NET, es un increíble lenguaje de programación utilizado para hacer aplicaciones de formularios, aplicaciones de consola y aplicaciones web.

El segundo lenguaje poderoso de C # que tiene un control avanzado sobre el hardware y el software, incluso en el futuro, podrá aprender el desarrollo del juego en unidad si conoce C #, también tiene poder sobre la aplicación Form, la aplicación Console y la aplicación web

Tercero

Python tiene un gran control sobre muchas cosas como exploit escribiendo el manejo de Api … programación de bots, etc.

Aún en mi opinión, C # es el mejor

Java es un lenguaje que utilizan las empresas de desarrollo de software, web y móviles. C #, JavaScript, HTML y CSS son favoritos de todos los tiempos.

Honestamente, hay un montón de herramientas e idiomas asociados con ellos, por lo que la decisión depende del tipo de aplicación que necesite desarrollar.

Siempre que conozca un lenguaje que tenga OOP (C ++ / Java / C #), uno que esté bastante cerca del metal (C / ensamblador) y un lenguaje de script moderno (Python / Ruby / Lua) estará bien.

Los idiomas en general no importan, los bits que se toman el tiempo son conocer su camino en una API con suficiente profundidad para que pueda ser productivamente competente en ellos y conocer cosas como estructuras de datos, patrones de diseño, algoritmos, etc.

No agarraría algo que vendría (digamos Swift) y me convertiría en un gran experto en ello.

Esto se ha preguntado con frecuencia: me imagino que alguien con los poderes apropiados en Quora puede combinar esto con esas otras preguntas, por ejemplo, ¿Qué herramienta de software o lenguaje de programación es mejor para los próximos 5 a 10 años (2016-2026)?

JS. Definitivamente JS.

Todo lo que puedo decir es que actualmente uso mucho Java, veo JavaScript en aumento y también uso WordPress.

Sinceramente, veo estas cosas dentro de diez años a partir de ahora. No estoy al tanto si algún cambio real de juego en el espacio web hoy.

JavaScript, Java, Python, Ruby, PHP, C ++.

Un idioma no será suficiente hoy en día.