Monty Karel is an introduction to computer programming for novices. It uses the Python programming language to introduce the principles of dynamic object-oriented programming. It is the latest version in the Karel The Robot series, originally developed by Richard Pattis. It is a true successor to the original, emphasizing problem solving in a simple but "Turing Complete" and interesting virtual world.
Monty Karel stresses problem solving rather than language syntax. It has been shown to be an effective learning environment for novice programmers. A student able to do the exercises in this book, or one of its companions, is truly on his or her way to a deep understanding of programming.
Learn to write sophisticated Python code in a few weeks. It is not a comprehensive treatment of Python, but emphasizes problem solving using objects, writing classes, and developing skill in algorithmic and polymorphic thinking. It goes beyond thinking of computing as just "if" and "while".
The advantages pointed out by reviewers of the earlier Karel J Robot apply to this version as well:
Karel J Robot is an excellent introduction to modern computer science, without letting students get overwhelmed by the details of a programming language (even though it is real Java). KJR provides a framework for understanding Object-Oriented Programming from the very beginning. Students are encouraged to develop problem-solving skills by producing projects that solve very complex problems with a relatively small set of tools.
Don Slater, Carnegie-Mellon University
I have been successfully introducing students in grades 9 through 12 to programming using Karel for the past twenty years and Karel J Robot is the most effective version yet. Students love it! They find principles of OOP (class design, constructors, methods, inheritance, polymorphism) come naturally to them, even before they learn about control structures. They discover recursive solutions without ever being taught recursion. Best of all, Karel is gender neutral --- both girls and boys are so involved and excited that I have to push them out the door and on to their next class when the period ends.
Kathy Larson, Kingston High School, Kingston New York
Karel J Robot: A Gentle Introduction to the Art of Object-Oriented Programming in Java takes you on a well-sequenced and thoughtful journey through the essential concepts in a first semester computer science course. Experience computer science at the level that it is most inspiring - the conceptual level. The visual environment will help you teach and your students learn because everyone will have immediate visual feedback, enabling them to see what they are doing. You will leave the Karel world with a deep understanding of polymorphism, inheritance, abstraction, modularization, and step-wise refinement, to name just a few topics. If you are an AP Computer Science teacher, you have just found the perfect guide to help ensure you do not lose sight of the forest (i.e., computer science) through the trees (i.e., the details of the language).
Dave Wittry, Troy High School
Karel J Robot provides an uncluttered setting for laying the foundation for all of the key OO concepts. The perfect "starter" for understanding objects, OO design and OO programming.
Michael Goldweber, Xavier University