Welcome! Karel the Robot  Teaches Critical Thinking
Karel the Robot  Teaches Critical Thinking <ul><li>Compiled by: Debbie Clingingsmith </li></ul><ul><li>Email: debbie@cling...
What is a critical thinking? <ul><ul><li>Critical thinking is the intellectually disciplined process of actively and skill...
What Karel J Robot? <ul><ul><li>Karel is an educational programming language for absolute beginners, created by Richard E....
For teachers, Karel J Robot is: <ul><ul><li>A simulator </li></ul></ul><ul><ul><ul><ul><ul><li>Karel lives in a simple wor...
Karel J Robot's World
Karel J Robot's World
Karel J Robot's World
Karel J Robot's World
Program tab (Pascal)
Program tab (Java)
Execute tab
What may Karel do <ul><ul><li>move </li></ul></ul><ul><ul><li>turnleft </li></ul></ul><ul><ul><li>pickbeeper </li></ul></u...
What Karel may know <ul><ul><li>Whether a direction is blocked or clear </li></ul></ul><ul><ul><ul><ul><ul><li>frontIsBloc...
How may Karel decide <ul><li>Control statements </li></ul><ul><ul><ul><ul><ul><li>if </li></ul></ul></ul></ul></ul><ul><ul...
Creating new Karel activities <ul><ul><li>define </li></ul></ul><ul><ul><ul><ul><ul><li>Use with braces above and below th...
How to Use Karel <ul><ul><ul><ul><ul><li>Make or open a Karel world </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>...
Karel  Resources <ul><ul><ul><ul><ul><li>Otterbein college </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>* Karel t...
Karel Exercises <ul><ul><ul><ul><ul><li>Atlantic City High School </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>* ...
Upcoming SlideShare
Loading in …5
×

Karel the Robot Teaches Critical Thinking

1,599 views

Published on

Published in: Technology, Business
  • Be the first to comment

  • Be the first to like this

Karel the Robot Teaches Critical Thinking

  1. 1. Welcome! Karel the Robot Teaches Critical Thinking
  2. 2. Karel the Robot Teaches Critical Thinking <ul><li>Compiled by: Debbie Clingingsmith </li></ul><ul><li>Email: debbie@clingingsmith.org </li></ul><ul><li>Last revised: 1/26/2008 </li></ul><ul><li>Description: Using the Karel J Robot simulator to teach critical thinking skills </li></ul><ul><li>Download Slides: slideshare.net/dlclingingsmith </li></ul>
  3. 3. What is a critical thinking? <ul><ul><li>Critical thinking is the intellectually disciplined process of actively and skillfully conceptualizing, applying, analyzing, synthesizing, and/or evaluating information gathered from, or generated by, observation, experience, reflection, reasoning, or communication, as a guide to belief and action. </li></ul></ul><ul><ul><li>Defining Critical Thinking: A statement by Michael Scriven & Richard Paul for the National Council for Excellence in Critical Thinking Instruction , Critical Thinking Foundation, downloaded 1-23-2008 from http://www.criticalthinking.org/aboutCT/define_critical_thinking.cfm </li></ul></ul>
  4. 4. What Karel J Robot? <ul><ul><li>Karel is an educational programming language for absolute beginners, created by Richard E. Pattis in his book “Karel The Robot: A Gentle Introduction to the Art of Programming.” Pattis used the language in his courses at Stanford University. The language is named after Karel Čapek, a Czech writer who introduced the word robot. </li></ul></ul><ul><ul><li>Karel (programming language) , Wikipedia, downloaded 1-23-2008 from http://en.wikipedia.org/wiki/Karel_(programming_language)‏ </li></ul></ul>
  5. 5. For teachers, Karel J Robot is: <ul><ul><li>A simulator </li></ul></ul><ul><ul><ul><ul><ul><li>Karel lives in a simple world of streets and avenues </li></ul></ul></ul></ul></ul><ul><ul><li>Free to download </li></ul></ul><ul><ul><ul><ul><ul><li>PC/MAC available at http://pclc.pace.edu/~bergin/KarelJava2ed/karelexperimental.html </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>or http://www.wiley.com/college/pattis/0471597252/instructor/instructor.html#pc </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>Palm OS available at http://handheld.softpedia.com/get/Educational/Tutorial/Karel-the-Robot-6753.shtml </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>Several versions, suggested version is Karel J Robot which uses Java </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>Available for MAC, PC, or Palm OS </li></ul></ul></ul></ul></ul><ul><ul><li>Easy to learn and use </li></ul></ul><ul><ul><ul><ul><ul><li>Karel may perform five different activities </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>May create new activities oneself </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>Karel knows about conditions in the environment </li></ul></ul></ul></ul></ul><ul><ul><li>Fun to run </li></ul></ul><ul><ul><ul><ul><ul><li>Provides immediate feedback </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>Middle and high school students enjoy Karel </li></ul></ul></ul></ul></ul>
  6. 6. Karel J Robot's World
  7. 7. Karel J Robot's World
  8. 8. Karel J Robot's World
  9. 9. Karel J Robot's World
  10. 10. Program tab (Pascal)
  11. 11. Program tab (Java)
  12. 12. Execute tab
  13. 13. What may Karel do <ul><ul><li>move </li></ul></ul><ul><ul><li>turnleft </li></ul></ul><ul><ul><li>pickbeeper </li></ul></ul><ul><ul><li>putbeeper </li></ul></ul><ul><ul><li>turnoff </li></ul></ul>
  14. 14. What Karel may know <ul><ul><li>Whether a direction is blocked or clear </li></ul></ul><ul><ul><ul><ul><ul><li>frontIsBlocked </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>leftIsBlocked </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>RightIsBlocked </li></ul></ul></ul></ul></ul><ul><ul><li>Direction faced </li></ul></ul><ul><ul><ul><ul><ul><li>facingNorth </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>facingSouth </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>facingEast </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>facingWest </li></ul></ul></ul></ul></ul><ul><ul><li>Whether beepers are nearby or in the bag </li></ul></ul><ul><ul><ul><ul><ul><li>anyBeepersInBeeperBag </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>nextToABeeper </li></ul></ul></ul></ul></ul><ul><ul><li>frontIsClear </li></ul></ul><ul><ul><ul><ul><ul><li>leftIsClear </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>rightIsClear </li></ul></ul></ul></ul></ul><ul><ul><li>noBeepersInBeeperBag </li></ul></ul><ul><ul><li>notNextToABeeper </li></ul></ul><ul><ul><li>notFacingNorth </li></ul></ul><ul><ul><ul><ul><ul><li>notFacingSouth </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>notFacingEast </li></ul></ul></ul></ul></ul><ul><li>notFacingWest </li></ul>
  15. 15. How may Karel decide <ul><li>Control statements </li></ul><ul><ul><ul><ul><ul><li>if </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>Example: if (frontIsBlocked) {turnleft();} </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>while </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>Example: while (frontIsBlocked) {turnleft();} </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>iterate </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>Example: iterate(3) {turnleft();} </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>if with else </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>Example: if (frontIsBlocked) {turnleft();} </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>else {move()}; </li></ul></ul></ul></ul></ul><ul><li>Format: command ( condition to meet ) { what to do } </li></ul>
  16. 16. Creating new Karel activities <ul><ul><li>define </li></ul></ul><ul><ul><ul><ul><ul><li>Use with braces above and below the instructions included in the newly defined command </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>A defined command may be used in another defined command. However, it must be defined previous to its use (physically, it must be above where it is used in a new define). </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>Example: creating a right turn </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>define turnright() { </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>turnleft(); </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>turnleft(); </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>turnleft(); </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>} </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>Example of use: if (frontIsBlocked) {turnright()}; </li></ul></ul></ul></ul></ul>
  17. 17. How to Use Karel <ul><ul><ul><ul><ul><li>Make or open a Karel world </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>* When Karel starts, it is in the world tab </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>* Create walls by left clicking between two adjacent blocks </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>* Place beepers if you wish </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>* Save your world </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>Create or open a program </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>* Left click the Program tab </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>* Choose Pacal or Java, then click the New button </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>* Write your program, then click the Compile button </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>* Save your program </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>Run your program </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>* Left click the Execute tab </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>* Click the Initialize button </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>* Click the Run button. Increase speed by increasing the Steps/Min number. </li></ul></ul></ul></ul></ul>
  18. 18. Karel Resources <ul><ul><ul><ul><ul><li>Otterbein college </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>* Karel the Robot tutorial online in Pascal </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>* URL: http://math.otterbein.edu/home/JKarelRobot/ParelTutorial/Karel.htm </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>* Place beepers if you wish </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>* Save your world </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>David Wittry web site </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>* URL: http://www.apcomputerscience.com/karel/index.htm </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>* Movie demos of Karel running </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>* First edition of Karel J Robt: An Introduction to the Gentle Art of Object </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><ul><li> Oriented Programming in Java available free and online </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>. </li></ul></ul></ul></ul></ul>
  19. 19. Karel Exercises <ul><ul><ul><ul><ul><li>Atlantic City High School </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>* “Karel the Robot I ntroductory Role Play Classroom Activity” paper by Joseph A. Tosh </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>* URL: http://pclc.pace.edu/~bergin/KarelJava2ed/KarelRolePlay.html </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>JR Masterman School </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>* URL: http://geom.teachopensource.org/apcs/resources/resources_files/lecturek1-2007.pdf </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>* Slide set and a paper exercise </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>. </li></ul></ul></ul></ul></ul>

×