Learning new programming languages with limited time: Rust, golang, or otherwise?

TheFireTheft
2024-03-06T16:20:35Z

I want to learn a new language that I can use for personal projects. But I want to pick the right one for me, given the fact that learning it will be a time investment and I don't have a ton of time for "fun" stuff these days.

I've spent a decent amount of time tinkering around with Rust and my experience has been decent so far, if I'm trying to filter it through the lens of the current Rust craze. It just seems that the code has a somewhat... ugly(?)... aesthetic to it? I'm not willing to cast it aside yet and I think the "ugliness" just comes from me not really recognizing the syntax very well.

I started looking at golang and was immediately interested in the marketing message of it being "a better C". Aside from Hello World, I haven't done anything else with it.

Some random notes/points about my experience and what I'm looking for:

I am very accomplished with PHP, quite accomplished with C, somewhat accomplished with C++ and Python. Of those, I find Python to be too "free and easy", PHP (Symfony specifically) and C++ to be so OOP-oriented that I just end up writing a bunch of boilerplate, and C is just... C (I'd rather pull out a tooth than have to work with C strings).

Aside from the obvious pains of C, I think it's the most fun of the bunch. I don't know why I think this, because again, I absolutely hate C strings.

I appreciate the package management and ecosystem of Rust, from what I've seen. C-with-Cargo would be awesome.

The older I get, the more I appreciate strong typing.

I like a language that allows me to systematically and logically organize my code into various modules, directories, etc. This is where PHP/Symfony shines in that there's a place for everything, as opposed to a bunch of .c and .h files all dumped into a folder.

Ideally, I'd like something that can compile into a binary that doesn't require JVM, etc.

I'm open to suggestions outside of Rust and Go... those are just the ones I've been seeing mentioned the most over the past decade.

Comments URL: https://tildes.net/~comp/1eqa/learning_new_programming_languages_with_limited_time_rust_golang_or_otherwise

Votes: 26

Comments: 24