A poem about good coding principles.
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.
- Namespaces are one honking great idea – let’s do more of those!
Source
The “one and preferably only one” has two different types of hyphen spacings on purpose.
Source
Related
- These themes are covered in the text
- Simple is Maintainable - simple is better than complex
- Affordances & Pit of Success - one obvious way to do it
- Don’t use “Absence of a Signal” as a Signal - errors passing silently
- Feynman Technique - explaining to a child (implementation is hard to explain)
- The Ends Justify the Means - special cases shouldn’t break the rules for this reason
- Namespace - explicitly referenced
- Complex vs Complicated