I didnt upvote the other python-beginer friendly meme cause it wasn't accurate. But this one is on point.
Programmer Humor
Post funny things about programming here! (Or just rant about your favourite programming language.)
Rules:
- Posts must be relevant to programming, programmers, or computer science.
- No NSFW content.
- Jokes must be in good taste. No hate speech, bigotry, etc.
Hey, no pointers!
I don't know who needs to hear this, but Python, like most languages, can be as complex as you make it.
Preach!
Some people in the comments didn't take it as tongue-in-cheek as I did. 😝
I thought this was really funny. That's a good collection of toe stubs.
There is a lot of stuff to learn to be good at python but I still love it.
Best scientific packages in the open source by far, a library for everything, everybody knows it. Works on all kinds of systems. Available by default in many OSs.
You might not like it, but you can't leave.
The summary that I liked from the last post was "python is the second best language for everything". There's always something specialized and better for every given job. But, if you want one tool that'll do a solid job everywhere, python is your go to.
I literally used to say this last decade, but as I grew experienced with more languages/paradigms/systems, it became 3rd best, then 4th, until I realized it actually not really great at anything other than there is an large ecosystem around it (wildly varying in quality). To some that might be enough, & going outside what you know isn’t typically the most wise thing to do, but it’s not particularly simple, or readble, or performance, or composable, or offering great patterns. Anything that used Python in Nixpkgs tend to be the most unreliable software for actually building & using.
😡
Can't speak for the science libraries as I've never used em, and I'll gladly just blindly accept that as truth, but for everything else it's always a pain in the ass. For being designed to "run on anything" it sure is funny that 90% of the time I download a python app it doesn't fucking work and requires me to look up and manually setup a specific environment for it. Doesn't help that the error messages are usually completely random and unrelated to this...
I always dread when some fucking madman makes the installer for their app in python, knowing it'll probably fail... God forbid it's a script that's supposed to modify something else. Always a good time for reflection upon the choices that led me to this point.
Even my old scripts I kept around for sentimental value. Half of those don't work either, and I can't be bothered to figure out what version I made em for.
I tried my best to scrub python from my pc out of principle, but as you say, it's soo common my distro uses it as a dependency, fucking bullshit!
Oh god, I feel this. Why can't there be a sane language‽
But the Lord came down to see the ~~city~~ OS and the ~~tower~~ app the people were building. The Lord said, “If as one people ~~speaking~~ programming the same language they have begun to do this, then nothing they plan to do will be impossible for them. Come, let us go down and confuse their language so they will not understand each other.”
So the Lord scattered them from there over all the earth, and they stopped building the ~~city~~ OS. That is why it was called Babel—because there the Lord confused the language of the whole world. From there the Lord scattered them over the face of the whole earth.
This message brought to you by TempleOS
Amen. Now, where’s that Wine?
There are 2 types of programming languages
- The type everyone keeps complaining about
- The type no one uses
It would have to be written by sane people.
Computer programming, regardless of language, is hard. The computer does exactly what you tell it to.
Because no one likes Java.
Hahahahahhahaha
While Java js definitely one of the best, it still has some quirks that you need to know about.
This is so true & unfortunately everyone keeps telling beginners to start at Python
oh my fuck. circular imports.
I set out to create a Discord Bot in Python, then gave up trying to use an easy "proper" server-side language and just did it in TypeScript
Very little of this is uniquely a problem in Python. It seems to me that your problem is with software development in general.
My problem is with semantic whitespace
No, the dependency management in Python is a nightmare. There's like a billion options for it.
I used to love it so much more...
come into the light, my child. become an electrical engineer.
The same meme with "wiring and lights" at the top. Then you descend to motors, transformers delta-y phases, RC and RL circuits, op amps, BJT circuits, reverse bias what?, differential equations, and eventually signals and systems.
Are any of those things that you actually deal with as a beginner, though? Sure, those add complexities, but by the time you start to get into them, you are probably no longer a beginner.
Of course... But the idea is that it is misleading... And there's more traps the beginners falls into. I have a feeling if beginners begin with C++, or other language that is strongly typed and requires memory management and then do some other language that is more abstract like python; they will become better programmers compared to them doing it in reverse.
Yeah but fuck all that python is good enough for most beginners. Variables, scope, loops, functions, operators... Once you get some of the principles down switching to C++ or similar isn't nearly as bad.
Being a person that tried to learn C/C# from scratch in my early days python was a good gateway language.
I don't know, man, far too many people seem to think that "easy to learn" means they'll know all they need to know in relatively short time.
Like, you talk to our data scientists and they'll tell you doing anything in Python, no problem. But you talk to our seasoned software engineers and you see the war flashbacks in their eyes, because it racks up in complexity so fucking quickly, it's insane.
While being controversial, rye is very good for small personal projects. It does pretty much everything from python version management to project scaffolding.
they are also working on a follow-up, uv. not really a fan of writing tooling in another language but it works really well.
For how popular of a language python is, at this point it's a bad sign to me that the language has default way to manage versions and create new projects. I get having options, but options are annoying to new folk.
Honestly also annoying as a not-so-new folk. I just thought about this yesterday, I reasonably expect to clone a random project from the internet written Java, Rust et al, and to be able to open it in my IDE and look at it.
Meanwhile, a Python project from two years ago that I helped to build, I do not expect to be able to reasonably view in an IDE at all. I remember, we gave up trying to fix all the supposedly missing dependencies at some point...