Hi Karel, Thank you for your kindness. We can learn Ruby/Shoes programming with your sheep. :-D
http://rubylearning.com/blog/2009/01/12/have-fun-with-ruby-and-shoes/ Best regards, ashbb On Thu, Dec 18, 2008 at 8:19 AM, Karel Minařík <[email protected]>wrote: > On 17.12.2008, at 17:29, Satoshi Asakawa wrote: > >> Would you mind if I use your cool 'dog hunts sheep' game as the next >> course exercise? >> > > Of course not! Feel free to use whatever you need from the code or the > article. > > On 17.12.2008, at 18:38, François Vaux wrote: > >> However, I'd like to know if you presented that to students, and if >> yes, how it was received. >> > > Quite well, as you can imagine, being it a game :) I was torturing them > with abstract explanation of OOP for one lecture (see > http://github.com/karmi/sheep_in_your_shoes/tree/master/animals-oriented-on-objects.rb). > These are humanities, not computer science students, so they were interested > in the concept of OOP and the context, but not so much in the code itself. > Of course, when I showed how you can generate 100 sheep easily with a `sheep > = []; 1.upto 100; sheep << Sheep.new; end`, they become more interested. > Games are probably prime example why OOP matters, because you really need > "smart objects" and cannot hack everything with procedural code: cf. > "armies", "villages", etc. in games like Age of Empires. Then one student > stated: "OK, now I see why the dog is there". So I knew I'm into some Shoes > business for sure. > > In next lecture I brought the game and slowly walked thru the stages, > starting from the bundled example, explaining what we're doing and why. They > even forced me to export relevant steps from Git repo so they can run > different stages of the game on their machines and mess it up a little bit. > Seeing the excitement, I began to be quite sure that this could benefit > other teachers/students as well, and found a day to polish the codebase and > write the article. > > I think Shoes is very well suited to be the best platform for teaching > programming basics. Partly thanks to it's playful nature, but more so > because it brings direct, instant satisfaction. Combined with Ruby (which I > see as best *language* for teaching programming) it's really a powerful > combination. > > Thanks everybody for the kind words! > > Best, > > Karel
