Your SlideShare is downloading. ×
Koans and Katas, Oh My! From Øredev 2010
Koans and Katas, Oh My! From Øredev 2010
Koans and Katas, Oh My! From Øredev 2010
Koans and Katas, Oh My! From Øredev 2010
Koans and Katas, Oh My! From Øredev 2010
Koans and Katas, Oh My! From Øredev 2010
Koans and Katas, Oh My! From Øredev 2010
Koans and Katas, Oh My! From Øredev 2010
Koans and Katas, Oh My! From Øredev 2010
Koans and Katas, Oh My! From Øredev 2010
Koans and Katas, Oh My! From Øredev 2010
Koans and Katas, Oh My! From Øredev 2010
Koans and Katas, Oh My! From Øredev 2010
Koans and Katas, Oh My! From Øredev 2010
Koans and Katas, Oh My! From Øredev 2010
Koans and Katas, Oh My! From Øredev 2010
Koans and Katas, Oh My! From Øredev 2010
Koans and Katas, Oh My! From Øredev 2010
Koans and Katas, Oh My! From Øredev 2010
Koans and Katas, Oh My! From Øredev 2010
Koans and Katas, Oh My! From Øredev 2010
Koans and Katas, Oh My! From Øredev 2010
Koans and Katas, Oh My! From Øredev 2010
Koans and Katas, Oh My! From Øredev 2010
Koans and Katas, Oh My! From Øredev 2010
Koans and Katas, Oh My! From Øredev 2010
Koans and Katas, Oh My! From Øredev 2010
Koans and Katas, Oh My! From Øredev 2010
Koans and Katas, Oh My! From Øredev 2010
Koans and Katas, Oh My! From Øredev 2010
Koans and Katas, Oh My! From Øredev 2010
Koans and Katas, Oh My! From Øredev 2010
Koans and Katas, Oh My! From Øredev 2010
Koans and Katas, Oh My! From Øredev 2010
Koans and Katas, Oh My! From Øredev 2010
Koans and Katas, Oh My! From Øredev 2010
Koans and Katas, Oh My! From Øredev 2010
Koans and Katas, Oh My! From Øredev 2010
Koans and Katas, Oh My! From Øredev 2010
Koans and Katas, Oh My! From Øredev 2010
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Koans and Katas, Oh My! From Øredev 2010

1,600

Published on

In this session from Øredev 2010 in Malmö, Sweden, Cory Foy covers the concepts of Koans and Katas in the software world by explaining the concepts of learning models such as the Dreyfus Model of …

In this session from Øredev 2010 in Malmö, Sweden, Cory Foy covers the concepts of Koans and Katas in the software world by explaining the concepts of learning models such as the Dreyfus Model of Skills Acquisition, Shu Ha Ri and others.

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
1,600
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
14
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Øredev - Malmö, Sweden Koans and Katas, Oh My! Cory Foy, Senior Consultant, Net Objectives Tuesday, November 9, 2010
  • 2. Tuesday, November 9, 2010
  • 3. Tuesday, November 9, 2010
  • 4. Tuesday, November 9, 2010
  • 5. Tuesday, November 9, 2010
  • 6. Tuesday, November 9, 2010
  • 7. Tuesday, November 9, 2010
  • 8. Tuesday, November 9, 2010
  • 9. Tuesday, November 9, 2010
  • 10. Tuesday, November 9, 2010
  • 11. Tuesday, November 9, 2010
  • 12. Koans Tuesday, November 9, 2010
  • 13. Koans Katas Tuesday, November 9, 2010
  • 14. Koans Katas Code Retreats Tuesday, November 9, 2010
  • 15. Tuesday, November 9, 2010 The method in which we do these exercises is a vital part of how we learn. One key model of Skills Acquisition is the Dreyfus model, which defines 5 stages from beginner to expert. But the key is that the earlier stages of learning require greater context and concrete steps for the student to help them work through the exercises and begin the understanding which leads them down the path of intuitive decision making.
  • 16. Novice Advanced Beginner Competent Proficient Expert Tuesday, November 9, 2010 The method in which we do these exercises is a vital part of how we learn. One key model of Skills Acquisition is the Dreyfus model, which defines 5 stages from beginner to expert. But the key is that the earlier stages of learning require greater context and concrete steps for the student to help them work through the exercises and begin the understanding which leads them down the path of intuitive decision making.
  • 17. Novice Advanced Beginner Competent Proficient Expert Works More From Intuition Tuesday, November 9, 2010 The method in which we do these exercises is a vital part of how we learn. One key model of Skills Acquisition is the Dreyfus model, which defines 5 stages from beginner to expert. But the key is that the earlier stages of learning require greater context and concrete steps for the student to help them work through the exercises and begin the understanding which leads them down the path of intuitive decision making.
  • 18. Novice Advanced Beginner Competent Proficient Expert Requires More Context Works More From Intuition Tuesday, November 9, 2010 The method in which we do these exercises is a vital part of how we learn. One key model of Skills Acquisition is the Dreyfus model, which defines 5 stages from beginner to expert. But the key is that the earlier stages of learning require greater context and concrete steps for the student to help them work through the exercises and begin the understanding which leads them down the path of intuitive decision making.
  • 19. Tuesday, November 9, 2010 An alternative way of expressing this transition is through the concept of Shu Ha Ri. In this model the student first learns by following the rules (Shu). Overtime, the student can formalize and abide by the rules. At this point they move into a phase of attempting to break the rules (Ha) by reflection on self-knowledge and exploration of exceptions and anti-theses. When the student can break and see both sides of all of the rules, they enter into a phase where they attempt to leave the rules (Ri) by becoming free of the rules by leaving the practices and focusing instead on the flow.
  • 20. Shu Tuesday, November 9, 2010 An alternative way of expressing this transition is through the concept of Shu Ha Ri. In this model the student first learns by following the rules (Shu). Overtime, the student can formalize and abide by the rules. At this point they move into a phase of attempting to break the rules (Ha) by reflection on self-knowledge and exploration of exceptions and anti-theses. When the student can break and see both sides of all of the rules, they enter into a phase where they attempt to leave the rules (Ri) by becoming free of the rules by leaving the practices and focusing instead on the flow.
  • 21. Shu Ha Tuesday, November 9, 2010 An alternative way of expressing this transition is through the concept of Shu Ha Ri. In this model the student first learns by following the rules (Shu). Overtime, the student can formalize and abide by the rules. At this point they move into a phase of attempting to break the rules (Ha) by reflection on self-knowledge and exploration of exceptions and anti-theses. When the student can break and see both sides of all of the rules, they enter into a phase where they attempt to leave the rules (Ri) by becoming free of the rules by leaving the practices and focusing instead on the flow.
  • 22. Shu Ha Ri Tuesday, November 9, 2010 An alternative way of expressing this transition is through the concept of Shu Ha Ri. In this model the student first learns by following the rules (Shu). Overtime, the student can formalize and abide by the rules. At this point they move into a phase of attempting to break the rules (Ha) by reflection on self-knowledge and exploration of exceptions and anti-theses. When the student can break and see both sides of all of the rules, they enter into a phase where they attempt to leave the rules (Ri) by becoming free of the rules by leaving the practices and focusing instead on the flow.
  • 23. Tuesday, November 9, 2010
  • 24. ✤ Kihon (Basics) Tuesday, November 9, 2010
  • 25. ✤ Kihon (Basics) ✤ Kata (Forms) Tuesday, November 9, 2010
  • 26. ✤ Kihon (Basics) ✤ Kata (Forms) ✤ Kumite (Sparring) Tuesday, November 9, 2010
  • 27. ✤ Kihon (Basics) ✤ Kata (Forms) ✤ Kumite (Sparring) ✤ Koan (Transcending) Tuesday, November 9, 2010
  • 28. http://rubykoans.com/ Tuesday, November 9, 2010
  • 29. Tuesday, November 9, 2010
  • 30. Tuesday, November 9, 2010 But Koans are a journey. A path towards greater learning. An investment. You’re learning. And we need learning. But we also need practice. Which takes us to Katas.
  • 31. max_bit.times { |i| count += word[i] } Tuesday, November 9, 2010 The concept of software Katas was coined by “Pragmatic” Dave Thomas. It came to him after he took this unreadable mess and converted it into this glimmering example of a much more
  • 32. ((max_bit+29)/30).times do |offset| x = (word >> (offset*30)) & 0x3fffffff next if x.zero? x = x - ((x >> 1) & 0x55555555) x = (x & 0x33333333) + ((x >> 2) & 0x33333333) x = (x + (x >> 4)) & 0x0f0f0f0f; x = x + (x >> 8) x = x + (x >> 16) count += x & 0x3f end Tuesday, November 9, 2010
  • 33. Tuesday, November 9, 2010 So he created this CodeKata site with a series of focused problems developers could solve. But over time, the discussion drifted from providing a series of problems to solve, to a series
  • 34. Tuesday, November 9, 2010 This led to the KataCasts site, which were a series of Screencasts released by Corey Haines and Enrique Comba (among others) which highlighted specific solutions. We saw one of those
  • 35. http://codingdojo.org/cgi-bin/wiki.pl?KataFizzBuzz Tuesday, November 9, 2010 This is the infamous FizzBuzz exercise. To get our blood flowing (and our keyboards going) I want us to run through 3 iterations of this exercise. But we’re going to modify it slightly.
  • 36. Tuesday, November 9, 2010 Katas are a great way to practice many things, because they are short, and you can do them just about anywhere. As you saw from the FizzBuzz exercise, repetition is important so that
  • 37. Tuesday, November 9, 2010 Code Retreats are full day
  • 38. Tuesday, November 9, 2010 Code Retreats are full day
  • 39. http://en.wikipedia.org/wiki/Conway%27s_Game_of_Life Tuesday, November 9, 2010
  • 40. Credits and Links Firefighters: http://www.sxc.hu/browse.phtml?f=download&id=1018822 Martial Arts: http://www.sxc.hu/browse.phtml?f=download&id=68048&redirect=photo Doctor: http://www.sxc.hu/browse.phtml?f=download&id=1314903&redirect=photo Guitar: http://www.sxc.hu/browse.phtml?f=download&id=863840&redirect=photo Cars: http://www.sxc.hu/browse.phtml?f=download&id=900749&redirect=photo Blacksmith: http://www.sxc.hu/browse.phtml?f=download&id=166615&redirect=photo Craftsman: http://www.sxc.hu/browse.phtml?f=download&id=470477&redirect=photo ShuHaRi: http://upload.wikimedia.org/wikipedia/commons/e/e2/ShuHaRi.png Kihon: http://www.sxc.hu/browse.phtml?f=download&id=1129310 Kata: http://www.flickr.com/photos/cayusa/2963773652/sizes/l/in/photostream/ Kumite: http://www.flickr.com/photos/mgoulet/3341918877/sizes/z/in/photostream/ Koan: http://www.flickr.com/photos/seandreilinger/4127197962/sizes/z/in/photostream/ Photos Links http://www.coderetreat.com/how-it-works.html http://en.wikipedia.org/wiki/Conway%27s_Game_of_Life http://geekswithblogs.net/onefloridacoder/archive/2010/08/16/setting-up-for-the-orlando-code-retreat.aspx http://coderetreat.ning.com/profiles/blogs/how-to-run-a-coderetreat http://www.alexbolboaca.ro/wordpress/articles/how-to-organize-a-code-retreat http://gojko.net/2009/02/27/thought-provoking-tdd-exercise-at-the-software-craftsmanship-conference/ http://gojko.net/2009/08/02/tdd-as-if-you-meant-it-revisited/ http://en.wikipedia.org/wiki/K%C5%8Dan http://codekata.pragprog.com/2007/01/kata_kumite_koa.html http://saraford.net/2010/01/17/coding-is-not-kata/ http://www.c2.com/cgi/wiki?ShuHaRi http://rubykoans.com/windows http://codingdojo.org/cgi-bin/wiki.pl?KataFizzBuzz Tuesday, November 9, 2010

×