This chapter is truly about a "pragmatic" approach to development - We discuss duplicating knowledge throughout systems, insulating projects from their changing environments, gathering requirements and implement code at the same time, how to give project estimates