I’ve been working with a Javascript (+ TypeScript) + Java + SQL stack for the last 10 years.

For 2024 I’d like to learn a new programming language, just for fun. I don’t have any particular goals in mind, I just want to learn something new. If I can use it later professionally that’d be cool, but if not that’s okay too.

Requirements:

  • Runs on linux
  • Not interested in languages created by Google or Apple
  • No “joke languages”, please

Thank you very much!

EDIT: I ended up ordering the paperback version of the Rust book. Maybe one day I’ll contribute to the Lemmy code base or something :P Thank you all for the replies!!!

  • Litanys@lem.cochrun.xyz
    link
    fedilink
    English
    arrow-up
    0
    ·
    10 months ago

    Id suggest rust, gets you a step closer to the hardware and a bit of a different paradigm than Java while still feeling high level.

    • pathief@lemmy.worldOP
      link
      fedilink
      arrow-up
      0
      ·
      10 months ago

      Rust is definitely something I’ve been keeping an eye on. The syntax looks a bit scary, to be honest, but looks very versatile.

      • Fal@yiffit.net
        link
        fedilink
        English
        arrow-up
        0
        arrow-down
        1
        ·
        10 months ago

        Definitely rust, and definitely use rustrover from jetbrains for an IDE. It’s amazing

  • Bezier@suppo.fi
    link
    fedilink
    arrow-up
    0
    ·
    10 months ago

    As the other person said, Python. Or if you want something lower level, how about Rust?

  • BiggestBulb@kbin.run
    link
    fedilink
    arrow-up
    0
    ·
    10 months ago

    I see you mentioned JS, but not TS. If you haven’t tried TypeScript, you 100% should! It helps a lot at scale.

    Also, I really do recommend Rust. It’s pretty awesome having the errors actually make sense, and it’s not as complicated as the hype makes it out to be (until you get into async rust lol).

    As others have mentioned, C# is also awesome.

    • pathief@lemmy.worldOP
      link
      fedilink
      arrow-up
      0
      ·
      10 months ago

      We do use TS as well, yes!

      Rust is definitely a language I’m considering. Syntax looks a bit scary, though!

      • Fal@yiffit.net
        link
        fedilink
        English
        arrow-up
        0
        arrow-down
        1
        ·
        10 months ago

        Rust syntax is totally fine really. It often feels like writing python

      • xmunk@sh.itjust.works
        link
        fedilink
        arrow-up
        0
        ·
        10 months ago

        I know it’s fashionable to shit on PHP but it’s significantly better than it once was… it’s honestly like a cleaner python that lets you use brackets.

    • xia@lemmy.sdf.org
      link
      fedilink
      English
      arrow-up
      0
      arrow-down
      1
      ·
      10 months ago

      IMO Zig obsoletes C in the way that go and rust tried to do. Personally, I would advise anyone to not learn C; or even start a new project in C, for that matter.

  • AlmightySnoo 🐢🇮🇱🇺🇦@lemmy.world
    link
    fedilink
    arrow-up
    0
    arrow-down
    1
    ·
    edit-2
    10 months ago

    Since you already know Java, you could jump straight to C++ with Bjarne’s book “Programming - Principles and Practice Using C++”: https://www.stroustrup.com/programming.html

    You can then move to more modern C++ with his other book “A Tour of C++”: https://www.stroustrup.com/tour3.html

    And then if you’re curious to know how software design is done in modern C++, even if you already know classical design patterns from your Java experience, you should get Klaus Iglberger’s book: https://www.oreilly.com/library/view/c-software-design/9781098113155/

    In parallel also watch the “Back to Basics” video series by CppCon (see their YouTube channel: https://www.youtube.com/@CppCon , just type “back to basics” in that channel’s search bar).

    Learning proper C++ should give you a much better understanding of the hardware while the syntax still remains elegant, and you get to add a new skill that’s in very high demand.