13 puntos por GN⁺ 2024-11-30 | 13 comentarios | Compartir por WhatsApp
  • 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

 
reagea0 2024-12-03

Cada tanto vuelve a salir la idea de que C++ será reemplazado, pero cada vez pasa lo mismo desde hace años..

 
joone 2024-12-03

"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.

 
ahwjdekf 2024-12-02

Dicen que con Rust incluso se puede obtener energía infinita.
https://www.reddit.com/r/ProgrammerHumor/comments/1h3v3uz/freeenergy/

 
bus710 2024-12-03

¿Acaso creen que los usuarios de Rust son tontos? (sobresalto)

 
cosine20 2024-12-02

Cuando Java apareció por primera vez, todos tenían grandes expectativas, pero pasó mucho tiempo antes de que se usara en muchos lugares.

 
kandk 2024-12-02

Creo que la propia industria de C++ es conservadora. Supongo que poco a poco se irán pasando a Rust.

 
dh0rwwit 2024-12-01

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...

 
clastneo 2024-12-01

Es parecido a que, si no sabes cierto lenguaje aquí, no puedes conseguir trabajo.

 
dalinaum 2024-12-01

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.

 
woonki 2024-12-02

Estoy de acuerdo. +1

 
ndrgrd 2024-12-01

Gracias por compartir buena información. Es la primera vez que me entero de que era difícil rebobinar en Betamax.

 
GN⁺ 2024-11-30
Comentarios en Hacker News
  • Rust es técnicamente superior a C++, pero la adopción y la popularización importan

    • Rust es mejor de una forma parecida a como Betamax era mejor que VHS, Mastodon que Twitter, el teclado Dvorak que QWERTY, Esperanto que el inglés, y Lua que Javascript
    • Las ideas de Rust también se están usando en otros lenguajes como Swift
  • 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

    • Los trabajos con Rust están relacionados sobre todo con fintech de criptomonedas y la industria de defensa
    • Es una pena que Rust se use solo como alternativa a Ada
  • No hace falta abandonar C++ para usar Rust

    • Hay que buscar oportunidades para adoptar Rust en proyectos nuevos
  • El gusto por Rust puede empezar en proyectos de hobby

    • En el trabajo es difícil hacer actualizaciones grandes a Rust
    • Primero habría que considerar otros lenguajes con seguridad de memoria
  • A algunas personas les gusta C y están abiertas a aprender lenguajes nuevos

    • Aprender de gente que critica C no genera confianza
    • Para promover Rust, quienes recomienden Rust deberían ser personas a las que les gusta C
  • Elegir un lenguaje es una decisión de diseño

    • Es poco razonable evaluar pros y contras de un lenguaje sin especificar el caso de uso y los requisitos del proyecto
  • C y C++ son lenguajes de una época específica

    • C++ eventualmente será reemplazado, pero tomará tiempo hasta que aparezca una nueva generación de programadores
  • Hay gente a la que le gusta usar C++

    • Los lenguajes nuevos como Kotlin también son buenos, pero igual terminan volviendo a C++
  • La comparación Betamax vs. VHS y X vs. Mastodon es interesante

    • Si quisiera un lenguaje de programación seguro y de alta integridad, elegiría SPARK2014
    • Rust ganó popularidad entre la multitud tecnológica, pero SPARK se usa en sectores como el aeroespacial
    • La adopción de lenguajes de programación está relacionada tanto con la moda como con las ventajas y desventajas técnicas
 
chureee 2024-12-02

Me rendí hace unas horas.
Intenté hacer firmware para Raspberry Pico en Rust.
De plano no pude encontrar ayuda útil para resolver problemas. 😤