xx Contents
Simplicity
Beauty Is in Simplicity .............................10
Learn to Say, “Hello, World”. .......................102
A Message to the Future ..........................116
Simplicity Comes from Reduction ....................150
Teamwork and Collaboration
Code Reviews ..................................28
Learn Foreign Languages ...........................98
Pair Program and Feel the Flow ......................128
Start from Yes .................................154
Two Heads Are Often Better Than One .................170
Ubuntu Coding for Your Friends .....................174
When Programmers and Testers Collaborate .............184
Tests, Testing, and Testers
Apply Functional Programming Principles ................4
Code Is Design ..................................24
Don’t Be Cute with Your Test Data .....................50
The Golden Rule of API Design .......................70
Make Interfaces Easy to Use Correctly and Hard to Use
Incorrectly ...................................110
Make the Invisible More Visible .......................112
News of the Weird: Testers Are Your Friends .............120
Test for Required Behavior, Not Incidental Behavior.........160
Test Precisely and Concretely .......................162
Test While You Sleep (and over Weekends) ..............164
Testing Is the Engineering Rigor of Software Development ....166
When Programmers and Testers Collaborate .............184
Write Small Functions Using Examples .................188
Write Tests for People ............................190