Funworks have spent years developing a teaching methodology where learners actively participate in their learning. The textbooks are filled in activities which teach underlying principles. Learners are encouraged to adapt code and explore “What if” situations. Each activity is designed to increase the skills of the learner and build on their knowledge of programming. Exercises and Check Points are placed at strategic points to consolidate the learners knowledge and skills.