Yes. And why is there this widely-held obsession that people who don't know your language should be able to tell what your code does (i.e., 'readability')? When will this ever be relevant in the real world?
I don't know many non-Python programmers who like to sit down of an evening, fire up their e-reader, and peruse a few hundred lines of beautiful Python code.
Because there are extra mental operations involved in translating what the code does to what you think/know it does.
We all learn a natural language and its grammar, and use it daily. It's very important for a machine language to be as cognitively compatible with a natural language as possible (aka readability), because that is extremely important for productivity.
p.s. The above is particularly relevant to Python, because it (justifiably) prides itself on its emphasis on readability. To me, even though Python is 5 to 30 times slower than Java, it holds the keys to the future because of its commitment to readability. In the long run, that is the single most important feature of any language - other fundamentals are necessary, but not sufficient to ensure a language's longevity, and can be fixed more easily.
There are times where its handy to have readability, albeit in one-off situations.
The most relevent one I recently encountered was working with a team and needing to get some numbers crunched - I had knowledge of scipy and was able to show the code to others who hadn't used python but could still understand it.
Hmm, as the parent comment, you too confuse readability of a language with it being readily readable by non-programmers in that language.
Readability describes how clear, concise, non-ambiguous, etc a language's syntax is and also the code one writes is. It's not about sharing your code with others who don't know the language, it's about making actual use and collaboration in the language (in a shared project) better.
There are many people who are not expert in your programming language but need to understand it, though. When you work in an environement where you need domain people, who are hired for their domain first and are programmers second, this can matter a lot.
"""And why is there this widely-held obsession that people who don't know your language should be able to tell what your code does (i.e., 'readability')? When will this ever be relevant in the real world?"""
Em, you got it wrong. Readability is not about people "not knowing your language". It's about people knowing your language and having to read your code at a later point.
The problem with a language with poor readability is that it is hard to read even your own code written in it, because the syntax is ambiguous and funky and it involves a large mental overhead.
He's probably referring to this, from the article:
"Isn’t it better, less cryptic, and more pythonic? a[:] feels a bit too much like Perl. Unlike with the slicing notation, those who don’t know Python will understand that b contains a list."
I can and do send bits of my Python code to non-Python developers for them to examine for things like business logic errors. The only reason this is practical is because the code is clear and explicit about what it's doing.
I don't know many non-Python programmers who like to sit down of an evening, fire up their e-reader, and peruse a few hundred lines of beautiful Python code.