• Nate Cox@programming.dev
    link
    fedilink
    English
    arrow-up
    4
    ·
    12 hours ago

    You’re right that the first steps with Rust can be trying, but I do think it gets overinflated.

    Of all the languages I have both learned to use and deployed something useful to production in, Rust is somewhere in the middle of the “initial difficulty” curve. Harder than Ruby, Python, Perl, C, etc… easier than Erlang, Elixir, Clojure, Haskell, etc.

    Rust’s borrow checker is both its best and worst feature; virtually every complaint I have heard about how hard Rust is was about fighting the borrow checker, but the borrow checker has also saved me from some really stupid mistakes and all of the time involved in finding and fixing them. The juice is totally worth the squeeze.

    Now if you really hate yourself spend some time learning Prolog. I promise you that Rust will seem a lot more dev friendly afterwards.

    • TheTechnician27@lemmy.world
      link
      fedilink
      English
      arrow-up
      6
      ·
      edit-2
      11 hours ago

      I’m surprised you put C in there. Its limited vocabulary does mean you don’t have to deal with e.g. C++'s 50 million ways to do something, but this combined with a lack of guardrails makes it agonizingly difficult to do a lot of basic things – most notoriously dealing with strings.

      I actually consider C a good beginner language, but only in the sense that 1) it does have that simple toolkit, 2) it and its descendants are widely used, and most importantly 3) the bullshit C makes you deal with gives you a better understanding of what higher-level languages do for you automatically and why. To me, it’s probably the hardest mainstream language to learn after maybe something like x86 or ARM assembly (which, for better or worse, hit points 1 and 3 even harder than C).

      I generally agree though that Rust has always been somewhere in the middle for me.