Stack Overflow es, sin duda, la mejor y más potente herramientas de difusión de información de desarrollo en todo el mundo. Junto con Google se ha convertido en un favorito imprescindible para encontrar la solución a, prácticamente, cualquier duda relacionada con código.
Y cada año hacen una mega encuesta entre sus millones de usuarios sobre múltiples aspectos de la industria del desarrollo, en la cual se pueden desprender interesantes y sorprendentes análisis.
El análisis de Stack Overflow
Como dice en la portada de los resultados, este 2018 se han ampliado los temas que se preguntan en la encuesta de 30 minutos que han realizado miles y miles de desarrolladores. Y sus conclusiones más importantes son:
- DevOps y el aprendizaje automático son tendencias importantes en la industria del software actual. Los lenguajes y frameworks asociados con este tipo de trabajos van en aumento, y los desarrolladores que trabajan en estas áreas obtienen los salarios más altos.
- Solo un pequeño porcentaje de desarrolladores declaran que escribirían código poco ético; o que no tienen la obligación de considerar las implicaciones éticas del código. Pero más allá de eso, los encuestados ven un montón de ética dudosa. Los desarrolladores no están seguros de cómo denuncia los problemas éticos, y tienen diferentes ideas sobre quién es el responsable final de este código.
- Los desarrolladores son en general optimistas sobre las posibilidades que ofrece la inteligencia artificial, pero no están de acuerdo sobre cuáles son sus peligros.
- Python ha aumentado en los rangos de lenguajes de programación en nuestra encuesta, superando C # en popularidad este año, al igual que superó a PHP el año pasado.
- Al evaluar una oferta de trabajo, los diferentes tipos de desarrolladores aplican diferentes conjuntos de prioridades. Las mujeres declaran que sus mayores prioridades son: la cultura de la compañía y las oportunidades para el desarrollo profesional; mientras que los hombres dicen que sus mayores prioridades son la compensación económica y el trabajo con tecnologías específicas.
Poniendo las cosas en contexto
Primero, como en toda opinión o conclusiones de un análisis, dudemos de todo.
Hay cosas que llaman poderosamente la atención, como que el 93.1% de los participantes sean hombres, dejando la presencia de las mujeres en un raquítico 6.7%. Como menos malo podría señalar que las cifras mejoran un poquito (0,5%) en los estudiantes. Pero sin duda hay que empezar a tomarse muy en serio el hacer estudios de las causas de esta inmensa disparidad para tomar, si fuera necesario, las medidas más adecuadas.
Es decir, Stack overflow es un enorme campo de nabos, con casi siete excepciones por cada 100 desarrolladores. Lo que marca un sesgo importante a las conclusiones que se puedan obtener del análisis de los datos.
Luego hay una contradicción bastante llamativa. Los dos países con más profesionales son USA y la India. Si sumamos la norteamericana anglosajona más Europa, no llegamos ni al 50% de los encuestados; de hecho, solo la suma de todos los participantes en Asia supera el 30%. Sin embargo, el 75% de los desarrolladores se declaran blancos o descendientes de europeos, lo cual pudiera ser contradictorio o señalar un sesgo racista en cómo nos vemos a nosotros mismos.
Otra cosa que me ha “escamado”, supongo que será por el perfil de quien contesta a esta encuesta, es que un poco menos de la mitad de los Developers declaran contribuir a proyectos de Código Abierto, lo cual está a años luz de mi contexto en España.
Perfil del desarrollador medio
Los desarrolladores son jóvenes (de menos de 35 años), que conforman una semblanza de capa media alta; hijos de universitarios, y que a su vez también lo son; tan apasionados de su trabajo que lo consideran también como su hobbie principal; que curran entre 8 y 12 horas; y que no hacen ejercicio físico así les vaya la salud en ello.
Aun siendo universitarios, la autoformación es el modo más normal y generalizado de aprender una vez integrados al mundo laboral. Lo cual sucede de forma inmediata o casi inmediata en cuanto se ponen en el mercado.
Sin duda es un sector con pleno empleo, lo cual atrae a un 40% de intrusismo profesional. Es decir, tener una formación que no tiene nada que ver con programar.
Viendo la experiencia en programación de acuerdo con el tipo de puesto en la empresa, las cifras indican que la mayoría de los encuestados no superan el lustro programando. Pudiéndose inferir que, lo de ir escalando posiciones hacia puestos de gestión o coordinación, es un camino que sigue aplicando en todo el mundo.
Sobre lenguajes y tecnologías
Imbatible, el front end en general y el javascript en particular, han batido a todos sus competidores (por sexto año consecutivo). Python es quien más crece, desbancando a C# (que parece que está perdiendo fuelle), pero aún lejos de Java – quien lo ha visto y quien lo ve -o de SQL.
Mi sorpresa ha llegado al ver tan retrasado a TypeScript (tenía la sensación de que estaba usándose cada vez más) y más teniendo en cuenta que el 67% de los encuestados lo “amán”.
En la parte de librerías, Node.js sigue siendo el rey, seguido de la lucha entre Angular y React, que está ganando el primero, aunque con el aliento del segundo pegado al cogote. Y otro resultado inesperado llega con la entrada fuerte de .NET Core, ya que tenía la sensación de que se estaba adoptando poco en producción.
Sobre bases de datos cuatro apuntes. La excelente salud de MySQL luego de las dudas que se generaron sobre su futuro, la caída a los abismos de Oracle, el buen hacer de Microsoft con SQL Server que, siendo una BD relacional completa y compleja es la segunda preferida, y el crecimiento imparable de las BD en Cloud.
El gráfico de tecnologías conectadas muestra algo que tenemos que tener muy en cuenta al escoger la plataforma sobre la cual desarrollamos. Solamente la propuesta de Microsoft comprende Front-Back y Cloud bajo un mismo conjunto. Sin duda siguen siendo los listos de la clase que, a la chita callando, se han arrimado a las sombras de todas las tecnologías más utilizadas en la actualidad y las han adoptado en su stack tecnológico.
Como muestra, el surgimiento y reinado de Visual Studio Code, que ha desplazado a Sublime como entorno de desarrollo, de sistemas o DevOps. Vim, todavía aguanta en cabeza en estos dos últimos ámbitos, pero a duras penas. Amazon sigue siendo el rey de la Nube, pero Azure ya le ha comido la mitad del mercado, seguido del siempre presente Google.
Por último, sigue la contradicción entre el sistema operativo de la máquina de desarrollo, en donde se desarrolla y del objetivo de despliegue.
La mitad utilizan Windows, mientras que el 50% restante se lo reparten entre MacOS y Linux (en ese orden). Sin embargo, Linux se pone a la cabeza como plataforma de desarrollo preferida, seguida por un 35% de Windows y un mínimo de 18% sobre Mac OS.
Luego, en producción, statcounter marca que Android es el más utilizado para consumir aplicaciones informáticas, seguido muy de cerca por Windows, dejando a lo lejos a iOS, y Linux que tiene una presencia residual centrada, sobre todo, en servidores.
Tendencias de futuro
Me ha gustado mucho el enfoque de Stack Overflow para detectar tendencias en el sector, que divide las respuestas en “Amado”, “Temido” y “Deseado”, haciendo una distinción “fuzzy” que muestra inclinaciones y sensaciones personales.
Rust y Kotlin son los lenguajes que más satisfacción dan a sus programadores. Mientras que Python se muestra como el lenguaje con las mejores perspectivas de futuro al ser el tercero en ser más “amado” y el primero en ser “deseado”.
Por el otro lado, el vetusto Visual Basic 6.0, es el más temido/odiado, junto a Cobol y a CoffeScript. Ante los tres me asombra el número de personas que aún desarrollan con ellos, y sin visos de cambiar a corto o medio plazo.
Parece que React puede ganar la competencia frente a Angular en el transcurso del año, ya que le supera tanto en satisfacción como en ganas de ser aprendido.
La Inteligencia Artificial aparece en la lista por medio de TensorFlow, construido en Python (otra vez), que se utiliza para Deep Learning y consigue el mayor nivel de “amor” de sus programadores.
Mercado laboral
Las cifras nos cuentan que seguimos siendo una industria privilegiada, con pleno empleo y sueldos altos (aunque con grandes variaciones entre los USA y el resto del mundo); contratos indefinidos, pero teniendo la certeza de que no nos jubilaremos en la empresa donde estamos; satisfechos con nuestro trabajo, que es nuestra actividad de ocio principal; y con una alta tasa de emprendimiento, que está llenando el mercado de consultores profesionales liberales.
Y esto no tiene visos de cambiar durante lo que queda de esta década, viendo las enormes dificultades que se tiene en todo el mundo para encontrar y contratar programadores/desarrolladores, tengan talento o no.
Por otro lado, el crecimiento constante del número de lenguajes, librerías, herramientas, frameworks, tecnologías, etc., muestra una pendiente ascendente en el volumen de conocimiento e información necesario para ser un desarrollador productivo; que, además, no está siendo seguido con suficiente rapidez por los sistemas educativos; y que abocan a la autoformación y a la información colaborativa como los medios más validos para mantenerse en la cresta de la ola tecnológica que, cada vez, es más alta y empinada.
¿Tal vez estemos ante una burbuja y algún día explote?
Más información | Stack OverFlow Developer Survey Results 2018
En GenbetaDev | El perfil del desarrollador en España desde la visión de RRHH, De cómo las tripas de Stack Overflow aguantan el éxito, Encuesta Stack Overflow 2016 I, II y III