Reading list: programming logic and design by joyce farrell