- TLDR: al final fue por trabajo
- Durante 3 años tuve experiencia con distintos tipos de trabajo en Rust, como código asíncrono/multihilo, FFI (usando Bindgen), programación de kernel (sin
std), entre otros
- Pero ahora me cambié para trabajar como desarrollador de C++ en lugar de Rust
- Rust ofrece mejores herramientas que C++ (Cargo) y un mejor ecosistema de librerías (Crates.io), elimina complejidades como la POO, el manejo de excepciones y la gestión de memoria, y entrena a los desarrolladores para programar de la "forma correcta"
- Pero Rust es como la relación entre Betamax y VHS, o Mastodon y Twitter: técnicamente es superior, pero le falta adopción masiva
- Los lenguajes de programación son una tecnología de comunicación para transmitir ideas entre desarrolladores, y la tasa de adopción es un factor clave para el éxito
- Otros lenguajes también están mejorando lo suficiente
- Go: tiene una curva de aprendizaje más baja que Rust, compila más rápido y ofrece ciclos de iteración veloces
- C++: está mejorando sus herramientas de seguridad y de linting para hacerle frente a Rust
- JavaScript, WASM: sus mejoras de velocidad compensan las ventajas de Rust
- Conseguir trabajo con Rust tiene dificultades reales
- La mayoría de las vacantes de Rust priorizan habilidades especializadas (blockchain, finanzas, machine learning/análisis de datos, protocolos de red poco comunes, ciberseguridad, etc.), y Rust se considera una habilidad adicional
- Saber bien Rust por sí solo no basta para que te contraten; el conocimiento de un dominio específico se valora más
- Este subreddit también es parte del problema
- En comparación con comunidades de otros lenguajes (Golang, C++, etc.), hay poca discusión sobre trabajos relacionados con Rust
- Parece como si "la primera regla de las publicaciones de Rust Jobs fuera no hablar de Rust Jobs", y ese aislamiento limita la influencia del lenguaje
- También vale la pena mencionar la falta de apoyo empresarial
- La mayoría de los lenguajes exitosos del pasado recibieron apoyo de grandes empresas
- Ej.: IBM (Fortran), AT&T (C), Microsoft (C#), Google (Python), Apple (Swift)
- Rust carece de un patrocinador claro de gran empresa o de alguien que impulse con fuerza su adopción entre clientes
- Rust podría estar encaminándose a seguir los pasos de tecnologías innovadoras pero fallidas a nivel masivo, como Lisp y Smalltalk
13 comentarios
Cada tanto vuelve a salir la idea de que C++ será reemplazado, pero cada vez pasa lo mismo desde hace años..
"Rust es innovador, como Lisp y Smalltalk, pero podría seguir el mismo camino de tecnologías que fracasaron en popularidad"
La última oración es difícil de aceptar. Ya se usa mucho en la industria.
Dicen que con Rust incluso se puede obtener energía infinita.
https://www.reddit.com/r/ProgrammerHumor/comments/1h3v3uz/freeenergy/
¿Acaso creen que los usuarios de Rust son tontos? (sobresalto)
Cuando Java apareció por primera vez, todos tenían grandes expectativas, pero pasó mucho tiempo antes de que se usara en muchos lugares.
Creo que la propia industria de C++ es conservadora. Supongo que poco a poco se irán pasando a Rust.
Para que Rust tenga éxito, alguien en Silicon Valley tendría que fundar una startup usando Rust, pegarla en grande y luego contratar desarrolladores de Rust...
Es parecido a que, si no sabes cierto lenguaje aquí, no puedes conseguir trabajo.
Creo que hay bastante mito alrededor de los textos sobre VHS y Beta.
La gente suele tomar el fracaso de una tecnología minoritaria simplemente como un fracaso de marketing, y a veces afirma que la tecnología minoritaria era superior. Pasó lo mismo cuando el Betamax de Sony perdió frente al VHS de JVC. La gente dice que el Betamax superior fue el que perdió.
Pero hay algo que la gente no sabe.
VHS era la única tecnología que podía cubrir 2 horas. Betamax tenía una capacidad insuficiente para manejar contenido clave como las películas. El video de 2 horas se soportó en Beta 2, pero no saben que eso sacrificó la calidad de imagen, que era su ventaja.
VHS tenía un mecanismo mecánico superior y podía rebobinar mucho más rápido. Con Betamax era difícil rebobinar o adelantar para ver algo.
Mientras que VHS se veía bien en PAL, Betamax estaba orientado solo a NTSC y en PAL era terrible. Esa fue una razón por la que a Betamax le resultó difícil triunfar en Europa.
Incluso objetivamente, creo que VHS era una solución mucho más equilibrada.
Del mismo modo, creo que Windows NT era una tecnología mucho más equilibrada en comparación con el Mac OS clásico. Apple también se tardó 6 años más que Microsoft en presentar un sistema operativo con apropiación preventiva.
Estoy de acuerdo. +1
Gracias por compartir buena información. Es la primera vez que me entero de que era difícil rebobinar en Betamax.
Comentarios en Hacker News
Rust es técnicamente superior a C++, pero la adopción y la popularización importan
Al buscar empleos de C++ en el Reino Unido, se habla de interés por Rust, pero en la práctica hay pocas oportunidades de usarlo
No hace falta abandonar C++ para usar Rust
El gusto por Rust puede empezar en proyectos de hobby
A algunas personas les gusta C y están abiertas a aprender lenguajes nuevos
Elegir un lenguaje es una decisión de diseño
C y C++ son lenguajes de una época específica
Hay gente a la que le gusta usar C++
La comparación Betamax vs. VHS y X vs. Mastodon es interesante
Me rendí hace unas horas.
Intenté hacer firmware para Raspberry Pico en Rust.
De plano no pude encontrar ayuda útil para resolver problemas. 😤