"And this is exactly my point about why having the Zen of Python is problematic: it is not in any way definitive, but it is treated as though it is."
What does that even mean?
Not having 'one way' of doing things is a good thing. People program in different ways. Not everyone is the same. Its ok, don't panic.
I've encountered countless 'you're doing it wrong' messages from the rails community; or 'that's not idomatic ruby'.
Simple example, naming your files: MyClassName.rb instead of my_class_name.rb; I've never yet encountered a python guy who's hassled me for naming my python files differently. I've yet to meet a single ruby developer who hasn't commented on it.
...but you know what, that's ok too. I don't mind; these are different communities, and they have different outlooks.
I'm really not sure what point you're trying to make, but the point I'm making is: these are different tools, and the communities for them have different priorities.
Why do we need to rank them and say there's something 'wrong' with the community of one compared to the other?
The python vs ruby debate is unnecessarily divisive flame bait in almost all circumstances.
Sorry, I guess I didn't express my point well. What I'm trying to say is that it is problematic for a community to have these kinds of overarching statements about their communal philosophy, when that communal philosophy is not, in fact, shared by all members of the community in a consistent way.
This results in one person saying one thing that means one thing, and another saying something completely different, but both are pointing to the same set of "first principles" as their guide. In my opinion, this is problematic.
Not having 'one way' of doing things is a good thing.
I absolutely agree. But that's not a very Pythonic way to think about things: "There should be one--and preferably only one--obvious way to do it." (See what I'm saying?)
Listen, I'm not trying to talk shit about the Python community, or claim the Ruby community is a consistent exemplar of the best in programming language community behavior--if anything, the norms in the community merely fit my personality better. And I acknowledged in my original post that the Ruby community errs on the side of normativism to a fault at times: this is something it would appear you've experienced. In fact, I don't really want to be identified as a member of this community or that one, in the end I want to be viewed as a developer who considers the tools he is using from a more expansive perspective.
I'm merely pointing out my observations as a developer, with (as it so happens), a lot of recent experience in Ruby, who is starting to program Python. I think the Python community, insofar as there are a group of people who identify as a part of the Python community, could benefit from some outside perspective. Outside perspective is good sometimes, right?
"And this is exactly my point about why having the Zen of Python is problematic: it is not in any way definitive, but it is treated as though it is."
What does that even mean?
Not having 'one way' of doing things is a good thing. People program in different ways. Not everyone is the same. Its ok, don't panic.
I've encountered countless 'you're doing it wrong' messages from the rails community; or 'that's not idomatic ruby'.
Simple example, naming your files: MyClassName.rb instead of my_class_name.rb; I've never yet encountered a python guy who's hassled me for naming my python files differently. I've yet to meet a single ruby developer who hasn't commented on it.
...but you know what, that's ok too. I don't mind; these are different communities, and they have different outlooks.
I'm really not sure what point you're trying to make, but the point I'm making is: these are different tools, and the communities for them have different priorities.
Why do we need to rank them and say there's something 'wrong' with the community of one compared to the other?
The python vs ruby debate is unnecessarily divisive flame bait in almost all circumstances.