this post was submitted on 26 Jan 2024
90 points (92.5% liked)

Programming

17313 readers
400 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 [email protected]



founded 2 years ago
MODERATORS
90
submitted 10 months ago* (last edited 10 months ago) by pathief to c/[email protected]
 

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

you are viewing a single comment's thread
view the rest of the comments
[–] [email protected] 21 points 10 months ago* (last edited 10 months ago) (1 children)

I can recommend Rust - I'm training a few people on it.

And a pure functional programming language like Haskell or Scheme, if you don't know what functional programming is, or are not comfortable with it. Functional programming needs a different mental approach to traditional (imperative) programming paradigm. Some of the more modern languages like Rust, JS and Python incorporate a lot of functional programming constructs. So it makes sense to learn them.

And a lisp - Common Lisp's popularity is a public secret. Scheme is also fine. This family is homoiconic (program and data are treated more less the same). The syntax is actually very close to its AST. This gives Lisp unparalleled metaprogramming capabilities - mostly through macros. Macros in traditional languages are nowhere near Lisp Macros.

If it interests you, study a stack based language like Forth or Factor. Though they feel very different from Lisps, they have similar underlying properties. And you get more or less the same advantages.

[–] [email protected] 6 points 10 months ago (1 children)

+1 for Rust, the learning curve can be pretty daunting, but once you're over the hump you'll never want to go back

[–] [email protected] 2 points 10 months ago (1 children)

Agree. The official book is a really good start though, and available for free. https://doc.rust-lang.org/stable/book/

[–] pathief 1 points 10 months ago* (last edited 10 months ago) (1 children)

I actually ordered the paperback version of the book. I hope it's not too outdated compared to the online version, I just enjoy reading in actual paper :P

[–] [email protected] 2 points 10 months ago (1 children)

The second edition was published last Feb (2023) I believe. I read it on my Kindle, having "flicked through" the online version about 6 months prior, and yeah having it page by page with bookmarks etc was almost as good as paper, but far superior to the web version and I was able to read it cover to cover and gain a lot from it. I immediately then read about 4 other books on Rust! Can recommend "Rust Atomics & Locks" by Mara Bos, and "Rust for Rustaceans" by Jon Gjengset for the next level up.

[–] pathief 1 points 10 months ago

Yeah, I did indeed buy the second edition! Thanks for the suggestions! Cheers.