The Pragmatic Programmer: From Journeyman to Master - page 1