- Personal Skills
- Learn to Debug
- How to Debug by Splitting the Problem Space
- How to Remove an Error
- How to Debug Using a Log
- How to Understand Performance Problems
- How to Fix Performance Problems
- How to Optimize Loops
- How to Deal with I/O Expense
- How to Manage Memory
- How to Deal with Intermittent Bugs
- How to Learn Design Skills
- How to Conduct Experiments
- Team Skills
- Why Estimation is Important
- How to Estimate Programming Time
- How to Find Out Information
- How to Utilize People as Information Sources
- How to Document Wisely
- How to Work with Poor Code
- How to Use Source Code Control
- How to Unit Test
- Take Breaks when Stumped
- How to Recognize When to Go Home
- How to Deal with Difficult People