Pragmatic Programming and Agile Development