Pragmatic Programmers, Part 2