91
submitted 1 year ago* (last edited 1 year ago) by pathief@lemmy.world to c/programming@programming.dev

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

(page 3) 50 comments
sorted by: hot top controversial new old
[-] rekabis@lemmy.ca 3 points 1 year ago* (last edited 1 year ago)

DotNet is closest to Java, but hang on to your hat: the state of C# is at least half a decade ahead of Java, if not a full decade. It’s sophistication will make Java use feel like banging rocks together. DotNet Core can now run on all three primary platforms, and with some careful work, you can write a single program that can compile down to each platform and carry along its own required binaries, no pre-install of any framework needed.

My second recommendation would be Rust. Stupidly steep learning curve, but an absolutely game-changing one where safety and security is concerned. It’s my next objective, personally speaking.

Any other language I could recommend starts getting into speciality purposes, which makes general use more difficult or even wholly inappropriate.

For example, if you are dropping into DotNet for business applications, I would also recommend diving into F# for that functional goodness for building complex business rules and data handling. But building an entire app in F# can be jamming a round peg into a square hole under many circumstances, it’s appropriateness envelope does not cover as many cases as C# does. You want to use C# for boilerplate/frameworks, F# for the core bits where it is going to shine.

[-] wagesj45@kbin.social 2 points 1 year ago

C# is good. I use Visual Studio on Windows, so I'm not familiar with the tooling in VS Code in Linux, but I've heard good things. .NET is a nice environment to work in, the runtime works on all the OSs, and you can even package it into a self-contained binary with a little finagling.

[-] jasory@programming.dev 2 points 1 year ago

Ada particularly the SPARK subset. It's approach is quite different than most languages, focusing on minimising errors and correctness. It's fairly difficult but I like to use it to teach people to actually understand the problem and how to solve it before they ever write the code.

[-] Specal@lemmy.world 2 points 1 year ago
load more comments (2 replies)
[-] benjhm@sopuli.xyz 2 points 1 year ago* (last edited 1 year ago)

I like Scala:

  • multi-paradigm, you can explore many ways of doing something, within one codebase - arguably the most complex language, if you want, but doesn't have to be: start simply, later scales robustly
  • compiles and interoperates with JS, JVM, native
  • Scala3 dropped brackets - easily readable like python
  • great tooling (recently) - compiler infers so much -> less puzzles / testing
  • developed mainly in europe, not controlled by big-tech

Fwiw, here's my interactive climate system model running in pure scala.

[-] synae@lemmy.sdf.org 1 points 1 year ago

The languages I've been meaning to learn, and do something "meaningful" in, are:

  • nim
  • erlang (or whatever is the most sensible modern variant)
  • lisp (ditto)
load more comments
view more: ‹ prev next ›
this post was submitted on 26 Jan 2024
91 points (100.0% liked)

Programming

21571 readers
164 users here now

Welcome to the main community in programming.dev! Feel free to post anything relating to programming here!

Cross posting is strongly encouraged in the instance. If you feel your post or another person's post makes sense in another community cross post into it.

Hope you enjoy the instance!

Rules

Rules

  • Follow the programming.dev instance rules
  • Keep content related to programming in some way
  • If you're posting long videos try to add in some form of tldr for those who don't want to watch videos

Wormhole

Follow the wormhole through a path of communities !webdev@programming.dev



founded 2 years ago
MODERATORS