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. 처음에는 그 길이 잘 보이지 않겠지만. 네가 python 저자쯤 된다면 모를까.
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. 구현이 설명하기 쉽다면 그건 좋은 아이디어일지도 모른다.
Namespaces are one honking great idea -- let's do more of those! 이름공간은 아주 좋은 아이디어다. 마음껏 사용해라!
가끔씩 읽으면서 마음을 진정시킨다.