Copyright © 2014, International Foundation for Autonomous Agents and Multiagent Systems (www.ifaamas.org). All rights reserved. What are the types of mistakes ("faults") that novice GOAL programmers make, and how do they manifest as failures? This question is important since it has significant implications to the ongoing design of GOAL, and other agent-oriented programming languages; to the ongoing development of tools that support GOAL programmers; and to how we teach agent-oriented programming. In this paper we develop taxonomies for faults and for failures. We then classify the faults and failures that occur in a collection of programs by novice GOAL programmers. This provides empirical data which we use to make recommendations regarding the GOAL language, its support tools, and how it is taught.