Top Banner
Teaching Ruby Helping Jake and Jane learn to program Bruce Scharlau
49

Teaching Ruby

Feb 23, 2016

Download

Documents

Toni

Teaching Ruby. Helping 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. - PowerPoint PPT Presentation
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Teaching Ruby

Teaching RubyHelping Jake and Jane learn to program

Bruce Scharlau

Page 2: Teaching Ruby

Jake and Jane want to learn to program computers

Page 3: Teaching Ruby

Jake has a game in mind, Jane wants the basics

Page 4: Teaching Ruby

Is it better to teach

programming wrapped around a

game, or not?

Page 5: Teaching Ruby

Games need to focus on the basics

Page 6: Teaching Ruby

Teach the basics using game concepts to aid learning

Page 7: Teaching Ruby

Teach the basics with emphasis on games

Page 8: Teaching Ruby

Jake wants to realize his idea

Page 9: Teaching Ruby

Jake has an idea for web based game

Page 10: Teaching Ruby

Scratch and Greenfoot don’t help

http://www.greenfoot.org/

http://scratch.mit.edu/

Page 11: Teaching Ruby

RailsBridge points the way

http://railsbridge.org/

Page 12: Teaching Ruby

Focusing on the game will motivate him

Page 13: Teaching Ruby

Build up Jake’s learning based on game needs

Page 14: Teaching Ruby

Learn what’s needed as a

problem solving skill

Page 15: Teaching Ruby

See each step in context of the game

Page 16: Teaching Ruby

Use game features to guide learning

Page 17: Teaching Ruby

Shoes is lightweight and easy to start

http://github.com/shoes/shoes

Page 18: Teaching Ruby

Shoes is not always easy to follow

Page 19: Teaching Ruby

What if we teach

programming concepts with

game examples?

Page 20: Teaching Ruby

Jane wants to learn to program

Page 21: Teaching Ruby

The Teaching Children site helps

http://teachingkids.railsbridge.org/

Page 22: Teaching Ruby

Chris Pine’s ‘learn to program’ is useful

http://pine.fm/LearnToProgram/

Page 23: Teaching Ruby

Hello World! Is great, but python based

http://www.manning.com/sande/

Page 24: Teaching Ruby

Jane is interested in ‘coding’

Page 25: Teaching Ruby

Jane wants to master the concepts

Page 26: Teaching Ruby

Jane wants the general CS degree

Page 27: Teaching Ruby

Jane has no specific plans for her need

Page 28: Teaching Ruby

Jane can be guided by general concepts

Page 29: Teaching Ruby

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

Page 30: Teaching Ruby

Most ruby ‘learning’ books assume programming knowledge

These are not the books you’re looking for…

Page 31: Teaching Ruby

Jake and Jane need process to be more fun

Page 32: Teaching Ruby

We need a compromise between the two

Page 33: Teaching Ruby

Maybe we need ‘hello world’ in ruby and ‘redfoot’ for ruby objects

http://www.greenfoot.org/

Page 34: Teaching Ruby

Jake’s fixed idea is useful for focus

Page 35: Teaching Ruby

Games provide program interaction

Page 36: Teaching Ruby

Console apps cause problems but are needed for interaction

Page 37: Teaching Ruby

Console apps are also ugly

Page 38: Teaching Ruby

Shoes and similar GUI tools help, but can be challenging for beginners

http://limelight.8thlight.com/ http://github.com/shoes/shoes

Page 39: Teaching Ruby

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

Page 40: Teaching Ruby

Games provide the ’x’ to do ‘y’ aspect

Page 41: Teaching Ruby

Games force need and curiosity helps

Page 42: Teaching Ruby

Games also introduce logic and flow

Page 43: Teaching Ruby

Games also bring in visual aspects, which might not be needed

Page 44: Teaching Ruby

Is is better to have a

‘reason’ for learning, or just learn ‘games’?

Page 45: Teaching Ruby

Build up Jake’s learning based on game needs

Page 46: Teaching Ruby

Teach Jane programming using games seems better

Page 47: Teaching Ruby

Use games to realise their potential

Page 48: Teaching Ruby

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

Page 49: Teaching Ruby

Learn the basics wrapped around games

Bruce ScharlauUniversity of [email protected]

http://www.csd.abdn.ac.uk/~bscharla@scharlau

http://github.com/scharlau/RubyBasics/