Upload
elle-fitton
View
219
Download
3
Tags:
Embed Size (px)
Citation preview
Teaching RubyHelping Jake and Jane learn to program
Bruce Scharlau
Jake and Jane want to learn to program computers
Jake has a game in mind, Jane wants the basics
Is it better to teach
programming wrapped around a
game, or not?
Games need to focus on the basics
Teach the basics using game concepts to aid learning
Teach the basics with emphasis on games
Jake wants to realize his idea
Jake has an idea for web based game
Scratch and Greenfoot don’t help
http://www.greenfoot.org/
http://scratch.mit.edu/
Focusing on the game will motivate him
Build up Jake’s learning based on game needs
Learn what’s needed as a
problem solving skill
See each step in context of the game
Use game features to guide learning
Shoes is not always easy to follow
What if we teach
programming concepts with
game examples?
Jane wants to learn to program
The Teaching Children site helps
http://teachingkids.railsbridge.org/
Chris Pine’s ‘learn to program’ is useful
http://pine.fm/LearnToProgram/
Jane is interested in ‘coding’
Jane wants to master the concepts
Jane wants the general CS degree
Jane has no specific plans for her need
Jane can be guided by general concepts
The number of ruby books grows
Others being done as we speak …
http://book.rubylearning.org/
http://www.pragprog.com/titles/ruby3/programming-ruby-1-9
http://oreilly.com/catalog/9780596529864
Most ruby ‘learning’ books assume programming knowledge
These are not the books you’re looking for…
Jake and Jane need process to be more fun
We need a compromise between the two
Maybe we need ‘hello world’ in ruby and ‘redfoot’ for ruby objects
http://www.greenfoot.org/
Jake’s fixed idea is useful for focus
Games provide program interaction
Console apps cause problems but are needed for interaction
Console apps are also ugly
Shoes and similar GUI tools help, but can be challenging for beginners
http://limelight.8thlight.com/ http://github.com/shoes/shoes
Plenty of effort underway to provide beginner learning experiences
http://teachingkids.railsbridge.org/ http://testfirst.org/
http://github.com/ultrasaurus/dusty-attic using Sinatra for Zork type game
http://github.com/ultrasaurus Sarah Allen has a lot of useful examples and ideas
Games provide the ’x’ to do ‘y’ aspect
Games force need and curiosity helps
Games also introduce logic and flow
Games also bring in visual aspects, which might not be needed
Is is better to have a
‘reason’ for learning, or just learn ‘games’?
Build up Jake’s learning based on game needs
Teach Jane programming using games seems better
Use games to realise their potential
All images provided by Niall Benvie at http://www.ImagesFromTheEdge.com http://niallbenvie.churchilljohnson.co.uk/blog/
http://www.ilcp.com/index.php?cid=usrs&port=nbenvie
Learn the basics wrapped around games
Bruce ScharlauUniversity of [email protected]
http://www.csd.abdn.ac.uk/~bscharla@scharlau
http://github.com/scharlau/RubyBasics/