La comunidad de desarrolladores Go ha respondido a una encuesta sobre su experiencia con este lenguaje de programación de Google y sobre qué echan en falta. Un dato muy curioso es que, aunque el 92% de desarrolladores de Go dicen estar satisfechos con sus posibilidades, echan en falta que haya bibliotecas críticas como sí tiene Python, características del lenguaje o mayor infraestructura. Estas son las principales barreras usando Go.
Destaca que esta última encuesta realizada ha registrado la mayor participación en su historia con cerca de 12.000 personas. Hay que recordar que el último macroestudio de Hired concluyó que los ingenieros especializados en Go recibieron casi el doble de entrevistas de trabajo que la media de programadores.
Go es un lenguaje de Google. No es nuevo, va camino de los 15 años, pero muchas empresas gigantes lo han adoptado en los últimos años como Uber, Twitch y Slack.
Alternativas a Go de preferencia
Otro dato muy interesante es que, cuando el lenguaje Go no se muestra como suficiente para hacer un proyecto, el sustituto al que más recurren los expertos en programación es Rust, en uno de cada 4 casos. Python sería otra alternativa práctica, seguido de Java, como puedes ver en el siguiente gráfico.
Rust y Go tienen conjuntos de características complementarias, por lo que Rust puede ser una buena opción para cuando Go no satisface las necesidades de programación para un proyecto. Si el experto se decanta por Python (que ha ganado mucha popularidad) es por sus bibliotecas y el apoyo de la infraestructura existente (y afirman que el gran ecosistema de paquetes de Python puede dificultar el cambio a Go). Y si prefieren Java para solucionar proyecto que Go no puede, es por sus características.
En cuanto a detalles sobre qué características o bibliotecas echaban en falta los encuestados, encontramos que "los genéricos son la característica crítica que falta con más frecuencia". Pero hay que recordar la introducción de los genéricos en Go 1.18 (llegó en marzo de este año y que ha sido, según muchos expertos, el mayor lanzamiento de Go en su historia por los cambios introducidos) que podría dar solución a este problema. La siguiente característica que más se echa en falta tiene que ver con el 'type system' de Go que también podría encontrar solución en la introducción de genéricos, de acuerdo con los portavoces de esta comunidad.
Un lenguaje pensado para la nube
Los responsables de Go se comprometen a recopilar más información sobre los contextos de las necesidades que destaca la comunidad de desarrolladores y "puede que en el futuro exploremos diferentes formas de satisfacerlas, como por ejemplo mediante herramientas, bibliotecas o cambios en el 'type system'".
Otro dato interesante es que Go se diseñó pensando en la computación distribuida moderna, y su objetivo es seguir siendo fuertes para los desarrolladores a la hora de crear servicios en la nube con Go. La proporción de encuestados que despliegan programas Go en los tres mayores proveedores de cloud del mundo: Amazon Web Services, Google Cloud Platform y Microsoft Azure.
Aprendiendo lenguajes por cuenta propia
Alrededor de la mitad de los encuestados aprendieron un nuevo lenguaje en el trabajo, pero casi la misma cantidad (45%) aprende fuera de la escuela o el trabajo. La mayor parte de los encuestados (90%) afirma haber aprendido solo. Esta información de la encuesta de Go va acorde a las tendencias del sector. Hay que recordar un estudio publicado hace unas semanas que afirmaba que menos de la mitad de los programadores tienen títulos universitarios. Cada vez más desarrolladores aprenden por su cuenta
De los que dijeron que aprendieron en el trabajo, donde puede haber oportunidades de aprendizaje en conjunto, el 84% optó por aprender solo y no en grupo.
Imagen de portada | Vía Coursera
Ver 1 comentarios