You do not come off as elitist in any way. Having your write-up available for your students makes perfect sense, though I don&#x27;t know that posting it to Hacker News will result in much (but it doesn&#x27;t seem like your target audience anyway).<p>I think &quot;pythonic&quot; is a slippery slope. Many people take it too far and begin to develop militant ideas of what &quot;readability&quot; means, or they do silly things. For instance, I once heard a tale about someone needing to create their own toolkit for handling paths in a certain project. It was just going to a wrapper around the usual os.path tools, but would factor out a lot of the team&#x27;s repetitive code.<p>That person actually implemented __abs__ so that &quot;abs(p)&quot; resulted in the absolute path for the path object p. Ugh!<p>The justification was that this is supposed to be more &quot;pythonic&quot; than just writing a simple helper function. And of course, if you say that the documentation about Python idioms or accepted understandings of what is &quot;pythonic&quot; don&#x27;t have anything to do with the choice to implement something as a special method, the other person&#x27;s response is just &quot;yes it does&quot; -- their interpretation is that this is what pythonic means. It&#x27;s like having an interpretation debate about the Bible or something. It means something different to everyone, which makes it pretty useless as a centralized standard.<p>If you apply good Haskell style, or good C style, or good Java style, to writing Python, your code will be absolutely fine and perfectly readable even in large enterprise codebases (perhaps more so depending on who else reads it).<p>I think Google&#x27;s C++ guide has the right idea. You should follow the <i>local</i> conventions of the piece of code you&#x27;re editing.<p>If you&#x27;re working in a Python module where someone puts every function argument on a new line (even if you&#x27;re not near the 80 char limit) like this<p><pre><code>    def foo(arg1,
            arg2,
            ...):
        # ...
</code></pre>
then you should just also do that, and not waste time about whether this is more Pythonic<p><pre><code>    def foo(arg1, arg2,
            arg3, ...):
</code></pre>
I think if the Python community trumps up this idea of pythonic, it just alienates other people whose natural style (or the guides to their own main languages) tell them differently.<p>Over time, Python developers will learn when it&#x27;s better to use map than a comprehension, how to style things, how avoid doing needlessly complicated things like the __abs__ example above. You don&#x27;t have to drill &quot;pythonic&quot; stuff into them for that sort of clean code common sense to emerge, and you certainly don&#x27;t need to make it a major point of community pride or identity.