Good old Udemy Elixr/Pheonix courses being irrelevant within 6 months but still trying to con people by saying they’re updated to current year.
Good old Udemy Elixr/Pheonix courses being irrelevant within 6 months but still trying to con people by saying they’re updated to current year.
It’s even happened to me with python. I stepped away from programming for a while and now all the guides are about 3.8 while the version on trixie is 3.13
Has python changed that much for a new learner that a 3.8 tutorial is worthless in 3.13?
I don’t think so…there’s new features that wouldn’t be taught, but most everything from Hello World to decorators and lambdas were present in both.
Now, if you have a python 2 guide…yeah. That’s worthless. That shows its flaws during “Hello World”.
Well the last version I was actively using was 3.6 and the shiniest new feature I remember is switch cases from 3.7, so yes it has for me
I think each of 3.8 through 3.11 were substantial, just in different ways.
I believe it! One glimpse at the latest docs tells me that every major builtin library I knew is depreciated or gone. I’m not even sure if
secrets
is still the correct encryption library. Honestly I might have to start fresh with Python like it’s a new languageWell. Yeah, if you want to learn the shiniest new features, you’ll need the shiniest new references.
But for a new user, for whom Python is probably one of the first languages they learn, a 3.8 reference won’t give them much trouble for a while.
I say this as a novice Python user tho.
Python 3.11 onwards can basically be a fullystatically typed language, which is a pretty dramatic change in where you spend most of your time. Python 3.13 allows you to do multi threading as a compiler option, we might see native multi threading in 3.14 or 3.15 (or maybe that’s a 4.0-worthy feature honestly)
Python now has type hints, which are not the same as static typing. Those hints do not change program operation. See https://peps.python.org/pep-3107/
You can pass a string to a function parameter annotated as int and Python will happily accept it (assuming the function does not attempt to call a method that a string doesn’t have).