I love shitting on Python, but I feel like all those problems are present in libraries for other languages as well. There’s a tonne of that crap for JS/TS.
Similarly, I find a fair number of Rust crates (that I want to use) have virtually no doc or inline examples, and use weird metaprogramming that I can’t wrap my head around.
I mean, if we’re talking about all those problems, the no-type-annotations issue is rather specific for Python, JS/TS and Ruby.
But in general, I feel like there’s somewhat of an old world vs. new world divide, which happened when package registries started accepting libraries from everyone and their cat.
In C, for example, most libraries you’ll use will be quite well-documented, but you’ll also never hear of the library that Greg’s cat started writing for the niche thing that you’re trying to do.
Unfortunately, Greg’s cat got distracted by a ball of yarn rolling by and then that was more fun than writing documentation.
That’s the tradeoff, you get access to more libraries, but you just can’t expect all of them to be extremely high-quality…Are we living in a world in which the JS/TS ecosystem is the yardstick by which we measure well written code? I mean… Wait a minute! I figured it out! This is the Bad Place!
What took you so long?
Every time I have a problem, I throw a regex on it, and BOOOOM, right away I have a different problem
You should look at some old Perl or C code. I have even seen some shell code that makes me want to bash my head in till death with an IBM Model M Keyboard
That’s why they named the shell like that
It’s still crazy to me that Django doesn’t have type hints.
They’ve explained why
Will you share the source?
Hi, i believe this is where https://groups.google.com/g/django-developers/c/C_Phs05kL1Q
I disagree with them, but I’m also not the one that would be spending days adding support, so fair enough.
That thread is from like 4 years ago, types in Python have come a long way since then. Maybe they’d reconsider if the community brought it back up
Kubernetes as well…
I hate kubernetes so much
One more reason to add to my hate list for kubernetes
Rust crates have the second and third problems.
Rust at least has type annotation.
The type has private fields. There’s no constructor. There’s no implementation of the From trait except on itself. You can’t find a function anywhere that returns the type.
This is probably my biggest complaint about trying to learn Python past the beginner level and into intermediate and beyond. This is also one of my strongest arguments in favor of static type systems over dynamic ones.