Rule 1: Follow a consistent coding standard Rule 2: Name things properly, long variable and function names are allowed Rule 3: Be expressive, write code as you speak and be optimally verbose Rule 4: Max indent per method should be 2, in case of exceptions 3 Rule 5: Avoid creating god object and long methods Rule 6: Keep the method in one place, inject the class and call it, DRY Rule 7: Avoid in-line comments (comment with code), put comments in the method doc