Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Smalruby - The neat thing to connect Rubyists and Scratchers -

153 views

Published on

The Smalruby is a 2D game development library that aims to be compatible with Scratch (Scratch is most famous visual programming language: https://scratch.mit.edu/).

Reacently, programming education for kids is expanding rapidly and Scratch is ususally a first-contact programming language for them. Some kids, good Scratchers, try to learn a text-based programming languege.

Smalruby helps to make Scratcher Rubyist!

This talk includes the following topics:

The recent situation of programming education for kids.
Smalruby's features.
Smalruby inside.

Published in: Education
  • Be the first to comment

  • Be the first to like this

Smalruby - The neat thing to connect Rubyists and Scratchers -

  1. 1. Smalruby Speakers: Kouji Takao, Nobuyuki Honda 2017.09.20 15:50 - 16:30, Dahlia #rubykaigiB, RubyKaigi 2017 at International Conference Center Hiroshima, Hiroshima, Japan
  2. 2. Speakers: Kouji Takao 2 / 48
  3. 3. Speakers: Nobuyuki Honda 3 / 48
  4. 4. Ruby Programming Shounendan ● Promoting the joy of programming to many kids. 一人でも多くの青少年にプログラミングの喜びを! ● Building internet safety awareness for kids through programming! プログラミングを通じて青少年とネット社会との関わり方 を考える組織を地域社会の中に! 4 / 48
  5. 5. Matsue City, Shimane http://en.wikipedia.org/wiki/File:Japan_location_map_with_side_map_of_the_Ryukyu_Islands.svg : Maximilian Dörrbecker (Chumwa) CC-BY-SA 3.0CC by SA Matz-e 5 / 48
  6. 6. Workshop ●Trial: Instroducing Ruby for kids and parents ●Dojo: Computer programming clubs (like CoderDojo) 6 / 48
  7. 7. Development ●Materials Textbook, Worksheet, etc. ●Tools Smalruby: Visual programming environment Smalrubot: Robot controlled by smalruby 7 / 48
  8. 8. Agenda ●Programning Education in Japan ●"Scratch" ●Smalruby 8 / 48
  9. 9. Programming Education in Japan 9 / 48
  10. 10. Books ●Hello Ruby ●Manga ●For non-tech parent 10 / 48
  11. 11. TV Show: "Why! Programming" 11 / 48
  12. 12. CoderDojo ●Programming club for young person aged 7 ‒ 17 ●World wide 1,250 Dojo ●Over 93 Dojo in Japan 12 / 48
  13. 13. Compulsory Education:義務教育 ●2012: For ages 13-15 ●2020: For ages 6 - 12 13 / 48
  14. 14. Background ● Fourth Industrial Revolution 第4次産業革命 IoT, Big Data, AI, etc. ●Computational Thinking for elementary school in Japan プログラミング的思考 14 / 48
  15. 15. Computational Thinking for elementary school in Japan ●Ability to think logically the following three things to realize the series of activities that you intend 自分が意図する一連の活動を実現するために次の 3つのことを論理的に考えていく力 15 / 48
  16. 16. Computational Thinking for elementary school in Japan 1. What kind of movement combination is necessary どのような動きの組合せが必要か 16 / 48
  17. 17. Computational Thinking for elementary school in Japan 2. How to combine symbols corresponding to each movement 一つ一つの動きに対応した記号を、どのように 組み合わせたらいいのか 17 / 48
  18. 18. Computational Thinking for elementary school in Japan 3. How can we improve the combination of symbols to get closer to the intended activities 記号の組合せをどのように改善していけば、よ り意図した活動に近づくのか 18 / 48
  19. 19. Origin of Computational Thinking for elementary school in Japan ●Jeannette M. Wing, Computational Thinking, Communications of the ACM, Vol.49, No.3, pp.33-35, Mar. 2006 https://www.cs.cmu.edu/ 15110-s13/Wing06-ct.pdf ●翻訳中島秀之, 計算論的思考, 情報処理 Vol.56 No.6 June 2015 https://www.cs.cmu.edu/afs/cs/usr/wing/www/ct-japanese.pdf 19 / 48
  20. 20. "Scratch" 20 / 48
  21. 21. "Scratch" ●Visual Programming Environment Programming Language, Script Editor Paint/Draw Editor, Sound Editor ●Web Browser Application (Flash) ●SNS (Forum) ●Remix (like GitHub's Fork) 21 / 48
  22. 22. "Scratch" ●Over 20,000,000 users world wide ●Over 200,000 users in Japan ●Used by the majority of educational organizations in Japan 22 / 48
  23. 23. 23
  24. 24. 日本語 English 24
  25. 25. 日本語 English 25
  26. 26. 日本語 English 26
  27. 27. 日本語 English 27
  28. 28. 日本語English 28
  29. 29. 日本語 English 29
  30. 30. Super Brave Bros 2.0 : スーパー勇者ブラザーズ2.0 30 / 48https://scratch.mit.edu/projects/47142062/
  31. 31. Smalruby 31 / 48
  32. 32. Motivation Scratch on Ruby World 32 / 48
  33. 33. Motivation 20,000,000 Scratchers ↓ Rubyists 33 / 48
  34. 34. Smalruby ●Scratch's API for Ruby Scratch: Ruby: move(10) 34 / 48
  35. 35. forever do turn_cw(15) end 日本語 English 35
  36. 36. if (Time.now.sec % 3) == 0 say(message: "Fizz") else say(message: Time.now.sec) end 日本語 English 36
  37. 37. 日本語 English @v = 15 until y < 0 y += @v @v += -1 await end 37
  38. 38. 日本語 English @v = 15 until touching_color?( 0x2E, 0xFE, 0x2E) y += @v @v += -1 await end 38
  39. 39. English def sprite1.jump(v0) @v = v0 until touching_color?( 0x2E, 0xFE, 0x2E) y += @v @v += -1 await end end 39
  40. 40. 日本語 English sprite1.when( :receive, "Hey Cat1") do jump(15) broadcast("Hey Cat2") end 40
  41. 41. Architecture Smalruby:: Character Stage < Character EventHandler World Variables: characters, stages, event_handlers Main Loop 41 / 48
  42. 42. DXRuby / dxruby_sdl ●DXRuby (Windows) Game library on Windows DirectX for beginers http://dxruby.osdn.jp/ ●dxruby_sdl (Mac, Linux) DXRuby API on SDL/Ruby https://github.com/smalruby/dxruby_sdl 42 / 48
  43. 43. Ruby "Super Brave Bros 2.0" 43 / 48
  44. 44. 20,000,000 _ Scratchers ≒ Rubyists (?) 44 / 48
  45. 45. Conclusion ●Programning Education in Japan Books, TV Show CoderDojo: 93 Dojo Compulsory Education: For ages 6-12 & 13-15 ●"Scratch Defact standard for programming education ●Smalruby Scratch's API for Ruby Scratcher Rubyist 45 / 48
  46. 46. Ruby Programming Shounendan ● Promoting the joy of programming to many kids. 一人でも多くの青少年にプログラミングの喜びを! ● Building internet safety awareness for kids through programming! プログラミングを通じて青少年とネット社会との関わり方 を考える組織を地域社会の中に! 46 / 48
  47. 47. Welcome Developers ●GitHub: smalruby/smalruby 47 / 48
  48. 48. Thanks! Q&A

×