== A consequence of Python's 'computer science' nature Here is a thesis: Python being a very [['computer science' language CSPython]] is a good part of the polarized reactions it often gets. The necessary flipside of being regular and predictable is that Python is also rigid and what I will call 'solid': it is not just rigid in separate, independent pieces, it is rigid all through, which comes naturally from the rigorous expansion of its core concepts through the language (and from how they tend to interlock). If the core concepts resonate with you, then the solid uniformity means that you will probably like a whole lot of Python. However, if the core does not click with you, then that very uniformity means that there is very little or nothing to interest you, nothing that feels right to you. This is unlike what happens with more flowing and flexible languages, ones with a lot of idioms and approaches mixed together, where you may dislike most of the whole but find bits that are in your style anyways. (I think of Perl as an example of a flowing, flexible language; for example, you can write Perl code in all sorts of [[equally idiomatic ../programming/InvertedConditionals]] ways, and two people can have very different styles of Perl code.)