this post was submitted on 26 Jan 2024
87 points (92.2% liked)

Programming

21357 readers
380 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
 

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
[–] berryjam@lemmy.world 2 points 1 year ago (1 children)
load more comments (1 replies)
[–] 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.

[–] Andy@programming.dev 2 points 1 year ago (9 children)

Factor!

It's incredible and elegant and defies some common categorization.

I've put some of my favorite resources in the sidebar of https://programming.dev/c/concatenative and I'm happy to walk through any particular challenges/examples -- I've done about the first week of Advent of Code with it this year, and the most recent handful of Perl Weekly Challenges, and some basic Euler problems.

load more comments (9 replies)
[–] DirigibleProtein@aussie.zone 2 points 1 year ago

Ada and COBOL are still where the big money is, and still will be for years to come.

[–] AlmightySnoo@lemmy.world 1 points 1 year ago* (last edited 1 year 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.

[–] rikudou@lemmings.world 1 points 1 year ago* (last edited 1 year ago) (1 children)
  • modern PHP (version 8.x with some modern framework like Symfony)
  • Typescript
  • C#
  • C++ (this one's always fun, I recommend the Qt framework since you have a Java background - it would be easier than raw C++)
[–] xmunk@sh.itjust.works 1 points 1 year ago* (last edited 1 year ago)

Qt is an amazingly good C++ framework that encourages a much safer approach to using the language that emphasizes const refs over pointer insanity.

Also, the library function are quite powerful.

load more comments
view more: ‹ prev next ›