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.

Ruby: Fun, Productive and Open Source

2,151 views

Published on

A very basic intro to writing a simple program in Ruby which assumes very little knowledge of programming.

Published in: Technology, News & Politics

Ruby: Fun, Productive and Open Source

  1. 1. Ruby Fun, Productive and Open-Source Eleanor McHugh @feyeleanorRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  2. 2. I am a programmerRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  3. 3. please don’t be scared!!!Ruby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  4. 4. on today’s menu:Ruby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  5. 5. on today’s menu: what is a programmer and how to become oneRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  6. 6. on today’s menu: what is a programmer and how to become one sharing ideas with a computerRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  7. 7. on today’s menu: what is a programmer and how to become one sharing ideas with a computer first steps with the Ruby languageRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  8. 8. on today’s menu: what is a programmer and how to become one sharing ideas with a computer first steps with the Ruby language building confidenceRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  9. 9. on today’s menu: what is a programmer and how to become one sharing ideas with a computer first steps with the Ruby language building confidence sharing your creations as open-sourceRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  10. 10. a word of caution:Ruby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  11. 11. a word of caution: it’s 30+ years since I first started codingRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  12. 12. a word of caution: it’s 30+ years since I first started coding and I’m a hacker, not a teacherRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  13. 13. a word of caution: it’s 30+ years since I first started coding and I’m a hacker, not a teacher in fact this is my first ever beginners’ sessionRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  14. 14. a word of caution: it’s 30+ years since I first started coding and I’m a hacker, not a teacher in fact this is my first ever beginners’ session so if I’m not making sense please stop meRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  15. 15. a word of caution: it’s 30+ years since I first started coding and I’m a hacker, not a teacher in fact this is my first ever beginners’ session so if I’m not making sense please stop me and don’t be afraid to ask questionsRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  16. 16. spot the programmerRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  17. 17. Ruby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  18. 18. Ruby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  19. 19. programmers are:Ruby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  20. 20. programmers are: curiousRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  21. 21. programmers are: curious imaginativeRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  22. 22. programmers are: curious imaginative playfulRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  23. 23. programmers are: curious imaginative playful attentiveRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  24. 24. programmers are: curious imaginative playful attentive perseveringRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  25. 25. they’re also humanRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  26. 26. Ruby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  27. 27. programmer myths:Ruby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  28. 28. programmer myths: sometimes we really are wizardsRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  29. 29. programmer myths: sometimes we really are wizards or über-cool hackersRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  30. 30. programmer myths: sometimes we really are wizards or über-cool hackers but mostly we’re maths-savvy writersRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  31. 31. programmer myths: sometimes we really are wizards or über-cool hackers but mostly we’re maths-savvy writers we build models of an alternative realityRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  32. 32. programmer myths: sometimes we really are wizards or über-cool hackers but mostly we’re maths-savvy writers we build models of an alternative reality then find words to describe these consistentlyRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  33. 33. logic + language = codeRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  34. 34. Elric sent his mind into twisting tunnels of logic, acrossendless plains of ideas, through mountains of symbolism and endless universes of alternate truths; he sent hismind out further and further and as it went he sent with it the words [...] words that few of his contemporaries would understand... - Elric of Melniboné, Michael Moorcock Ruby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  35. 35. getting startedRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  36. 36. 1984Ruby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  37. 37. Ruby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  38. 38. Ruby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  39. 39. Ruby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  40. 40. Ruby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  41. 41. Ruby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  42. 42. Ruby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  43. 43. Ruby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  44. 44. Ruby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  45. 45. 2012Ruby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  46. 46. Ruby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  47. 47. Ruby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  48. 48. Ruby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  49. 49. Ruby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  50. 50. Ruby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  51. 51. Ruby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  52. 52. Ruby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  53. 53. Ruby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  54. 54. Ruby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  55. 55. Ruby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  56. 56. Ruby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  57. 57. writer’s blockRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  58. 58. `Dont stand there chattering to yourself like that, Humpty Dumpty said, looking ather for the first time, but tell me your name and your business.`My name is Alice, but -- `Its a stupid name enough! Humpty Dumpty interrupted impatiently. `What does itmean?`must a name mean something? Alice asked doubtfully.`Of course it must, Humpty Dumpty said with a sort laugh: `my name means theshape I am -- and a good handsome shape it is, too. With a name like your, you mightbe any shape, almost. Through the Looking Glass, Lewis Carroll Ruby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  59. 59. `I dont know what you mean by "glory," Alice said.Humpty Dumpty smiled contemptuously. `Of course you dont -- till I tell you. Imeant "theres a nice knock-down argument for you!"`But "glory" doesnt mean "a nice knock-down argument," Alice objected.`When I use a word, Humpty Dumpty said in rather a scornful tone, `it means justwhat I choose it to mean -- neither more nor less.`The question is, said Alice, `whether you can make words mean so many differentthings.`The question is, said Humpty Dumpty, `which is to be master - - thats all. Through the Looking Glass, Lewis Carroll Ruby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  60. 60. Ruby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  61. 61. Ruby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  62. 62. introducing ruby:Ruby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  63. 63. introducing ruby: ruby is an interpreted languageRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  64. 64. introducing ruby: ruby is an interpreted language it can be used interactivelyRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  65. 65. introducing ruby: ruby is an interpreted language it can be used interactively or programs can be loaded from plain text filesRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  66. 66. introducing ruby: ruby is an interpreted language it can be used interactively or programs can be loaded from plain text files it deals with ‘objects’ and their interactionsRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  67. 67. introducing ruby: ruby is an interpreted language it can be used interactively or programs can be loaded from plain text files it deals with ‘objects’ and their interactions and is designed to suit human sensibilitiesRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  68. 68. the ruby dialoguesRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  69. 69. # The Greeter class class Greeter   def initialize(name)     @name = name.capitalize   end     def salute     puts "Hello #{@name}!"   end end   # Create a new object g = Greeter.new("world")   # Output "Hello World!" g.saluteRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  70. 70. Ruby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  71. 71. Ruby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  72. 72. Ruby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  73. 73. Ruby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  74. 74. Ruby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  75. 75. Ruby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  76. 76. commentaryRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  77. 77. # The Greeter class class Greeter   def initialize(name)     @name = name.capitalize   end     def salute     puts "Hello #{@name}!"   end end   # Create a new object g = Greeter.new("world")   # Output "Hello World!" g.saluteRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  78. 78. # The Greeter class class Greeter   def initialize(name)     @name = name.capitalize   end     def salute     puts "Hello #{@name}!"   end end   # Create a new object g = Greeter.new("world")   # Output "Hello World!" g.saluteRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  79. 79. # The Greeter class class Greeter   def initialize(name)     @name = name.capitalize   end     def salute     puts "Hello #{@name}!"   end end   # Create a new object g = Greeter.new("world")   # Output "Hello World!" g.saluteRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  80. 80. classificationRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  81. 81. # The Greeter class class Greeter   def initialize(name)     @name = name.capitalize   end     def salute     puts "Hello #{@name}!"   end end   # Create a new object g = Greeter.new("world")   # Output "Hello World!" g.saluteRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  82. 82. # The Greeter class class Greeter   def initialize(name)     @name = name.capitalize   end     def salute     puts "Hello #{@name}!"   end end   # Create a new object g = Greeter.new("world")   # Output "Hello World!" g.saluteRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  83. 83. # The Greeter class class Greeter   def initialize(name)     @name = name.capitalize   end     def salute     puts "Hello #{@name}!"   end end   # Create a new object g = Greeter.new("world")   # Output "Hello World!" g.saluteRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  84. 84. messagesRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  85. 85. # The Greeter class class Greeter   def initialize(name)     @name = name.capitalize   end     def salute     puts "Hello #{@name}!"   end end   # Create a new object g = Greeter.new("world")   # Output "Hello World!" g.saluteRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  86. 86. # The Greeter class class Greeter   def initialize(name)     @name = name.capitalize   end     def salute     puts "Hello #{@name}!"   end end   # Create a new object g = Greeter.new("world")   # Output "Hello World!" g.saluteRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  87. 87. # The Greeter class class Greeter   def initialize(name)     @name = name.capitalize   end     def salute     puts "Hello #{@name}!"   end end   # Create a new object g = Greeter.new("world")   # Output "Hello World!" g.saluteRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  88. 88. # The Greeter class class Greeter   def initialize(name)     @name = name.capitalize   end     def salute     puts "Hello #{@name}!"   end end   # Create a new object g = Greeter.new("world")   # Output "Hello World!" g.saluteRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  89. 89. # The Greeter class class Greeter   def initialize(name)     @name = name.capitalize   end     def salute     puts "Hello #{@name}!"   end end   # Create a new object g = Greeter.new("world")   # Output "Hello World!" g.saluteRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  90. 90. # The Greeter class class Greeter   def initialize(name)     @name = name.capitalize   end     def salute     puts "Hello #{@name}!"   end end   # Create a new object g = Greeter.new("world")   # Output "Hello World!" g.saluteRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  91. 91. # The Greeter class class Greeter   def initialize(name)     @name = name.capitalize   end     def salute     puts "Hello #{@name}!"   end end   # Create a new object g = Greeter.new("world")   # Output "Hello World!" g.saluteRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  92. 92. # The Greeter class class Greeter   def initialize(name)     @name = name.capitalize   end     def salute     puts "Hello #{@name}!"   end end   # Create a new object g = Greeter.new("world")   # Output "Hello World!" g.saluteRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  93. 93. # The Greeter class class Greeter   def initialize(name)     @name = name.capitalize   end     def salute     puts "Hello #{@name}!"   end end   # Create a new object g = Greeter.new("world")   # Output "Hello World!" g.saluteRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  94. 94. referencesRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  95. 95. # The Greeter class class Greeter   def initialize(name)     @name = name.capitalize   end     def salute     puts "Hello #{@name}!"   end end   # Create a new object g = Greeter.new("world")   # Output "Hello World!" g.saluteRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  96. 96. # The Greeter class class Greeter   def initialize(name)     @name = name.capitalize   end     def salute     puts "Hello #{@name}!"   end end   # Create a new object g = Greeter.new("world")   # Output "Hello World!" g.saluteRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  97. 97. # The Greeter class class Greeter   def initialize(name)     @name = name.capitalize   end     def salute     puts "Hello #{@name}!"   end end   # Create a new object g = Greeter.new("world")   # Output "Hello World!" g.saluteRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  98. 98. # The Greeter class class Greeter   def initialize(name)     @name = name.capitalize   end     def salute     puts "Hello #{@name}!"   end end   # Create a new object g = Greeter.new("world")   # Output "Hello World!" g.saluteRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  99. 99. # The Greeter class class Greeter   def initialize(name)     @name = name.capitalize   end     def salute     puts "Hello #{@name}!"   end end   # Create a new object g = Greeter.new("world")   # Output "Hello World!" g.saluteRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  100. 100. # The Greeter class class Greeter   def initialize(name)     @name = name.capitalize   end     def salute     puts "Hello #{@name}!"   end end   # Create a new object g = Greeter.new("world")   # Output "Hello World!" g.saluteRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  101. 101. # The Greeter class class Greeter   def initialize(name)     @name = name.capitalize   end     def salute     puts "Hello #{@name}!"   end end   # Create a new object g = Greeter.new("world")   # Output "Hello World!" g.saluteRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  102. 102. # The Greeter class class Greeter   def initialize(name)     @name = name.capitalize   end     def salute     puts "Hello #{@name}!"   end end   # Create a new object g = Greeter.new("world")   # Output "Hello World!" g.saluteRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  103. 103. # The Greeter class class Greeter   def initialize(name)     @name = name.capitalize   end     def salute     puts "Hello #{@name}!"   end end   # Create a new object g = Greeter.new("world")   # Output "Hello World!" g.saluteRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  104. 104. # The Greeter class class Greeter   def initialize(name)     @name = name.capitalize   end     def salute     puts "Hello #{@name}!"   end end   # Create a new object g = Greeter.new("world")   # Output "Hello World!" g.saluteRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  105. 105. dependenciesRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  106. 106. require open-uri class WikiPage def initialize(*name) @name = name.collect { |n| n.capitalize }.join("_") end def display puts open("http://en.wikipedia.org/wiki/#{@name}").read end end page = WikiPage.new("ada", "lovelace") page.displayRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  107. 107. require open-uri class WikiPage def initialize(*name) @name = name.collect { |n| n.capitalize }.join("_") end def display puts open("http://en.wikipedia.org/wiki/#{@name}").read end end page = WikiPage.new("ada", "lovelace") page.displayRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  108. 108. require open-uri class WikiPage def initialize(*name) @name = name.collect { |n| n.capitalize }.join("_") end def display puts open("http://en.wikipedia.org/wiki/#{@name}").read end end page = WikiPage.new("ada", "lovelace") page.displayRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  109. 109. require open-uri class WikiPage def initialize(*name) @name = name.collect { |n| n.capitalize }.join("_") end def display puts open("http://en.wikipedia.org/wiki/#{@name}").read end end page = WikiPage.new("ada", "lovelace") page.displayRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  110. 110. collectionsRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  111. 111. require open-uri class WikiPage def initialize(*name) @name = name.collect { |n| n.capitalize }.join("_") end def display puts open("http://en.wikipedia.org/wiki/#{@name}").read end end page = WikiPage.new("ada", "lovelace") page.displayRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  112. 112. require open-uri class WikiPage def initialize(*name) @name = name.collect { |n| n.capitalize }.join("_") end def display puts open("http://en.wikipedia.org/wiki/#{@name}").read end end page = WikiPage.new("ada", "lovelace") page.displayRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  113. 113. require open-uri class WikiPage def initialize(*name) @name = name.collect { |n| n.capitalize }.join("_") end def display puts open("http://en.wikipedia.org/wiki/#{@name}").read end end page = WikiPage.new("ada", "lovelace") page.displayRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  114. 114. require open-uri class WikiPage def initialize(*name) @name = name.collect { |n| n.capitalize }.join("_") end def display puts open("http://en.wikipedia.org/wiki/#{@name}").read end end page = WikiPage.new("ada", "lovelace") page.displayRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  115. 115. require open-uri class WikiPage def initialize(*name) @name = name.collect { |n| n.capitalize }.join("_") end def display puts open("http://en.wikipedia.org/wiki/#{@name}").read end end page = WikiPage.new("ada", "lovelace") page.displayRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  116. 116. require open-uri class WikiPage def initialize(*name) @name = name.collect { |n| n.capitalize }.join("_") end def display puts open("http://en.wikipedia.org/wiki/#{@name}").read end end page = WikiPage.new("ada", "lovelace") page.displayRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  117. 117. require open-uri class WikiPage def initialize(*name) @name = name.collect { |n| n.capitalize }.join("_") end def display puts open("http://en.wikipedia.org/wiki/#{@name}").read end end page = WikiPage.new("ada", "lovelace") page.displayRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  118. 118. require open-uri class WikiPage def initialize(*name) @name = name.collect { |n| n.capitalize }.join("_") end def display puts open("http://en.wikipedia.org/wiki/#{@name}").read end end page = WikiPage.new("ada", "lovelace") page.displayRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  119. 119. require open-uri class WikiPage def initialize(*name) @name = name.collect { |n| n.capitalize }.join("_") end def display puts open("http://en.wikipedia.org/wiki/#{@name}").read end end page = WikiPage.new("ada", "lovelace") page.displayRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  120. 120. require open-uri class WikiPage def initialize(*name) @name = name.collect { |n| n.capitalize }.join("_") end def display puts open("http://en.wikipedia.org/wiki/#{@name}").read end end page = WikiPage.new("ada", "lovelace") page.displayRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  121. 121. require open-uri class WikiPage def initialize(*name) @name = name.collect { |n| n.capitalize }.join("_") end def display puts open("http://en.wikipedia.org/wiki/#{@name}").read end end page = WikiPage.new("ada", "lovelace") page.displayRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  122. 122. require open-uri class WikiPage def initialize(*name) @name = name.collect { |n| n.capitalize }.join("_") end def display puts open("http://en.wikipedia.org/wiki/#{@name}").read end end page = WikiPage.new("ada", "lovelace") page.displayRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  123. 123. require open-uri class WikiPage def initialize(*name) @name = name.collect { |n| n.capitalize }.join("_") end def display puts open("http://en.wikipedia.org/wiki/#{@name}").read end end page = WikiPage.new("ada", "lovelace") page.displayRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  124. 124. require open-uri class WikiPage def initialize(*name) @name = name.collect { |n| n.capitalize }.join("_") end def display puts open("http://en.wikipedia.org/wiki/#{@name}").read end end page = WikiPage.new("ada", "lovelace") page.displayRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  125. 125. require open-uri class WikiPage def initialize(*name) @name = name.collect { |n| n.capitalize }.join("_") end def display puts open("http://en.wikipedia.org/wiki/#{@name}").read end end page = WikiPage.new("ada", "lovelace") page.displayRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  126. 126. require open-uri class WikiPage def initialize(*name) @name = name.collect { |n| n.capitalize }.join("_") end def display puts open("http://en.wikipedia.org/wiki/#{@name}").read end end page = WikiPage.new("ada", "lovelace") page.displayRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  127. 127. require open-uri class WikiPage def initialize(*name) @name = name.collect { |n| n.capitalize }.join("_") end def display puts open("http://en.wikipedia.org/wiki/#{@name}").read end end page = WikiPage.new("ada", "lovelace") page.displayRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  128. 128. require open-uri class WikiPage def initialize(*name) @name = name.collect { |n| n.capitalize }.join("_") end def display puts open("http://en.wikipedia.org/wiki/#{@name}").read end end page = WikiPage.new("ada", "lovelace") page.displayRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  129. 129. require open-uri class WikiPage def initialize(*name) @name = name.collect { |n| n.capitalize }.join("_") end def display puts open("http://en.wikipedia.org/wiki/#{@name}").read end end page = WikiPage.new("ada", "lovelace") page.displayRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  130. 130. require open-uri class WikiPage def initialize(*name) @name = name.collect { |n| n.capitalize }.join("_") end def display puts open("http://en.wikipedia.org/wiki/#{@name}").read end end page = WikiPage.new("ada", "lovelace") page.displayRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  131. 131. Ruby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  132. 132. filesRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  133. 133. class WikiPage def download open("http://en.wikipedia.org/wiki/#{@name}").read end def display puts download() end def save File.open(@name + ".html", w) do |file| file.write(download()) end end end WikiPage.new("ada", "lovelace").saveRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  134. 134. class WikiPage def download open("http://en.wikipedia.org/wiki/#{@name}").read end def display puts download() end def save File.open(@name + ".html", w) do |file| file.write(download()) end end end WikiPage.new("ada", "lovelace").saveRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  135. 135. class WikiPage def download open("http://en.wikipedia.org/wiki/#{@name}").read end def display puts download() end def save File.open(@name + ".html", w) do |file| file.write(download()) end end end WikiPage.new("ada", "lovelace").saveRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  136. 136. class WikiPage def download open("http://en.wikipedia.org/wiki/#{@name}").read end def display puts download end def save File.open(@name + ".html", w) do |file| file.write(download()) end end end WikiPage.new("ada", "lovelace").saveRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  137. 137. class WikiPage def download open("http://en.wikipedia.org/wiki/#{@name}").read end def display puts download end def save File.open(@name + ".html", w) do |file| file.write(download()) end end end WikiPage.new("ada", "lovelace").saveRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  138. 138. class WikiPage def download open("http://en.wikipedia.org/wiki/#{@name}").read end def display puts download end def save File.open(@name + ".html", w) do |file| file.write(download) end end end WikiPage.new("ada", "lovelace").saveRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  139. 139. class WikiPage def download open("http://en.wikipedia.org/wiki/#{@name}").read end def display puts download end def save File.open(@name + ".html", w) do |file| file.write(download) end end end WikiPage.new("ada", "lovelace").saveRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  140. 140. class WikiPage def download open("http://en.wikipedia.org/wiki/#{@name}").read end def display puts download end def save File.open(@name + ".html", w) do |file| file.write(download) end end end WikiPage.new("ada", "lovelace").saveRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  141. 141. class WikiPage def download open("http://en.wikipedia.org/wiki/#{@name}").read end def display puts download end def save File.open(@name + ".html", w) do |file| file.write(download) end end end WikiPage.new("ada", "lovelace").saveRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  142. 142. class WikiPage def download open("http://en.wikipedia.org/wiki/#{@name}").read end def display puts download end def save File.open(@name + ".html", w) do |file| file.write(download) end end end WikiPage.new("ada", "lovelace").saveRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  143. 143. class WikiPage def download open("http://en.wikipedia.org/wiki/#{@name}").read end def display puts download end def save File.open(@name + ".html", w) do |file| file.write(download) end end end WikiPage.new("ada", "lovelace").saveRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  144. 144. class WikiPage def download open("http://en.wikipedia.org/wiki/#{@name}").read end def display puts download end def save File.open(@name + ".html", w) do |file| file.write(download) end end end WikiPage.new("ada", "lovelace").saveRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  145. 145. class WikiPage def download open("http://en.wikipedia.org/wiki/#{@name}").read end def display puts download end def save File.open(@name + ".html", w) do |file| file.write(download) end end end WikiPage.new("ada", "lovelace").saveRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  146. 146. class WikiPage def download open("http://en.wikipedia.org/wiki/#{@name}").read end def display puts download end def save File.open(@name + ".html", w) do |file| file.write(download) end end end WikiPage.new("ada", "lovelace").saveRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  147. 147. class WikiPage def download open("http://en.wikipedia.org/wiki/#{@name}").read end def display puts download end def save File.open(@name + ".html", w) do |file| file.write(download) end end end WikiPage.new("ada", "lovelace").saveRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  148. 148. class WikiPage def download open("http://en.wikipedia.org/wiki/#{@name}").read end def display puts download end def save File.open(@name + ".html", w) do |file| file.write(download) end end end WikiPage.new("ada", "lovelace").saveRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  149. 149. class WikiPage def download open("http://en.wikipedia.org/wiki/#{@name}").read end def display puts download end def save File.open(@name + ".html", w) do |file| file.write(download) end end end WikiPage.new("ada", "lovelace").saveRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  150. 150. page = WikiPage.new("ada", "lovelace") page.display page.saveRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  151. 151. page = WikiPage.new("ada", "lovelace") page.display page.saveRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  152. 152. page = WikiPage.new("ada", "lovelace") page.display page.saveRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  153. 153. propertiesRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  154. 154. class WikiPage def initialize(*elements) self.name = *elements end def name= elements @name = elements.collect { |n| n.trim.capitalize }.join("_") end end page = WikiPage.new("ada", "lovelace") page.save page.name = "Grace", "Hopper" page.saveRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  155. 155. class WikiPage def initialize(*elements) self.name = *elements end def name= elements @name = elements.collect { |n| n.trim.capitalize }.join("_") end end page = WikiPage.new("ada", "lovelace") page.save page.name = "Grace", "Hopper" page.saveRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  156. 156. class WikiPage def initialize(*elements) self.name = *elements end def name= elements # elements should be an Array e.g: ["Ada", "Lovelace"] @name = elements.collect { |n| n.trim.capitalize }.join("_") end end page = WikiPage.new("ada", "lovelace") page.save page.name = "Grace", "Hopper" page.saveRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  157. 157. Ruby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  158. 158. Ruby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  159. 159. Ruby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  160. 160. class WikiPage def initialize(*elements) self.name = *elements end def name= elements @name = elements.collect { |n| n.trim.capitalize }.join("_") end end page = WikiPage.new("ada", "lovelace") page.save page.name = "Grace", "Hopper" page.saveRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  161. 161. class WikiPage def initialize(*elements) self.name = *elements end def name= elements @name = elements.collect { |n| n.trim.capitalize }.join("_") end end page = WikiPage.new("ada", "lovelace") page.save page.name = "Grace", "Hopper" page.saveRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  162. 162. class WikiPage def initialize(*elements) self.name = *elements end def name= elements @name = elements.collect { |n| n.trim.capitalize }.join("_") end end page = WikiPage.new("ada", "lovelace") page.save page.name = "Grace", "Hopper" page.saveRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  163. 163. class WikiPage def initialize(*elements) self.name = *elements end def name= elements @name = elements.collect { |n| n.trim.capitalize }.join("_") end end page = WikiPage.new("ada", "lovelace") page.save page.name = "Grace", "Hopper" page.saveRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  164. 164. class WikiPage def initialize(*elements) self.name = *elements end def name= elements @name = elements.collect { |n| n.trim.capitalize }.join("_") end end page = WikiPage.new("ada", "lovelace") page.save page.name = "Grace", "Hopper" page.saveRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  165. 165. class WikiPage def initialize(*elements) self.name = *elements end def name= elements @name = elements.collect { |n| n.trim.capitalize }.join("_") end end page = WikiPage.new("ada", "lovelace") page.save page.name = "Grace", "Hopper" page.saveRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  166. 166. class WikiPage def initialize(*elements) self.name = *elements end def name= elements @name = elements.collect { |n| n.trim.capitalize }.join("_") end end page = WikiPage.new("ada", "lovelace") page.save page.name = "Grace", "Hopper" page.saveRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  167. 167. class WikiPage def initialize(*elements) self.name = *elements end def name= elements @name = elements.collect { |n| n.trim.capitalize }.join("_") end end page = WikiPage.new("ada", "lovelace") page.save page.name = "Grace", "Hopper" page.saveRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  168. 168. class WikiPage def initialize(*elements) self.name = *elements end def name= elements @name = elements.collect { |n| n.trim.capitalize }.join("_") end end page = WikiPage.new("ada", "lovelace") page.save page.name = "Grace", "Hopper" page.saveRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  169. 169. class WikiPage def initialize(*elements) self.name = *elements end def name= elements @name = elements.collect { |n| n.trim.capitalize }.join("_") end end page = WikiPage.new("ada", "lovelace") page.save page.name = "Grace", "Hopper" page.saveRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  170. 170. class WikiPage def initialize(*elements) self.name = *elements end def name= elements @name = elements.collect { |n| n.trim.capitalize }.join("_") end end page = WikiPage.new("ada", "lovelace") page.save page.name = "Grace", "Hopper" page.saveRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  171. 171. Ruby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  172. 172. Ruby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  173. 173. Ruby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  174. 174. reuseRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  175. 175. class WikiPage attr_reader :root def initialize(url) @root = url end def download open("#{@root}/#{@name}").read end end page = WikiPage.new "http://en.wikipedia.org/wiki" page.name = "ada", "lovelace" page.save page.name = "Grace", "Hopper" page.saveRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  176. 176. class WikiPage attr_reader :root def initialize(url) @root = url end def download open("#{@root}/#{@name}").read end end page = WikiPage.new "http://en.wikipedia.org/wiki" page.name = "ada", "lovelace" page.save page.name = "Grace", "Hopper" page.saveRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  177. 177. class WikiPage attr_reader :root def initialize(url) @root = url end def download open("#{@root}/#{@name}").read end end page = WikiPage.new "http://en.wikipedia.org/wiki" page.name = "ada", "lovelace" page.save page.name = "Grace", "Hopper" page.saveRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  178. 178. class WikiPage attr_reader :root def initialize(url) @root = url end def download open("#{@root}/#{@name}").read end end page = WikiPage.new "http://en.wikipedia.org/wiki" page.name = "ada", "lovelace" page.save page.name = "Grace", "Hopper" page.saveRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  179. 179. class WikiPage attr_reader :root def initialize(url) @root = url end def download open("#{@root}/#{@name}").read end end page = WikiPage.new "http://en.wikipedia.org/wiki" page.name = "ada", "lovelace" page.save page.name = "Grace", "Hopper" page.saveRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  180. 180. class WikiPage attr_reader :root def initialize(url) @root = url end def download open("#{@root}/#{@name}").read end end page = WikiPage.new "http://en.wikipedia.org/wiki" page.name = "ada", "lovelace" page.save page.name = "Grace", "Hopper" page.saveRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  181. 181. class WikiPage attr_reader :root def initialize(url) @root = url end def download open("#{@root}/#{@name}").read end end page = WikiPage.new "http://en.wikipedia.org/wiki" page.name = "ada", "lovelace" page.save page.name = "Grace", "Hopper" page.saveRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  182. 182. class WikiPage attr_reader :root def initialize(url) @root = url end def download open("#{@root}/#{@name}").read end end page = WikiPage.new "http://en.wikipedia.org/wiki" page.name = "ada", "lovelace" page.save page.name = "Grace", "Hopper" page.saveRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  183. 183. class WikiPage attr_reader :root def initialize(url) @root = url end def download open("#{@root}/#{@name}").read end end page = WikiPage.new "http://en.wikipedia.org/wiki" page.name = "ada", "lovelace" page.save page.name = "Grace", "Hopper" page.saveRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  184. 184. class WikiPage attr_reader :root def initialize(url) @root = url end def download open("#{@root}/#{@name}").read end end page = WikiPage.new "http://en.wikipedia.org/wiki" page.name = "ada", "lovelace" page.save page.name = "Grace", "Hopper" page.saveRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  185. 185. class WikiPage attr_reader :root def initialize(url) @root = url end def download open("#{@root}/#{@name}").read end end page = WikiPage.new "http://en.wikipedia.org/wiki" page.name = "ada", "lovelace" page.save page.name = "Grace", "Hopper" page.saveRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  186. 186. class WikiPage attr_reader :root def initialize(url) @root = url end def download open("#{@root}/#{@name}").read end end page = WikiPage.new "http://en.wikipedia.org/wiki" page.name = "ada", "lovelace" page.save page.name = "Grace", "Hopper" page.saveRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  187. 187. class WikiPage attr_reader :root def initialize(url) @root = url end def download open("#{@root}/#{@name}").read end end page = WikiPage.new "http://en.wikipedia.org/wiki" page.name = "ada", "lovelace" page.save page.name = "Grace", "Hopper" page.saveRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  188. 188. class WikiPage attr_reader :root def initialize(url) @root = url end def download open("#{@root}/#{@name}").read end end page = WikiPage.new "http://en.wikipedia.org/wiki" page.name = "ada", "lovelace" page.save page.name = "Grace", "Hopper" page.saveRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  189. 189. class WikiPage attr_reader :root def initialize(url) @root = url end def download open("#{@root}/#{@name}").read end end page = WikiPage.new "http://en.wikipedia.org/wiki" page.name = "ada", "lovelace" page.save page.name = "Grace", "Hopper" page.saveRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  190. 190. class WikiPage attr_reader :root def initialize(url) @root = url end def download open("#{@root}/#{@name}").read end end page = WikiPage.new "http://en.wikipedia.org/wiki" page.name = "ada", "lovelace" page.save page.name = "Grace", "Hopper" page.saveRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  191. 191. Ruby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  192. 192. hackety hack:Ruby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  193. 193. hackety hack: once there was a freelance professorRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  194. 194. hackety hack: once there was a freelance professor his name was _why? the lucky stiffRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  195. 195. hackety hack: once there was a freelance professor his name was _why? the lucky stiff and he only taught by fated appointmentRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  196. 196. hackety hack: once there was a freelance professor his name was _why? the lucky stiff and he only taught by fated appointment he wrote hackety hack for little codersRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  197. 197. hackety hack: once there was a freelance professor his name was _why? the lucky stiff and he only taught by fated appointment he wrote hackety hack for little coders and created shoes along the wayRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  198. 198. shoes:Ruby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  199. 199. shoes: a self-contained GUI toolkit for RubyRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  200. 200. shoes: a self-contained GUI toolkit for Ruby which works on mac, linux and windowsRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  201. 201. shoes: a self-contained GUI toolkit for Ruby which works on mac, linux and windows designed for simple desktop applicationsRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  202. 202. shoes: a self-contained GUI toolkit for Ruby which works on mac, linux and windows designed for simple desktop applications not a web app so no html, css or javascriptRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  203. 203. shoes: a self-contained GUI toolkit for Ruby which works on mac, linux and windows designed for simple desktop applications not a web app so no html, css or javascript but uses similar elements and conceptsRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  204. 204. Ruby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  205. 205. a shoes appRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  206. 206. Shoes.app do para "Hello, World!" endRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  207. 207. Shoes.app do para "Hello, World!" endRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  208. 208. Ruby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  209. 209. Ruby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  210. 210. Shoes.app :title => "Mediawiki Article Scraper" do background maroon para "Scrape Mediawiki", :align => "center", :size => "xx-large" endRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  211. 211. Shoes.app :title => "Mediawiki Article Scraper" do background maroon para "Scrape Mediawiki", :align => "center", :size => "xx-large" endRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  212. 212. Ruby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  213. 213. Ruby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  214. 214. Shoes.app :title => "Mediawiki Article Scraper" do background maroon para "Scrape Mediawiki", :align => "center", :size => "xx-large" endRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  215. 215. Shoes.app :title => "Mediawiki Article Scraper" do background maroon para "Scrape Mediawiki", :align => "center", :size => "xx-large" endRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  216. 216. Shoes.app :title => "Mediawiki Article Scraper" do background maroon para "Scrape Mediawiki", :align => "center", :size => "xx-large" endRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  217. 217. Shoes.app :title => "Mediawiki Article Scraper" do background maroon para "Scrape Mediawiki", :align => "center", :size => "xx-large" endRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  218. 218. Ruby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  219. 219. Shoes.app :title => "Mediawiki Article Scraper" do background maroon para "Scrape Mediawiki", :align => "center", :size => "xx-large" stack do flow :margin => 10 do caption "Subject:" @article = edit_line :width => -200 end end endRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  220. 220. Shoes.app :title => "Mediawiki Article Scraper" do background maroon para "Scrape Mediawiki", :align => "center", :size => "xx-large" stack do flow :margin => 10 do caption "Subject:" @article = edit_line :width => -200 end end endRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  221. 221. Shoes.app :title => "Mediawiki Article Scraper" do background maroon para "Scrape Mediawiki", :align => "center", :size => "xx-large" stack do flow :margin => 10 do caption "Subject:" @article = edit_line :width => -200 end end endRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  222. 222. Shoes.app :title => "Mediawiki Article Scraper" do background maroon para "Scrape Mediawiki", :align => "center", :size => "xx-large" stack do flow :margin => 10 do caption "Subject:" @article = edit_line :width => -200 end end endRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  223. 223. Shoes.app :title => "Mediawiki Article Scraper" do background maroon para "Scrape Mediawiki", :align => "center", :size => "xx-large" stack do flow :margin => 10 do caption "Subject:" @article = edit_line :width => -200 end end endRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  224. 224. Shoes.app :title => "Mediawiki Article Scraper" do background maroon para "Scrape Mediawiki", :align => "center", :size => "xx-large" stack do flow :margin => 10 do caption "Subject:" @article = edit_line :width => -200 end end endRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  225. 225. Shoes.app :title => "Mediawiki Article Scraper" do background maroon para "Scrape Mediawiki", :align => "center", :size => "xx-large" stack do flow :margin => 10 do caption "Subject:" @article = edit_line :width => -200 end end endRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  226. 226. Ruby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  227. 227. Shoes.app :title => "Mediawiki Article Scraper" do background maroon para "Scrape Mediawiki", :align => "center", :size => "xx-large" stack do flow :margin => 10 do caption "Subject:" @article = edit_line :width => -200 button "Download", :width => 120 do end end end endRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  228. 228. Shoes.app :title => "Mediawiki Article Scraper" do background maroon para "Scrape Mediawiki", :align => "center", :size => "xx-large" stack do flow :margin => 10 do caption "Subject:" @article = edit_line :width => -200 button "Download", :width => 120 do end end end endRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  229. 229. Ruby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  230. 230. Ruby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  231. 231. Shoes.app :title => "Mediawiki Article Scraper" do @wiki = WikiPage.new "http://en.wikipedia.org/wiki" background maroon para "Scrape Mediawiki", :align => "center", :size => "xx-large" stack do flow :margin => 10 do caption "Subject:" @article = edit_line :width => -200 button "Download", :width => 120 do @wiki.save end end end endRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  232. 232. Shoes.app :title => "Mediawiki Article Scraper" do @wiki = WikiPage.new "http://en.wikipedia.org/wiki" background maroon para "Scrape Mediawiki", :align => "center", :size => "xx-large" stack do flow :margin => 10 do caption "Subject:" @article = edit_line :width => -200 button "Download", :width => 120 do @wiki.save end end end endRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  233. 233. Ruby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  234. 234. Ruby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  235. 235. Ruby: Fun, Productive and Open-Source http://slides.games-with-brains.net/
  236. 236. Covers Ruby 1.9.1 David A. Black MANNING Practical Ruby Projects Ideas for the Eclectic Programmer Learn advanced programming techniques and explore Ruby’s full potential through a varied series of exciting projects Topher CyllRuby: Fun, Productive and Open-Source http://slides.games-with-brains.net/

×