Code should be formatted the same way and enforced automatically using tools.
You should iterate sequentially on a focused chunk of work at a time.
Core logic that is related to solving a business or domain problem should exist outside of a framework.
Data should be held in one location, duplicates of that data should be by reference only.