39
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

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

  • Upload
    -

  • View
    441

  • Download
    3

Embed Size (px)

DESCRIPTION

This presentation

Citation preview

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

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

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

Nobuyuki HondaA chief education officer ofthe Ruby Programming shounendan

[email protected]@nobyuki本多 展幸

Kouji TakaoA leader of the Ruby ProgrammingShounendan, CRuby commiter

[email protected]@takaokouji高尾 宏治

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

Kouji TakaoA leader of the Ruby ProgrammingShounendan, CRuby commiter

[email protected]@takaokouji高尾 宏治

Nobuyuki HondaA chief education officer ofthe Ruby Programming Shounendan

[email protected]@nobyuki本多 展幸

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

Kouji TakaoA leader of the Ruby ProgrammingShounendan, CRuby commiter

[email protected]@takaokouji高尾 宏治

Nobuyuki HondaA chief education officer ofthe Ruby Programming shounendan

[email protected]@nobyuki本多 展幸

Sponsored by

NaCl

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

NaCl is

SIer

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

NaCl has

30Rubyists

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

NaCl has

6Commiters

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

Pleasecome tovisit out

NaCl♪

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

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

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

The RubyProgramming ShounendanRuby プログラミング少

年団

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

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

Introduce Ruby,Once a month

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

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

The Boy & Girl Scouts forRuby programming

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

Team

チーム

Coach

コーチContest

大会

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

Programming education

プログラミング教育

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

U.K. Compulsory education

義務教育

Overseas countries 海外の状況

U.S.20,000 Teachers

etc…

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

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

年~

Japan日本の状況

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

松江市

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

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

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

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

Japan日本の状況

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

Japan日本の状況

PEG

TENTO

Life is Tech!

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

by MIT Media Lab

http://vimeo.com/65583694

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

A Programmer’s

Best Friend

Ruby is

and

Kids

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

EnglishKeyboard

But Japanese kids…

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

Smalrubyスモウルビー

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

Demo

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

Visual editor・ Rails・ Blockly

RuntimeWindows : DXRuby

Mac,Linux : dxruby_sdl, Ruby/SDL

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

Instruction Block

Ruby

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

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

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

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)

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

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

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

Kids want to

challenge!

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

( 歩動かす =

move)

Instruction Block

Ruby

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

“Blockly’s XML”

Ruby

( 歩動かす =

move)

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

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

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

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

Programming Creativity and

Logical thinking

We think…

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

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

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

ConclusionThe Ruby ProshouProgramming educationSmalruby

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

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

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

Welcome

Developers,WorkshopOwners

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

A Programmer’s

Best Friend

Ruby is

and

Kids

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

Q & AContact us:

@[email protected]

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

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