this post was submitted on 02 Oct 2023
1751 points (98.0% liked)

Programmer Humor

32175 readers
1151 users here now

Post funny things about programming here! (Or just rant about your favourite programming language.)

Rules:

founded 5 years ago
MODERATORS
 
you are viewing a single comment's thread
view the rest of the comments
[–] herr@lemmy.world 8 points 1 year ago (1 children)
[–] Rooki@lemmy.world 6 points 1 year ago (2 children)

You forgot your indentation and a third party docs is outdated. Now try and debug it with this error message:

Not enough value to unpack (expected 2, got 1) (not any stack trace btw) documentation was terrible. :D

[–] herr@lemmy.world 7 points 1 year ago* (last edited 1 year ago) (1 children)

Huh? The Python Stacktrace is great. What kinda fucked up library were you using that it prints the error code instead of raising an exception?!

Also don't think outdated library docs are a fault of Python 😅 In much the opposite way, I've found Python's standard library to be really great, reducing the number of random third party libraries needed. (Looking at you, JavaScript)

[–] Rooki@lemmy.world -1 points 1 year ago (2 children)

Stack trace is terrible bad. Js for the win.

the default library is still terribly documented. OF COURSE everything is stated there but after reading the bible 3 times through you still didnt understand anything third or first party libraries!.

In python you need weirdly random packages that are inbuild but you still have to import them WHY THO???? ( looking at you typings )

The funniest thing is that python does not have a switch case where i heard it the first time, i laughed and didnt took him serious but then after looking into it, A BASIC SWITCH CASE does not exist in python. LMAO

[–] herr@lemmy.world 3 points 1 year ago* (last edited 1 year ago)

Imagine getting hung up on something as trivial as a switch statement. Which is more poignant, I ask you?

switch(var){
   case 1: 
      <code>;
      break;
   case 2: 
      <code>;
      break;
   case 3: 
      <code>;
      break;
   default:
      <code>
}

or

if var == 1:
   <code>
elif var == 2:
   <code>
elif var== 3:
   <code>
else:
    <code>

The performance difference is absolutely negligible, but now you've introduced a bunch of unnecessary indentation (for no benefit) that's gonna get hard to read should you even add a little bit of additional logic, and a footgun with all the break; s.

And then in JS the syntax for the case-blocks isn't even consistent with the rest of the language.

[–] malijaffri@feddit.ch 0 points 1 year ago* (last edited 1 year ago) (1 children)

I'm sorry, but when was the last time you actually used Python? Python has had a switch ... case ...-like structure called match ... case ... since v3.10:

https://www.geeksforgeeks.org/python-match-case-statement/

As for having to import standard libraries, why should every single function of every single built-in library be included in every single Python program, much less in compiled executables? At that point, it just bloats up your file sizes and RAM usage.

ETA: You are literally the only person in this whole thread that has such a huge problem with Python. What did it ever do to you?

[–] Rooki@lemmy.world 1 points 1 year ago

Because probably you all never coded something really with python.

[–] Mikurei@lemmy.ml 3 points 1 year ago* (last edited 1 year ago) (1 children)

You forgot your indentation

Sounds like a problem for someone who is writing the code on a toilet paper or whiteboard. Most people have some sort of hackable editor/IDE that handles the indentation and code blocks.

obfuscated error messages

Just don't use libraries which print or log exceptions without raising it :)

[–] Rooki@lemmy.world 0 points 1 year ago

AWS boto3, FastAPI and django. Good to know, that i shouldnt use them.