This course, site, and game are an experiment in a new type of education.  I am a firm believer in constructionism, the learning theory that centers around the idea that knowledge is constructed by the learner, as a result of their experience and thinking about a subject.  I also believe in connectivism, a learning theory that emphasizes the necessity of and benefit of connections in accumulating knowledge, skills and experience. Knowledge, I believe, can never really be ‘transmitted’ at all.  In these theories, the role of the educator is a coach: guiding, cheering, and prompting a learner, who must build their own understanding.


Gnimmargorp is built on these ideas, using the relatively new tools and styles of gamification and games-based-learning.  I use the framework of a game to present the content of my course.  I use the gamification engine and other online systems to help track student progress and provide feedback in a much more immediate way that I could ever provide as one human being working with so many students.

If it seems like your player…urm, student…is having too much fun for schoolwork, please take a moment to just watch.  Or chat about it with them.  I think you’ll find, as I have, that rather than just playing, they are actively exploring, trying, failing, re-trying, reflecting, sharing, asking, researching, and learning.  The game provides a nice structure, but the content covered in the class reflects a modern introduction to computer science.  This course prepares students for further education in a Computer Science career.  It also prepares them for a real life in which they’ll be expected to know how to teach themselves.  That’s my ultimate goal.


The way this course is structured is based on pedagogical research that also produced the ideas of problem-based-learning, project based learning, quest-based-learning, experiential learning, making, and discovery learning.  It’s founded on principles Dan Pink re-discovered and reported on in his book Drive.  These confirmed and clarified principles that educational researcher Deci and Ryan have been promoting for over two decades.  In turn, their research has extended, confirmed and clarified the foundational principles and perspectives Dewey put forth more than 60 years ago.  The key principles are:

  • Autonomy – students are provided as much self-direction as they can handle.  I step in and guide as necessary.  I encourage them to take control back as soon as they’re capable.
  • Mastery – this class is all about doing.  Not the grade, not a test, but actual real-world creations.  Players can see right away whether it works or not…and make corrections as many times as needed until it does.
  • Purpose – students know the why behind what they’re doing.  We discuss it regularly.  They also know we’re experimenting with education itself, leading the way for future educators.
  • Relationship – another of my goals is for every student in my classes to feel I know and care about them.


Feel free to contact me if you have any questions about the course, your student, or what we’re doing.  My number in Cairo is +20 (0)120 836 9543.  My email address is  If you want to know more about my philosophy and experience, you can check out my online portfolio or review my blog site.


Finally, I must acknowledge a substantial debt to Allen B. Downey, who wrote Think Python and generously released it under a creative commons license.  I’ve used his excellent work as a foundation for much of the sequence introducing students to Python in Gnimmargorp.


For Parents  |  For Teachers  |  Introduction Letter | For New Players

Skip to toolbar