Informe del ecosistema JVM 2018: sobre tu plataforma y aplicación
Andrew Binstock
17 de octubre de 2018
0 minutos de lecturaTe damos la bienvenida a la encuesta más grande que se haya realizado sobre desarrolladores de Java. Los datos presentados en el siguiente informe provienen de más de 10.200 cuestionarios. Si participaste en la encuesta, muchas gracias por dedicar tu tiempo a compartir tu experiencia en beneficio de los demás. Este informe se divide en cuatro publicaciones:
Informe del ecosistema JVM 2018: sobre tu plataforma y aplicación
También tenemos un atractivo informe en PDF, elaborado artesanalmente, que reúne toda esta información en un solo archivo descargable.
¡DESCARGA EL INFORME DEL ECOSISTEMA JVM 2018!
Sobre tu plataforma
15. ¿Qué plataformas en la nube usas?
Según nuestros datos, el 57% de las personas encuestadas usa algún tipo de plataforma en la nube.

Si consideramos solo a quienes sí usan plataformas en la nube, Amazon Web Services (AWS) lidera con casi dos tercios de los votos. Microsoft Azure y Google Cloud Platform le siguen, con el 18% y el 20%, respectivamente; Red Hat OpenShift y Oracle Cloud también están ganando terreno.

16. ¿Qué enfoques de computación en la nube usas?
Los contenedores lideran con el 43%, mientras que las máquinas virtuales (VM) se mantienen en competencia con un sólido 33%. Como tecnología relativamente nueva, Serverless/FaaS tiene una fuerte presencia: casi 1 de cada 10 personas encuestadas adopta este enfoque. PaaS, que existe desde hace mucho más tiempo, tiene una proporción similar, del 10%. Una de cada 3 personas encuestadas no usa ningún enfoque de computación en la nube.

17. ¿Qué herramientas de implementación continua o automatización de lanzamientos usas?
Casi 1 de cada 2 personas encuestadas no usa ninguna herramienta de implementación continua ni de automatización de lanzamientos. La proporción podría ser aún mayor, ya que casi 1 de cada 5 no sabe qué herramientas se usan para la implementación continua o la automatización de lanzamientos. Sorprende un poco que bash sea tan popular como Chef y Puppet. Aunque, ¿a quién queremos engañar? ¡A todo el mundo le encanta bash! Ansible es la principal herramienta de implementación continua, con un 16%.

Sobre tu aplicación
18. ¿Qué otros lenguajes (que no sean de JVM) usa tu aplicación?
En el mundo políglota actual, sería ingenuo suponer que los lenguajes de JVM son los únicos que se usan en las aplicaciones de JVM. De hecho, más de la mitad de estas aplicaciones también usan JavaScript en el frontend; 1 de cada 5 usa Python y casi 1 de cada 4, Node.js. Como era de esperar, muchos proyectos también usan SQL.

19. ¿Qué frameworks web usas?
Pocas cosas expresan mejor el dominio de Spring en el ecosistema de Java que este gráfico. Cuatro de cada 10 desarrolladores usan Spring Boot en sus aplicaciones, y es interesante ver que, por primera vez, superó al framework Spring MVC. JSF es el más cercano, con un respetable 19%, y Struts, pese a las noticias constantes sobre vulnerabilidades de ejecución remota de código, ocupa con fuerza el cuarto lugar: casi 1 de cada 10 desarrolladores lo adopta. Es probable que más de 1 de cada 5 desarrolladores presuma de lo pequeñas que son sus aplicaciones, ya que no necesitan ningún framework web.

20. ¿Qué frameworks ORM usas?
Más de 1 de cada 2 desarrolladores usa Hibernate en sus aplicaciones. Casi 1 de cada 4 está conforme con el viejo y confiable JDBC, y, por supuesto, los desarrolladores de Spring pueden usar la plantilla Spring JDBC, que utiliza el 23%. Una de cada 5 personas no usa ningún framework ORM para acceder a sus datos. (Los desarrolladores podían elegir más de una respuesta, por lo que los totales no suman 100%).

21. ¿Qué base de datos usas en producción?
Una vez más, Oracle Database ocupa el primer lugar: casi 3 de cada 10 aplicaciones la usan en producción. MySQL y PostgreSQL son competidores fuertes, con el 21% y el 20%, respectivamente. MongoDB es la base de datos NoSQL más usada, con un 5%.

22. ¿Qué servidor de aplicaciones usas en producción para tu aplicación principal?
Más de 4 de cada 10 personas encuestadas eligen Tomcat como servidor de aplicaciones. Esta opción rápida, liviana, de código abierto y favorita de la comunidad lleva mucho tiempo a la cabeza, y no parece que eso vaya a cambiar pronto. JBoss y Wildfly no se quedan muy atrás, con un 15%. En la categoría de servidores de aplicaciones empresariales de mayor escala, WebLogic supera ligeramente a WebSphere. La categoría «Otros» incluye TomEE y Liberty Profile, con un 1% cada uno, que encabezan ese grupo.

23. ¿Desarrollas en el mismo servidor de aplicaciones que usas en producción?
A pesar de los riesgos evidentes, más de un tercio de las personas encuestadas desarrolla en un servidor distinto al que usa en producción, y cambia el posible costo de las fallas por la comodidad. Sorprendentemente, quienes afirman usar servidores de aplicaciones distintos (o ninguno) durante el desarrollo tienen una gran variedad de aplicaciones y servidores en producción. Esperábamos encontrar sobre todo servidores de aplicaciones más grandes y monolíticos, cuyo uso local podría causarles problemas a los desarrolladores, pero las proporciones fueron similares.

24. ¿Cuántas dependencias directas de código abierto tiene tu aplicación principal?
Sería interesante saber cuántas personas tuvieron que comprobar cuántas dependencias directas tiene su aplicación. ¡Apuesto a que fueron la gran mayoría! ¡Qué suerte que no pregunté también por las dependencias directas y transitivas! De hecho, casi 1 de cada 4 personas encuestadas admite abiertamente que no sabe cuántas dependencias tiene. Esto podría deberse a que la aplicación se distribuye mediante un sistema de compilación más complejo. Los resultados muestran que menos de 1 de cada 20 personas encuestadas no usa dependencias de código abierto, mientras que un contundente 72% sí las usa. Si excluimos a quienes no lo saben, vemos que el 95%, es decir, 19 de cada 20 personas encuestadas, usa dependencias de código abierto en sus aplicaciones. Esto demuestra cuánto ha avanzado la adopción del código abierto y la importancia de garantizar que estas bibliotecas de terceros ofrezcan la seguridad, calidad y disponibilidad que necesitamos para nuestras aplicaciones.

Resumen de la plataforma y la aplicación
Más de 6 de cada 10 desarrolladores que usan plataformas en la nube implementan en AWS
Más de 4 de cada 10 desarrolladores usan contenedores
Más de 4 de cada 10 desarrolladores no usan ninguna herramienta de implementación continua
Casi 6 de cada 10 desarrolladores también incluyen JavaScript de frontend en sus aplicaciones
Casi 1 de cada 4 desarrolladores también usa Node en sus aplicaciones
4 de cada 10 desarrolladores usan Spring Boot
Más de 1 de cada 2 desarrolladores usa Hibernate en sus aplicaciones
Casi 3 de cada 10 desarrolladores usan Oracle Database en producción
4 de cada 10 desarrolladores usan Tomcat en producción
1 de cada 4 desarrolladores no sabe cuántas dependencias de código abierto incluye su aplicación
19 de cada 20 desarrolladores usan dependencias de código abierto en sus aplicaciones
¡Hay más en este informe! ¿Qué sección quieres leer ahora?
Informe del ecosistema JVM 2018: sobre tu plataforma y aplicación


