EDICIóN GENERAL

Lenguajes de programación: Python es el más popular de 2019 según IEEE Spectrum

#17 Sigo sin entender todo ese odio por Java
#22 a ver con cual lenguaje creas un software para cualquier plataforma...
#56 Python mismo?
#56 ¿Todos? Solo hay que usar el interprete o el compilador de cada plataforma y librerías comunes de bajo nivel.

y el Java es famoso por ser incompatible consigo mismo de una revisión menor a la siguiente.
#107 ya te tienes que preocupar de no usar ciertas funciones del sistema operativo o ir adaptando
#22 gente que programa poco pero frecuenta muchos foros de juankers
#76 Inicié yo el asunto y voy a seguir el flamewar. Llevo 25 años programando profesionalmente, haciendo análsis y dirigiendo proyectos. He programado en C, C++ (standard, Microsoft), Java, Java Servlets, Java applets, aplicaciones en Tomcat (Total de javas: unos 10 años), javascript, Perl (mi lenguaje preferido durante mucho tiempo), Python, PHP, CGI, Pascal, LISP, ensamblador del x86, del 68K, de microcontroladores (PIC, AVR), VHDL de FPGAs, *sh, AWK, BASICs, COBOL, FORTRAN, y luego los declarativos como HTML, XHTML, CSS, XML, XSL, XSLT, DSDs, he programado servicios SOAP y REST con JSON, y bueno, todo lo que me olvido.

Creo sinceramente que la informática ha perdido entre cinco y diez años de avance por culpa del Java. Es engorroso de usar (para cada mísera acción tienes que escribir cuatro líneas, si no usas un IDE que escriba por tí y te corrija las erratas estas muerto), pesado (necesitas el JRE en cada sitio que vayas a ejecutar), consume una barbaridad de recursos (ahora algo menos, pero al principio se cargaba una VM completa por cada instancia, el grabage collector es una quimera, pero claro, como ahora nadamos en gigabytes y gigahercios qué más da), lento (hasta la llegada del JIT, claro, pero anula la filosofía de la VM, para eso compilas tu) y completamente absurdo (Lleva el OOB hasta el extremo. Cualquier otra implementación de objetos es más práctica). Sólo tiene valor didáctico, para enseñar programación estructurada y OOB. Para la vida real no vale.
Lo que ha tenido es un márketing muy bueno respaldado por empresas grandes que han conseguido meterlo en la universidad y en la empresa ha sido aceptado por CTOs que no entendían una mierda y se lo han comido con patatas.

Por último, es una pesadilla de ciberseguridad. Está programado con el culo y es un puto coladero. Qué puedes esperar de un lenguaje donde la propia licencia advierte de que NO está preparado para aplicaciones médicas, de tiempo real, o donde pueda estar en juego la vida humana, y que no se hacen responsables...
Actualmente trabajo en ello. Lo primero que hacemos es desinstalar todos los javas que no sean imprescindibles, y para el resto organizamos nuevos desarrollos en otros lenguajes para poder desinstalar el Java cuanto antes.
#108 por partes, por partes.

- Si "por culpa de Java" hemos perdido de 5 a 10 años de avance, imagínate dónde estaríamos aún si cada vez que sale una nueva tecnología tuviéramos que reescribir y migrar nuestros sistemas a éstas.

- Java no está preparado para aplicaciones de tiempo real, como cualquiera de los lenguajes en los que la memoria se gestiona automáticamente: Python, Javascript, Go, C#, Ruby, ...

- Afortunadamente, no todo el mundo necesita aplicaciones de tiempo real.

- El "peso" de una máquina pueden ser 50 megas, como mucho... lo que es ridículo en un sistema actual. El coste de levantar una máquina es también despreciable cuando se supone que ha de ejecutarse durante, siendo muy pesimistas, varios minutos en contenedores y días o meses en otros sistemas. Afortunadamente, Java también evoluciona y para casos muy volátiles se sacó el sistema de módulos, e incluso GraalVM permite compilar ejecutables en código nativo.
#108 Menos mal que no trabajamos para ninguno de los proyectos que diriges {0x1f609}

menéame