1. Introduction
2. General advice
3. Using Linux
4. Documentation
5. Java
6. Coding standards
7. Testing and debugging
8. Algorithms
9. Algorithm cost
10. Linked lists
11. Notes on grading of programming assignments