

What the heck does "pythonic" mean? - digitall
http://halitalptekin.tumblr.com/post/30028271874/pythonic-syntax

======
vitno
pythonic is easily summed up whenever you type 'import this'!

for those without a python interpreter handy:

>>> import this The Zen of Python, by Tim Peters

Beautiful is better than ugly.

Explicit is better than implicit.

Simple is better than complex.

Complex is better than complicated.

Flat is better than nested.

Sparse is better than dense.

Readability counts.

Special cases aren't special enough to break the rules.

Although practicality beats purity.

Errors should never pass silently.

Unless explicitly silenced.

In the face of ambiguity, refuse the temptation to guess.

There should be one-- and preferably only one --obvious way to do it.

Although that way may not be obvious at first unless you're Dutch.

Now is better than never.

Although never is often better than _right_ now.

If the implementation is hard to explain, it's a bad idea.

If the implementation is easy to explain, it may be a good idea.

~~~
rbanffy
BTW, I've been struggling with this: why smart people consider buildout
pythonic and pip install -r unpythonic? Can anyone defend that position?

Would that change if I were Dutch?

~~~
slurgfest
I don't think the Python community in general dictates the use of buildout at
all. I reckon there are more supporters for pip install -r (although I would
take correction). So the question becomes, why _some_ smart people consider
buildout Pythonic. I guess they just like it.

~~~
huxley
Buildout came first and can do more things than pip can. If your workflow was
heavily dependent on buildout, I could see how someone would see pip as
inadequate. Buildout also came from the Zope community, so that will
immediately break people up into camps.

My impression is also that more people use pip now particularly with its
integration with virtualenv.

I can't imagine not developing with pip and virtualenv now.

------
unwind
My interpretation of "Pythonic" is "idiomatic in Python". It's just a simple
mashup of the two words, with the added bonus of being quite easy to say, and
perhaps sounding cool/interesting/appealing.

It's a bit harder for us poor C programmers to come up with a matching term.
"C-nic" (rhymes with "scenic") just looks weird, but of course the double
meaning would be amusing: "this code doesn't look very C-nic"!

------
vetler
I'm surprised PEP-8 wasn't mentioned. When I used to do Python development,
this was the main reference for "pythonic" code conventions.

<http://www.python.org/dev/peps/pep-0008/>

------
andreasvc
Better submit the original link from 2005. I couldn't use the arrow key on
this one which is always annoying.

------
bitwize
To me "Pythonic" means "according to the values of the Python community". More
than idiomatic, there is a set of normative values involving design,
interfaces, etc. inherent in the term "pythonic" and the judgement it implies.

~~~
snprbob86
I think it's valuable for a community to have such a word or phrase. Companies
should have such a phrase too.

Google has "Googley", Apple has "doesn't suck" and "insanely great"; those
phrases get used to justify a level of engineering and design respectively
that truly sets those companies apart. The phrase itself is adequate to summon
the higher bar of the phrase's respective auteur.

------
dguaraglia
Hm, I guess 'Pythonic' is also highly subjective. It's one of those things
that "you'll know when you see it" but it's almost impossible to describe in
words. I've seen code that rigorously complied to PEP8, had a lot of the
constructs described in the article and still managed to look like C code. It
wasn't "bad" code, mind you. It just wasn't Pythonic enough. Go figure!

------
hack_edu
Off-topic, but why do so many sites still use static layouts that break when
zoomed in with a mobile browser. The choice of font on this post is too small
to read without zooming in, but his little static box forces itself on top and
of the actual text content. Perhaps this isn't a problem in other mobile
browsers? Using Chrome on Android...

~~~
X-Istence
I'm reading in Safari and all of the content is a single bar down the left
side, all squeezed together taking up very little of the viewport...

It made it difficult to read as well. The huge whitespace on the right of the
article is extremely distracting.

------
will_work4tears
When I hear the term, I think in Greek terms:

Of or resembling an oracle; prophetic.

------
dllthomas
From the Greek, I think it would be "rotten".

------
jackolas
"New codebase... Twisted." Is this satire?

