From the article:
- choosing a slow session container
- doing things on a per request basis, which could have been done once at startup
- repeating identical computations during request processing
- reading too often and too much from the database (especially in conjunction with associations)
- relying too much on inefficient helper methods