In this paper we present the results of our work looking at how to provide a hands-on learning experience in AI planning to an undergraduate audience, complementing a conventional lecture series. At the core of our approach is a new Java implementation of the well-known planner FF, JavaFF. By using object-oriented programming techniques, JavaFF serves as a flexible and comprehensible substrate for student planning exercises. As a proof-of-concept, we present the exercises we constructed for use with the planning part of a final-year undergraduate AI module. The exercises involve making modifications to JavaFF to implement given research ideas, and culminate in a group-based 'planning competition'. We also detail the new directions in which we are taking JavaFF, in anticipation of the next academic year.