by simplecto on 11/7/24, 4:53 PM with 63 comments
And in the time you see some skills develop while others atrophy. And some new skills appear on the market that I'm shallow in.
In this case that could be Golang and Rust. (Lets not talk about how I feel about the Javascript ecosystem)
But, man, it is hard to let go of the cozy warm and lazy blanket Django and the python ecosystem gives us, isn't it?
The irony here is that I'm incredibly productive in the Django stack, but relative to the many jobs out there -- it seems many Rust and Golang positions go unfilled.
So, what is a guy to do? Daddy has to eat, and I am mercenary at heart.
So here we are -- back on the learning curve and ramping up on Golang and Rust.
by otikik on 11/7/24, 5:07 PM
by tail_exchange on 11/7/24, 5:08 PM
Rust is a beast though, I tried picking it up several times, but lose interest quickly. The language is interesting, but the learning curve is a problem.
by bryanlarsen on 11/7/24, 5:15 PM
by bbor on 11/7/24, 5:22 PM
IEEE puts out an incredible report on this stuff every year: https://spectrum.ieee.org/top-programming-languages-2024
The boring answer based on current demand is that the old languages are still dominant. Of the new languages Rust and Go are indeed at the top, but they’re still ~below C++/C, Java, and C#. OTOH, they are definitely near the top of growing languages, which is probably where your sense of them being “chosen” comes from; if you’re cynically trying to maximize long term career earnings, IMO either would be worth some investment.
The elephant in the room is, as you briefly mentioned, Python and its relation to the AI boom. There’s lots of fantastic shovels being made in other languages (eg llama-cpp), but the huge majority of new libraries are written with python APIs in mind (eg VLLM, Langchain, BentoML, and ofc the classics like PyTorch/Keras, SciKit, and numpy/pandas). Again, speaking cynically, I think there’s a lot of money flying around the python space right now.
Finally, I think it’s worth mentioning my take on the old refrain: languages aren’t really that different so don’t stress about it, but it can be worth it to invest in new paradigms/spaces/application types. It sounds like you’re not a fan of webdev, but instead of hyper focusing on picking a language, maybe consider picking new spaces to explore! I mentioned LLM shovels (aka quantizers, inference platforms) above, but there’s also some other booming spaces such as CRDTs/LocalFirst and spatial computing, to name my two faves.
Best of luck! Exciting time to be a member of the puzzle-solving class :)
by runjake on 11/7/24, 5:19 PM
That kinda sold me on Go.
by OptionOfT on 11/7/24, 5:46 PM
So that means it's very hard to introduce in a company where the focus is on getting code out there as cheap as possible. Especially when the majority of work is done by contractors which in general aren't hired to learn new stuff, but more to execute work with existing skills.
Personally, once I became proficient enough in Rust my way of programming changed, and this actually became an issue when having to write other languages. Learning to write Rust actually increased my cognitive load when writing other languages, as I am constantly worried about not having my safety net.
by ebiester on 11/7/24, 5:22 PM
by Eumenes on 11/7/24, 5:23 PM
by nelup20 on 11/7/24, 5:26 PM
For jobs, ecosystem and general productivity my go-to is always Java/C#/Go, if you learn one of those I think you'll be set, so Go in your case. The learning curve for Rust is similar to C++, much steeper.
by brodouevencode on 11/7/24, 4:55 PM
by recoup4307 on 11/7/24, 5:21 PM
Even though I’m already very productive in Rust for typical microservice backend scenarios, none of those jobs are close to my areas of expertise.
So I wonder if Rust jobs go unfulfilled not because of lack of rust developers but because the job market doesn’t match the reasons why some developers learn Rust in the first instance.
by ActorNightly on 11/7/24, 7:05 PM
by devjab on 11/9/24, 1:15 PM
That being said, it’s very easy to get into Go if you know Python. Especially coming from an opinionated framework like Django. In my experience the people who have the hardest time getting into go are Java/C# developers who don’t appreciate the core Go focus on simplicity and having absolutely no “magic”. Which is understandable. Getting into Go from Python is different because Python is terrible, so a lot of the opinionated simplicity will most likely make you wish Python had parts of it.
We did some PoCs with Rust to see if it was worth adopting instead of C. We found it wasn’t for us. I mentioned Zig, that is because of the interoperability with C, it’s not something we plan on fully adopting any time soon.
As far as “future proofing” goes, does it really matter? If you’ve been a developer for years you’ll easily be capable of picking up Go and Rust. Of the two I personally found Go a little more challenging to be effective with. It’s easier to get into, but getting concurrency right (not being a memory hog) wasn’t trivial for us in the beginning. You should also look at your local job market. I think PHP would be the best fit for a “mercenary” in my city. By comparison I don’t think there has been a single Rust job posting for a couple of years.
by jondwillis on 11/11/24, 7:24 PM
by anonzzzies on 11/7/24, 5:28 PM
by tmpz22 on 11/7/24, 5:21 PM
Are you looking for the programming language with the greatest number of available jobs?
Are you looking for employment at a language-fluent organization like FANNG?
Are you trying to prematurely optimize for future relevance?
Are you looking for the highest paid programming roles with niche specialization in a specific language?
Are you trying to develop for a particular platform (iOS/Desktop/Browser/Server)?
by cschep on 11/7/24, 5:14 PM
I was under the impression that everyone wanted a job writing Rust, but had to settle for making React components. Point me to these unfulfilled Go jobs please. :)
by rob on 11/7/24, 5:21 PM
by dangoodmanUT on 11/7/24, 5:27 PM
by sandreas on 11/7/24, 5:53 PM
I'd recommend to maybe start with something fun, like doing some game development maybe with wasm...
by vivzkestrel on 11/7/24, 5:57 PM
by fnord77 on 11/8/24, 2:17 AM
Still demand.
by krapp on 11/7/24, 7:04 PM
by konschubert on 11/7/24, 5:23 PM
by bedobi on 11/7/24, 5:22 PM
by Saphyel on 11/7/24, 5:21 PM
From Go I only saw a promotion in Google ? now is finally abandoned?