Learning languages in 2025
Despite being the proud owner of an A* in GCSE French, je parle pas un mot. Since I have joined a predominately French company I’ve decided to try learning it again, even if I just to understand the back of a wine bottle.
This aim has coincided with a requirement at work to 10x the speed of our Python API, which will probably require rewriting parts in another programming language.
Given its been >10 years since I attempted to learn any language, programming or natural, are there better ways to teach myself in 2025?
French
Duolingo
Duolingo isn’t the greatest app in the world, but my god is it good at peer pressure. Having to do at least some French every day is a good way to keep up my motivation and build vocabulary.
Luckily for me, 30% of English vocabulary is based on French so I can bluff my way past the easy levels. However, this app isn’t very helpful for learning about grammar rules or how French people actually speak.
Youtube
For that, Youtube is an absolute gold mine. I can watch:
Youtube’s auto-translation is so good that it opens up the chance to watch unbelievably French videos like:
- A man in a beret who kills his rooster to make coq au vin
- A different man in a beret showing me how Mont D’or is made
- a dude wearing a questionable number of knives
Rust
I’ve been using Python for 10+ years and have learnt a lot of general programming concepts through it, e.g. Object oriented, iterators, threading. However, I think I need to learn a low-level language that I can turn to when I need performance.
For example, I was working on some code that merged two dataframes and then exploded the columns to something like 5 millions rows. When written in pure Python it would take 4.4 seconds compared to a ridiculous 0.15s in Rust. It has become a bit of a meme to “re-write this in Rust”, so it was definitely on my radar but I couldn’t tell why it was so different.
The Rust Book
The rust book is an incredible resource. Not only does it show you the syntax, but it has diagrams like this to explain concepts like ownership and borrowing
So, I’m not only learning about one new language but I’m being guided through concepts like heap and stack memory, pointers and everything else Python abstracts away.
I will probably still use Python for 90% of what I do, but its nice to be able to see how another language handles common pain points in Python like error messages and packaging.
Rustlings
Rustlings is the perfect partner to the Rust book, as it gives you 94 example scripts with compiler errors that you need to fix. This also demonstrates just how incredible the compiler is at helping you fix mistakes.
Youtube
There is a lot of nonsense about “which programming language is the best”, but I found this gem of a channel that explains why Rust is great