kids, ruby, run! - introduction of the smalruby and the ruby programming shounendan -
DESCRIPTION
This presentationTRANSCRIPT
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
[email protected]@nobyuki本多 展幸
Kouji TakaoA leader of the Ruby ProgrammingShounendan, CRuby commiter
[email protected]@takaokouji高尾 宏治
Kouji TakaoA leader of the Ruby ProgrammingShounendan, CRuby commiter
[email protected]@takaokouji高尾 宏治
Nobuyuki HondaA chief education officer ofthe Ruby Programming Shounendan
[email protected]@nobyuki本多 展幸
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
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