Do all the things like ++ or -- rants, post your own rants, comment on others' rants and build your customized dev avatarSign Up
Root6886424dI mostly have a problem with its community. I also dislike significant whitespace in general, and dislike python’s form and syntax in particular.
Python as a language isn’t bad in any way, at least not any more than most other languages. It has its downsides, but it’s a decent tool.
Seems to fall into 3 things here, by descending volume:
- other-language preference/gnosticism
- perception of value doesn't match actual value
C0D46069024dI enjoy using python - but thats not to say it's not tedious at times, but it has its place, I'm not a fan of whitespace languages though, so I won't default to python unless I have no choice or it's better equiped for what I'm doing.
The runtime/execution environment blows ass due to the "this works in this version but not that".
That's not a justification for hating it, just a thing I can understand if that's a reason.
EternalStudent124dThe language "conventions" are a nightmare for a guy who enjoys strict OOP. I spend more time thinking about how to organize my modules and files than actually thinking about my implementation, as I'm a big fan of the one class one file structure which is not really a thing in Python. And the lack of type declaration sucks too. Python seems to be the best option for my current thesis (applied data science) and I'm very unhappy with that. And by very unhappy I mean losing sleep and refusing to eat, lol. I have zero industry experience though, so take it with a grain of salt.
M3m35terJ05h80824dSomething that gets brought up a lot is significant whitespace. And that's just baffling to me. Where are you working that you can just casually fuck up your whitespace?
It uses dynamic types so that comes with its haters.
There was also the python 3 fiasco which is STILL not fully resolved. A lotta people hate that they just decided to introduce breaking changes.
But at the end of the day none of that really matters. Use what works for you and/or your team
gibus15324dWhere is this all over the place? I haven't seen it. Where you're developing tools for yourself and your colleagues and time is money, nothing competes with Python.
EmberQuill234024d@gibus I may have exaggerated slightly as I've mostly seen it either here on Devrant or from a few specific coworkers who swear that Golang is infinitely superior to Python in every way. Saw another "Python sucks" rant recently and the dam broke and I had to ask why.
So far the answer seems to be significant whitespace. Which is... odd. Yes, it sucks that your program won't run because of an indentation error. But even if it works in another language, it'll still make your linter scream at you and fail code review.
The way I see it there's basically two main camps of people who don't like things:
The first and worst is the whole "my language/OS/paradigm is better and therefore you're all idiots mnyeh" crap as just a way to put down others-- these are the insecure contrarians, and egotistic elitists.
The other camp are people who say *I personally* dislike working with [python/java/C#] because *I* [don't like white space / have to repeat too much code / find having so many files messy]
The people in the former often read the latter and get very emotional and feel personally attacked by this eg. "[PYTHON IS BEAUTIFUL IT SAYS SO/ I NEVER REPEAT CODE/ IM NOT MESSY] YOUR USING IT WRONG NOOB".
Frankly it doesn't matter. Form your own opinions.
100110111145424dIs it hatred though? There are lot of reasons to dislike Python (many covered in this thread and the one linked by @Xoka), so while many of them apply as reasons to me disliking it, whitespace is not one (I like F#, after all). But I think the main reasons I personally have recently spoken against Python is both because it is such an overrated language (not a bad language, and definitely has it's use cases), and - by no fault of the language itself - it's the first language to learn for many new programmers, and due to how different as a language it is compared to pretty much anything else anyone of those fledgling devs are likely to try their hands at next, I've observed them struggle confused much more than they should (some end up sticking to Python and hating all else vocally, and I think those people are the main reason I'm vocal about my dislike of Python)... it's a good tool to have in your toolset, but not the first one you should learn.
mr-user140224dThis is just my personal opinion but the reason I don't like python is because of the community.
Sure they are a lot of library but I don't like the naming inconsistency among them.
The another reason I don't like is that I have to remember which value to put in which parameter. I mean some function which accept only predefined value for the parameter.
It seem like it can be solved by "Enum" but I don't see many people using "Enum".
I also feel that python force you to just look at "documentation". I have no problem with reading "documentation" but mostly I can't guess what the function does and need to read "documentation".
I don't like it when I have to refactor python code. When I refactor the outer "if" statement , I have to go and fix the white space. Copying and pasting code something help but it's a pain to refactor in python.
mr-user140224dI am not complaining much but due to lack of type system, the python cannot figure out if the class' function is removed (due to refactoring) so it break in runtime.
Fast-Nop2949424dPython is OK for quick and dirty throw-away shit, but not for long-term projects. It's not just the Python2 to Python3 problem - they even introduce breaking changes in minor releases, just take a look at the change notes.
This creates a dependency of your code to a certain Python version. Now if you have several project parts from different people, this creates a whole new setup and dependency hell.
It's like building a city on quick sand.
Lor-inc515824dI passionately hate languages which actively prevent easy typo detection by removing declarations.
Oktokolo120124dPython is the most readable general purpose language i ever saw.
It is great for building tools and small to medium sized projects.
It is dynamically typed and duck-typing-centric though. So the interpreter does not help you finding bugs.
But if you use type annotations (and you should), PyCharm will do the static analysis instead.
It has an enourmous standard library featuring a somewhat consistent naming scheme and the best documentation i ever saw.
It sadly lacks any functional features besides higher level functions (every modern language has that now).
It uses significant whitespace (wich i like, because i correctly indent my code anyway).
It isn't stable!
That is a major drawback for most.
But in the past since Python 3, that was only an issue for fully unmaintained projects.
Wisecrack427923dI always wondered what it woukd be like to have a language that opens a block with a colon and closes it with a senicolon.
its not whitespace based, but it retains most of the visual clarity of a language that is, without adding a big clunky "end" keyword all over the place.
//do some stuff
for x in y:
and less visual noise than nested curly braces.
yea or nay. if so, why.
also it reserves curly braces for another data type, like maps, instead of reusing it and introducing another exception to learn.
Condor3427622dQuite new to Python 2 and 3 here, and probably just gonna use it temporarily to complete Google's Foobar challenges, to then ditch it again. So my thoughts of it are pretty much first impressions.
I don't mind the language, it's cleaner than bash, particularly in its math expressions (which Foobar seems to be heavily focusing on). However the documentation online is now separated between 2 and 3, which are similar but definitely not the same. It's annoying to be required to always think about which version of Python this or that answer online covers. Also, it is so entry-level that there's a ton of garbage out there for it.
Of course there's also the community. Call me a racist but many Indian Python "developers" should seriously reconsider their career choices. These are often not proper developers.
Or just poor implementations. My Telegram userbot has a .dig module in it that somehow managed to fuck up the interpretation of just about every DNS record type you give it, except A.