this post was submitted on 24 Feb 2025
384 points (99.5% liked)

Programmer Humor

20885 readers
1623 users here now

Welcome to Programmer Humor!

This is a place where you can post jokes, memes, humor, etc. related to programming!

For sharing awful code theres also Programming Horror.

Rules

founded 2 years ago
MODERATORS
 

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.

you are viewing a single comment's thread
view the rest of the comments
[–] [email protected] 16 points 1 week ago (1 children)

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

[–] [email protected] 24 points 1 week ago* (last edited 1 week ago) (2 children)

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".

[–] [email protected] 12 points 1 week ago* (last edited 6 days ago) (1 children)

Python 3.11 onwards can basically be a fully statically 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)

[–] [email protected] 14 points 1 week ago* (last edited 1 week ago) (2 children)

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).

[–] [email protected] 1 points 6 days ago

You got any code written for Python 3.8 that won't run in 3.13?

[–] [email protected] 1 points 1 week ago

CAN being the critical word here. If you use tools like pydantic, then yes, typing can be strictly enforced, or as most people use it, you can type only what you want to type.

[–] [email protected] 6 points 1 week ago (2 children)

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

[–] [email protected] 8 points 1 week ago

Well. 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.

[–] [email protected] 5 points 1 week ago (1 children)

I think each of 3.8 through 3.11 were substantial, just in different ways.

[–] [email protected] 2 points 1 week ago

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 language