* Each file has to start with a comment containing [Apache License](http://www.apache.org/licenses/LICENSE-2.0)
* Public API of a library should be documented, preferably using format native for language-specific documentation generation tools (Javadoc, Doxygen etc.)
* Other comments are discouraged - comments are lies. When one has to make comment it means one failed to write readable code. Instead of "I should write a comment here" think "I should clean it up"
* Do not leave "TODO/FIXME" comments - file [Jira](http://issues.apache.org/jira/browse/THRIFT) issue instead
### Naming
Finding proper names is the most important and most difficult task in software development.