Kids, Ruby, Run! - Introduction of the Smalruby and the Ruby Programming Shounendan -

Preview:

DESCRIPTION

This presentation

Citation preview

Kids,Ruby,Fun!

Introduction of the

Smalruby and the Ruby

Programming

Shounendan

Kouji Takao and Nobuyuki Honda,The Ruby Programming Shounendan,RubyKaigi 2014, 09.19.2014

Nobuyuki HondaA chief education officer ofthe Ruby Programming shounendan

nobyuki@smalruby.jp@nobyuki本多 展幸

Kouji TakaoA leader of the Ruby ProgrammingShounendan, CRuby commiter

kouji@smalruby.jp@takaokouji高尾 宏治

Kouji TakaoA leader of the Ruby ProgrammingShounendan, CRuby commiter

kouji@smalruby.jp@takaokouji高尾 宏治

Nobuyuki HondaA chief education officer ofthe Ruby Programming Shounendan

nobyuki@smalruby.jp@nobyuki本多 展幸

Kouji TakaoA leader of the Ruby ProgrammingShounendan, CRuby commiter

kouji@smalruby.jp@takaokouji高尾 宏治

Nobuyuki HondaA chief education officer ofthe Ruby Programming shounendan

nobyuki@smalruby.jp@nobyuki本多 展幸

Sponsored by

NaCl

NaCl is

SIer

NaCl has

30Rubyists

NaCl has

6Commiters

Pleasecome tovisit out

NaCl♪

Kids,Ruby,Fun!

Introduction of the

Smalruby and the Ruby

Programming

Shounendan

Kouji Takao and Nobuyuki Honda,The Ruby Programming Shounendan,RubyKaigi 2014, 09.19.2014

The RubyProgramming ShounendanRuby プログラミング少

年団

Ruby programming event for kidsand parents1 日 Ruby プログラミング体験 in 松江毎月第3日曜日

Introduce Ruby,Once a month

The Ruby Programming ShounendanRuby プログラミング少年団

The Boy & Girl Scouts forRuby programming

Ruby を対象としたスポーツ少年団

Team

チーム

Coach

コーチContest

大会

Programming education

プログラミング教育

U.K. Compulsory education

義務教育

Overseas countries 海外の状況

U.S.20,000 Teachers

etc…

Compulsory educationプログラミングが必須化 / 中学校 / 2012

年~

Japan日本の状況

松江市

全市立中で Ruby 授業16 年度から人材育成と IT 振興へ

2014 年 9 月 4 日付の山陰中央新報より

1 Computer / 1 Person生徒 1 人に 1 台のコンピュータ / ~ 2020

Japan日本の状況

Japan日本の状況

PEG

TENTO

Life is Tech!

by MIT Media Lab

http://vimeo.com/65583694

A Programmer’s

Best Friend

Ruby is

and

Kids

EnglishKeyboard

But Japanese kids…

Smalrubyスモウルビー

Demo

Visual editor・ Rails・ Blockly

RuntimeWindows : DXRuby

Mac,Linux : dxruby_sdl, Ruby/SDL

Instruction Block

Ruby

http://code.google.com/p/blockly/

Blockly.Blocks['motion_move'] = { init: function() { this.setColour(208); this.interpolateMsg('%1 歩動かす ', ['STEP', ['Number'], Blockly.ALIGN_RIGHT], Blockly.ALIGN_RIGHT); this.setInputsInline(true); this.setPreviousStatement(true); this.setNextStatement(true); }};

Define Instruction Block

/app/assets/javascripts/blocks/motion.js.coffee.erb( 歩動かす =

move)

Blockly.Ruby['motion_move'] =function(block) { var arg = Blockly.Ruby.valueToCode(this, 'STEP', Blockly.Ruby.ORDER_NONE); return 'move(' + arg + ')';};

Generate Ruby from Block

/app/assets/javascripts/blocks/motion.js.coffee.erb

Kids want to

challenge!

( 歩動かす =

move)

Instruction Block

Ruby

“Blockly’s XML”

Ruby

( 歩動かす =

move)

class MotionMove < CharacterMethodCall blocknize '^\s*' + CHAR_RE + 'move\((.+)\)\s*$', statement: true, inline: true

def self.process_match_data(md, context) md2 = regexp.match(md[type]) add_character_method_call_block( context, md2[1], new, STEP: md2[2]) true endend

Translate Block from Ruby

http://mashable.com/2014/05/20/surface-pro-3-macbook-air-compared/

Programming Creativity and

Logical thinking

We think…

Emacs icon : http://ochiailab.blogspot.jp/2013/04/powerlineelemacs.htmlVim Icon : http://www.vim.org/index.php

Sublime Text icon : http://blog.livedoor.jp/nonprofessional/archives/1004031653.html

ConclusionThe Ruby ProshouProgramming educationSmalruby

まとめプログラミング少年団

プログラミング教育スモウルビー

Welcome

Developers,WorkshopOwners

A Programmer’s

Best Friend

Ruby is

and

Kids

Q & AContact us:

@smalrubycontact@smalruby.jp

fb:Ruby プログラミング少年団

Recommended