Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Passos para se tornar um programador Ruby

Passos para se tornar um programador Ruby

412292ca8d206e602f2c6331b5838ad3?s=128

Rubens Stulzer

November 04, 2015
Tweet

Transcript

  1. None
  2. PASSOS PARA SE TORNAR UM PROGRAMADOR RUBY

  3. RUBENS STULZER Full Stack Rails Developer ~ UX Designer @RubensStulzer

    stulzer
  4. None
  5. LET’S TALK ABOUT RUBY

  6. None
  7. RUBY

  8. None
  9. HUB

  10. None
  11. RUB

  12. None
  13. RUBY

  14. None
  15. PASSOS PARA SE TORNAR UM PROGRAMADOR RUBY LEARN ENGLISH

  16. PASSOS PARA SE TORNAR UM PROGRAMADOR RUBY LEARN ENGLISH ▸

    There is no excuses
  17. PASSOS PARA SE TORNAR UM PROGRAMADOR RUBY LEARN ENGLISH ▸

    There is no excuses ▸ Read, write and listen at least
  18. PASSOS PARA SE TORNAR UM PROGRAMADOR RUBY LEARN ENGLISH ▸

    There is no excuses ▸ Read, write and listen at least ▸ If it is possible learn how to speak
  19. PASSOS PARA SE TORNAR UM PROGRAMADOR RUBY HISTORY

  20. PASSOS PARA SE TORNAR UM PROGRAMADOR RUBY HISTORY ▸ Ruby

    was created by a Japanese, named Yukihiro Matsumoto
  21. PASSOS PARA SE TORNAR UM PROGRAMADOR RUBY HISTORY ▸ Ruby

    was created by a Japanese, named Yukihiro Matsumoto ▸ AKA: "Matz"
  22. PASSOS PARA SE TORNAR UM PROGRAMADOR RUBY HISTORY ▸ Ruby

    was created by a Japanese, named Yukihiro Matsumoto ▸ AKA: "Matz" ▸ First release in 1995
  23. PASSOS PARA SE TORNAR UM PROGRAMADOR RUBY HISTORY ▸ Ruby

    was created by a Japanese, named Yukihiro Matsumoto ▸ AKA: "Matz" ▸ First release in 1995 ▸ Ruby is relatively old, officially it is 20 years old
  24. PASSOS PARA SE TORNAR UM PROGRAMADOR RUBY HISTORY ▸ Ruby

    was created by a Japanese, named Yukihiro Matsumoto ▸ AKA: "Matz" ▸ First release in 1995 ▸ Ruby is relatively old, officially it is 20 years old ▸ The main reason, was that Matz always wanted to work with a truly object oriented language
  25. PASSOS PARA SE TORNAR UM PROGRAMADOR RUBY HISTORY

  26. PASSOS PARA SE TORNAR UM PROGRAMADOR RUBY HISTORY ▸ Ruby

    was an underground programming language until mid 2000’s
  27. PASSOS PARA SE TORNAR UM PROGRAMADOR RUBY HISTORY ▸ Ruby

    was an underground programming language until mid 2000’s ▸ The milestone for Ruby popularity was the web framework Ruby on Rails
  28. PASSOS PARA SE TORNAR UM PROGRAMADOR RUBY HISTORY ▸ Ruby

    was an underground programming language until mid 2000’s ▸ The milestone for Ruby popularity was the web framework Ruby on Rails ▸ So, until 2005 almost nobody was coding in Ruby
  29. TOPICS - WHAT A GOOD RUBY PROGRAMMER SHOULD KNOW PASSOS

    PARA SE TORNAR UM PROGRAMADOR RUBY
  30. TOPICS - WHAT A GOOD RUBY PROGRAMMER SHOULD KNOW ▸

    Methodologies PASSOS PARA SE TORNAR UM PROGRAMADOR RUBY
  31. TOPICS - WHAT A GOOD RUBY PROGRAMMER SHOULD KNOW ▸

    Methodologies ▸ The Environment PASSOS PARA SE TORNAR UM PROGRAMADOR RUBY
  32. TOPICS - WHAT A GOOD RUBY PROGRAMMER SHOULD KNOW ▸

    Methodologies ▸ The Environment ▸ Best Practices PASSOS PARA SE TORNAR UM PROGRAMADOR RUBY
  33. TOPICS - WHAT A GOOD RUBY PROGRAMMER SHOULD KNOW ▸

    Methodologies ▸ The Environment ▸ Best Practices ▸ Tools PASSOS PARA SE TORNAR UM PROGRAMADOR RUBY
  34. TOPICS - WHAT A GOOD RUBY PROGRAMMER SHOULD KNOW ▸

    Methodologies ▸ The Environment ▸ Best Practices ▸ Tools ▸ Testing PASSOS PARA SE TORNAR UM PROGRAMADOR RUBY
  35. TOPICS - WHAT A GOOD RUBY PROGRAMMER SHOULD KNOW ▸

    Methodologies ▸ The Environment ▸ Best Practices ▸ Tools ▸ Testing ▸ Databases, who cares? PASSOS PARA SE TORNAR UM PROGRAMADOR RUBY
  36. TOPICS - WHAT A GOOD RUBY PROGRAMMER SHOULD KNOW ▸

    Methodologies ▸ The Environment ▸ Best Practices ▸ Tools ▸ Testing ▸ Databases, who cares? ▸ The Web PASSOS PARA SE TORNAR UM PROGRAMADOR RUBY
  37. METHODOLOGIES PASSOS PARA SE TORNAR UM PROGRAMADOR RUBY

  38. METHODOLOGIES ▸ AGILE MANIFESTO PASSOS PARA SE TORNAR UM PROGRAMADOR

    RUBY
  39. METHODOLOGIES ▸ AGILE MANIFESTO ▸ Individuals and interactions over processes

    and tools PASSOS PARA SE TORNAR UM PROGRAMADOR RUBY
  40. METHODOLOGIES ▸ AGILE MANIFESTO ▸ Individuals and interactions over processes

    and tools ▸ Working software over comprehensive documentation PASSOS PARA SE TORNAR UM PROGRAMADOR RUBY
  41. METHODOLOGIES ▸ AGILE MANIFESTO ▸ Individuals and interactions over processes

    and tools ▸ Working software over comprehensive documentation ▸ Customer collaboration over contract negotiation PASSOS PARA SE TORNAR UM PROGRAMADOR RUBY
  42. METHODOLOGIES ▸ AGILE MANIFESTO ▸ Individuals and interactions over processes

    and tools ▸ Working software over comprehensive documentation ▸ Customer collaboration over contract negotiation ▸ Responding to change over following a plan PASSOS PARA SE TORNAR UM PROGRAMADOR RUBY
  43. None
  44. None
  45. SCRUM

  46. SCRUM

  47. SCRUM XP

  48. SCRUM XP

  49. SCRUM XP LEAN

  50. SCRUM XP LEAN

  51. SCRUM XP LEAN KANBAN

  52. SCRUM XP LEAN KANBAN

  53. SCRUM XP LEAN KANBAN WATERFALL

  54. METHODOLOGIES PASSOS PARA SE TORNAR UM PROGRAMADOR RUBY

  55. METHODOLOGIES ▸ It is important PASSOS PARA SE TORNAR UM

    PROGRAMADOR RUBY
  56. METHODOLOGIES ▸ It is important ▸ Learn at least a

    bit of all of them PASSOS PARA SE TORNAR UM PROGRAMADOR RUBY
  57. METHODOLOGIES ▸ It is important ▸ Learn at least a

    bit of all of them ▸ XP (Extreme Programming) PASSOS PARA SE TORNAR UM PROGRAMADOR RUBY
  58. METHODOLOGIES ▸ It is important ▸ Learn at least a

    bit of all of them ▸ XP (Extreme Programming) ▸ SCRUM PASSOS PARA SE TORNAR UM PROGRAMADOR RUBY
  59. METHODOLOGIES ▸ It is important ▸ Learn at least a

    bit of all of them ▸ XP (Extreme Programming) ▸ SCRUM ▸ LEAN Software Development PASSOS PARA SE TORNAR UM PROGRAMADOR RUBY
  60. METHODOLOGIES ▸ It is important ▸ Learn at least a

    bit of all of them ▸ XP (Extreme Programming) ▸ SCRUM ▸ LEAN Software Development ▸ Kanban PASSOS PARA SE TORNAR UM PROGRAMADOR RUBY
  61. METHODOLOGIES ▸ It is important ▸ Learn at least a

    bit of all of them ▸ XP (Extreme Programming) ▸ SCRUM ▸ LEAN Software Development ▸ Kanban ▸ Waterfall (just skip it, you probably know it) PASSOS PARA SE TORNAR UM PROGRAMADOR RUBY
  62. METHODOLOGIES PASSOS PARA SE TORNAR UM PROGRAMADOR RUBY

  63. METHODOLOGIES ▸ AGILE MANIFESTO PASSOS PARA SE TORNAR UM PROGRAMADOR

    RUBY
  64. METHODOLOGIES ▸ AGILE MANIFESTO ▸ Individuals and interactions over processes

    and tools PASSOS PARA SE TORNAR UM PROGRAMADOR RUBY
  65. METHODOLOGIES ▸ AGILE MANIFESTO ▸ Individuals and interactions over processes

    and tools ▸ Working software over comprehensive documentation PASSOS PARA SE TORNAR UM PROGRAMADOR RUBY
  66. METHODOLOGIES ▸ AGILE MANIFESTO ▸ Individuals and interactions over processes

    and tools ▸ Working software over comprehensive documentation ▸ Customer collaboration over contract negotiation PASSOS PARA SE TORNAR UM PROGRAMADOR RUBY
  67. METHODOLOGIES ▸ AGILE MANIFESTO ▸ Individuals and interactions over processes

    and tools ▸ Working software over comprehensive documentation ▸ Customer collaboration over contract negotiation ▸ Responding to change over following a plan PASSOS PARA SE TORNAR UM PROGRAMADOR RUBY
  68. ENVIRONMENT PASSOS PARA SE TORNAR UM PROGRAMADOR RUBY

  69. ENVIRONMENT ▸ IDEs PASSOS PARA SE TORNAR UM PROGRAMADOR RUBY

  70. ENVIRONMENT ▸ IDEs ▸ Rubymine - https://www.jetbrains.com/ruby/ PASSOS PARA SE

    TORNAR UM PROGRAMADOR RUBY
  71. ENVIRONMENT ▸ IDEs ▸ Rubymine - https://www.jetbrains.com/ruby/ ▸ Aptana -

    http://www.aptana.com/ PASSOS PARA SE TORNAR UM PROGRAMADOR RUBY
  72. ENVIRONMENT ▸ IDEs ▸ Rubymine - https://www.jetbrains.com/ruby/ ▸ Aptana -

    http://www.aptana.com/ ▸ UNIX + Text Editor PASSOS PARA SE TORNAR UM PROGRAMADOR RUBY
  73. ENVIRONMENT PASSOS PARA SE TORNAR UM PROGRAMADOR RUBY

  74. ENVIRONMENT ▸ Terminal is important PASSOS PARA SE TORNAR UM

    PROGRAMADOR RUBY
  75. ENVIRONMENT ▸ Terminal is important ▸ Learn shell commands, preferably

    beyond the basics PASSOS PARA SE TORNAR UM PROGRAMADOR RUBY
  76. ENVIRONMENT ▸ Terminal is important ▸ Learn shell commands, preferably

    beyond the basics ▸ Ruby systems, and Rails apps integrate with UNIX tools such as: PASSOS PARA SE TORNAR UM PROGRAMADOR RUBY
  77. ENVIRONMENT ▸ Terminal is important ▸ Learn shell commands, preferably

    beyond the basics ▸ Ruby systems, and Rails apps integrate with UNIX tools such as: ▸ ImageMagick PASSOS PARA SE TORNAR UM PROGRAMADOR RUBY
  78. ENVIRONMENT ▸ Terminal is important ▸ Learn shell commands, preferably

    beyond the basics ▸ Ruby systems, and Rails apps integrate with UNIX tools such as: ▸ ImageMagick ▸ PDFtk PASSOS PARA SE TORNAR UM PROGRAMADOR RUBY
  79. ENVIRONMENT ▸ Terminal is important ▸ Learn shell commands, preferably

    beyond the basics ▸ Ruby systems, and Rails apps integrate with UNIX tools such as: ▸ ImageMagick ▸ PDFtk ▸ Or anything you can run on your shell PASSOS PARA SE TORNAR UM PROGRAMADOR RUBY
  80. None
  81. None
  82. +

  83. +

  84. +

  85. None
  86. None
  87. None
  88. +

  89. +

  90. +

  91. ENVIRONMENT PASSOS PARA SE TORNAR UM PROGRAMADOR RUBY

  92. ENVIRONMENT ▸ Keep with your Windows, if you really want,

    but learn about those guys PASSOS PARA SE TORNAR UM PROGRAMADOR RUBY
  93. ENVIRONMENT ▸ Keep with your Windows, if you really want,

    but learn about those guys ▸ Vagrant - https://www.vagrantup.com/ PASSOS PARA SE TORNAR UM PROGRAMADOR RUBY
  94. ENVIRONMENT ▸ Keep with your Windows, if you really want,

    but learn about those guys ▸ Vagrant - https://www.vagrantup.com/ ▸ Docker - https://www.docker.com/ PASSOS PARA SE TORNAR UM PROGRAMADOR RUBY
  95. ENVIRONMENT ▸ Keep with your Windows, if you really want,

    but learn about those guys ▸ Vagrant - https://www.vagrantup.com/ ▸ Docker - https://www.docker.com/ ▸ On Linux and OSX PASSOS PARA SE TORNAR UM PROGRAMADOR RUBY
  96. ENVIRONMENT ▸ Keep with your Windows, if you really want,

    but learn about those guys ▸ Vagrant - https://www.vagrantup.com/ ▸ Docker - https://www.docker.com/ ▸ On Linux and OSX ▸ Check it out azk (azuki) - http://www.azk.io/ PASSOS PARA SE TORNAR UM PROGRAMADOR RUBY
  97. ENVIRONMENT ▸ Keep with your Windows, if you really want,

    but learn about those guys ▸ Vagrant - https://www.vagrantup.com/ ▸ Docker - https://www.docker.com/ ▸ On Linux and OSX ▸ Check it out azk (azuki) - http://www.azk.io/ PASSOS PARA SE TORNAR UM PROGRAMADOR RUBY !
  98. BEST PRACTICES PASSOS PARA SE TORNAR UM PROGRAMADOR RUBY

  99. BEST PRACTICES ▸ Ruby community is very opinionated about code

    style PASSOS PARA SE TORNAR UM PROGRAMADOR RUBY
  100. BEST PRACTICES ▸ Ruby community is very opinionated about code

    style ▸ Tests are mandatory, but why? PASSOS PARA SE TORNAR UM PROGRAMADOR RUBY
  101. BEST PRACTICES ▸ Ruby community is very opinionated about code

    style ▸ Tests are mandatory, but why? ▸ For the sake of documentation PASSOS PARA SE TORNAR UM PROGRAMADOR RUBY
  102. BEST PRACTICES ▸ Ruby community is very opinionated about code

    style ▸ Tests are mandatory, but why? ▸ For the sake of documentation ▸ Ruby versions are not backward compatible PASSOS PARA SE TORNAR UM PROGRAMADOR RUBY
  103. BEST PRACTICES ▸ Ruby community is very opinionated about code

    style ▸ Tests are mandatory, but why? ▸ For the sake of documentation ▸ Ruby versions are not backward compatible ▸ It helps you and other understand classes and methods PASSOS PARA SE TORNAR UM PROGRAMADOR RUBY
  104. BEST PRACTICES ▸ Ruby community is very opinionated about code

    style ▸ Tests are mandatory, but why? ▸ For the sake of documentation ▸ Ruby versions are not backward compatible ▸ It helps you and other understand classes and methods ▸ Bundler PASSOS PARA SE TORNAR UM PROGRAMADOR RUBY
  105. BEST PRACTICES ▸ Ruby community is very opinionated about code

    style ▸ Tests are mandatory, but why? ▸ For the sake of documentation ▸ Ruby versions are not backward compatible ▸ It helps you and other understand classes and methods ▸ Bundler ▸ Gemfile and his .lock PASSOS PARA SE TORNAR UM PROGRAMADOR RUBY
  106. “PROGRAMS ARE MEANT TO BE READ BY HUMANS AND ONLY

    INCIDENTALLY FOR COMPUTERS TO EXECUTE.” — H. Abelson and G. Sussman PASSOS PARA SE TORNAR UM PROGRAMADOR RUBY
  107. None
  108. BEST PRACTICES - CODE STYLE PASSOS PARA SE TORNAR UM

    PROGRAMADOR RUBY
  109. BEST PRACTICES - CODE STYLE ▸ Spaces VS Tabs PASSOS

    PARA SE TORNAR UM PROGRAMADOR RUBY
  110. BEST PRACTICES - CODE STYLE ▸ Spaces VS Tabs ▸

    Soft Tabs with 2 spaces - No Hard Tabs PASSOS PARA SE TORNAR UM PROGRAMADOR RUBY
  111. BEST PRACTICES - CODE STYLE ▸ Spaces VS Tabs ▸

    Soft Tabs with 2 spaces - No Hard Tabs ▸ Classes use CamelCase PASSOS PARA SE TORNAR UM PROGRAMADOR RUBY
  112. BEST PRACTICES - CODE STYLE ▸ Spaces VS Tabs ▸

    Soft Tabs with 2 spaces - No Hard Tabs ▸ Classes use CamelCase ▸ Methods and variables snake_case PASSOS PARA SE TORNAR UM PROGRAMADOR RUBY
  113. BEST PRACTICES - CODE STYLE ▸ Spaces VS Tabs ▸

    Soft Tabs with 2 spaces - No Hard Tabs ▸ Classes use CamelCase ▸ Methods and variables snake_case ▸ Constants SCREAMING_SNAKE_CASE PASSOS PARA SE TORNAR UM PROGRAMADOR RUBY
  114. BEST PRACTICES - CODE STYLE ▸ Spaces VS Tabs ▸

    Soft Tabs with 2 spaces - No Hard Tabs ▸ Classes use CamelCase ▸ Methods and variables snake_case ▸ Constants SCREAMING_SNAKE_CASE ▸ boolean_methods? PASSOS PARA SE TORNAR UM PROGRAMADOR RUBY
  115. BEST PRACTICES - CODE STYLE ▸ Spaces VS Tabs ▸

    Soft Tabs with 2 spaces - No Hard Tabs ▸ Classes use CamelCase ▸ Methods and variables snake_case ▸ Constants SCREAMING_SNAKE_CASE ▸ boolean_methods? ▸ bang_methods! PASSOS PARA SE TORNAR UM PROGRAMADOR RUBY
  116. ~/awesome-ruby-project ∴

  117. ~/awesome-ruby-project ∴ ∴ irb

  118. ~/awesome-ruby-project ∴ ∴ irb ∴ irb(main):001:0>

  119. ∴ one = 1 ~/awesome-ruby-project ∴ ∴ irb ∴ irb(main):001:0>

  120. ∴ one = 1 ~/awesome-ruby-project ∴ ∴ irb ∴ irb(main):001:0>

    ∴ => 1 irb(main):002:0>
  121. ∴ one = 1 ~/awesome-ruby-project ∴ ∴ irb ∴ irb(main):001:0>

    ∴ => 1 irb(main):002:0> ∴ one.odd?
  122. ∴ one = 1 ~/awesome-ruby-project ∴ ∴ irb ∴ irb(main):001:0>

    ∴ => 1 irb(main):002:0> ∴ one.odd? ∴ => true irb(main):003:0>
  123. ∴ one = 1 ~/awesome-ruby-project ∴ ∴ irb ∴ irb(main):001:0>

    ∴ => 1 irb(main):002:0> ∴ one.odd? ∴ => true irb(main):003:0> ∴ one.even?
  124. ∴ one = 1 ~/awesome-ruby-project ∴ ∴ irb ∴ irb(main):001:0>

    ∴ => 1 irb(main):002:0> ∴ one.odd? ∴ => true irb(main):003:0> ∴ one.even? ∴ => false irb(main):004:0>
  125. ∴ one = 1 ~/awesome-ruby-project ∴ ∴ irb ∴ irb(main):001:0>

    ∴ => 1 irb(main):002:0> ∴ one.odd? ∴ => true irb(main):003:0> ∴ one.even? ∴ => false irb(main):004:0> ∴ rails = 'is omakase'
  126. ∴ one = 1 ~/awesome-ruby-project ∴ ∴ irb ∴ irb(main):001:0>

    ∴ => 1 irb(main):002:0> ∴ one.odd? ∴ => true irb(main):003:0> ∴ one.even? ∴ => false irb(main):004:0> ∴ rails = 'is omakase' ∴ => "is omakase" irb(main):005:0>
  127. ∴ one = 1 ~/awesome-ruby-project ∴ ∴ irb ∴ irb(main):001:0>

    ∴ => 1 irb(main):002:0> ∴ one.odd? ∴ => true irb(main):003:0> ∴ one.even? ∴ => false irb(main):004:0> ∴ rails = 'is omakase' ∴ => "is omakase" irb(main):005:0> ∴ rails.chop
  128. ∴ one = 1 ~/awesome-ruby-project ∴ ∴ irb ∴ irb(main):001:0>

    ∴ => 1 irb(main):002:0> ∴ one.odd? ∴ => true irb(main):003:0> ∴ one.even? ∴ => false irb(main):004:0> ∴ rails = 'is omakase' ∴ => "is omakase" irb(main):005:0> ∴ rails.chop ∴ => "is omakas" irb(main):006:0>
  129. ∴ one = 1 ~/awesome-ruby-project ∴ ∴ irb ∴ irb(main):001:0>

    ∴ => 1 irb(main):002:0> ∴ one.odd? ∴ => true irb(main):003:0> ∴ one.even? ∴ => false irb(main):004:0> ∴ rails = 'is omakase' ∴ => "is omakase" irb(main):005:0> ∴ rails.chop ∴ => "is omakas" irb(main):006:0> ∴ rails
  130. ∴ one = 1 ~/awesome-ruby-project ∴ ∴ irb ∴ irb(main):001:0>

    ∴ => 1 irb(main):002:0> ∴ one.odd? ∴ => true irb(main):003:0> ∴ one.even? ∴ => false irb(main):004:0> ∴ rails = 'is omakase' ∴ => "is omakase" irb(main):005:0> ∴ rails.chop ∴ => "is omakas" irb(main):006:0> ∴ rails ∴ => "is omakase" irb(main):007:0>
  131. ∴ one = 1 ~/awesome-ruby-project ∴ ∴ irb ∴ irb(main):001:0>

    ∴ => 1 irb(main):002:0> ∴ one.odd? ∴ => true irb(main):003:0> ∴ one.even? ∴ => false irb(main):004:0> ∴ rails = 'is omakase' ∴ => "is omakase" irb(main):005:0> ∴ rails.chop ∴ => "is omakas" irb(main):006:0> ∴ rails ∴ => "is omakase" irb(main):007:0> ∴ rails.chop!
  132. ∴ one = 1 ~/awesome-ruby-project ∴ ∴ irb ∴ irb(main):001:0>

    ∴ => 1 irb(main):002:0> ∴ one.odd? ∴ => true irb(main):003:0> ∴ one.even? ∴ => false irb(main):004:0> ∴ rails = 'is omakase' ∴ => "is omakase" irb(main):005:0> ∴ rails.chop ∴ => "is omakas" irb(main):006:0> ∴ rails ∴ => "is omakase" irb(main):007:0> ∴ rails.chop! ∴ => "is omakas" irb(main):008:0>
  133. ∴ one = 1 ~/awesome-ruby-project ∴ ∴ irb ∴ irb(main):001:0>

    ∴ => 1 irb(main):002:0> ∴ one.odd? ∴ => true irb(main):003:0> ∴ one.even? ∴ => false irb(main):004:0> ∴ rails = 'is omakase' ∴ => "is omakase" irb(main):005:0> ∴ rails.chop ∴ => "is omakas" irb(main):006:0> ∴ rails ∴ => "is omakase" irb(main):007:0> ∴ rails.chop! ∴ => "is omakas" irb(main):008:0> ∴ rails
  134. ∴ one = 1 ~/awesome-ruby-project ∴ ∴ irb ∴ irb(main):001:0>

    ∴ => 1 irb(main):002:0> ∴ one.odd? ∴ => true irb(main):003:0> ∴ one.even? ∴ => false irb(main):004:0> ∴ rails = 'is omakase' ∴ => "is omakase" irb(main):005:0> ∴ rails.chop ∴ => "is omakas" irb(main):006:0> ∴ rails ∴ => "is omakase" irb(main):007:0> ∴ rails.chop! ∴ => "is omakas" irb(main):008:0> ∴ rails ∴ => "is omakas" irb(main):009:0>
  135. BEST PRACTICES - CODE STYLE PASSOS PARA SE TORNAR UM

    PROGRAMADOR RUBY
  136. BEST PRACTICES - CODE STYLE ▸ Learn how to configure

    your IDE or Text Editor PASSOS PARA SE TORNAR UM PROGRAMADOR RUBY
  137. BEST PRACTICES - CODE STYLE ▸ Learn how to configure

    your IDE or Text Editor ▸ http://editorconfig.org/ PASSOS PARA SE TORNAR UM PROGRAMADOR RUBY
  138. BEST PRACTICES - CODE STYLE ▸ Learn how to configure

    your IDE or Text Editor ▸ http://editorconfig.org/ ▸ Create a set rules for code style PASSOS PARA SE TORNAR UM PROGRAMADOR RUBY
  139. BEST PRACTICES - CODE STYLE ▸ Learn how to configure

    your IDE or Text Editor ▸ http://editorconfig.org/ ▸ Create a set rules for code style ▸ Follow the rules PASSOS PARA SE TORNAR UM PROGRAMADOR RUBY
  140. BEST PRACTICES - CODE STYLE ▸ Learn how to configure

    your IDE or Text Editor ▸ http://editorconfig.org/ ▸ Create a set rules for code style ▸ Follow the rules ▸ Good base examples for ruby apps: PASSOS PARA SE TORNAR UM PROGRAMADOR RUBY
  141. BEST PRACTICES - CODE STYLE ▸ Learn how to configure

    your IDE or Text Editor ▸ http://editorconfig.org/ ▸ Create a set rules for code style ▸ Follow the rules ▸ Good base examples for ruby apps: ▸ https://github.com/styleguide/ruby PASSOS PARA SE TORNAR UM PROGRAMADOR RUBY
  142. BEST PRACTICES - TEST TOOLS PASSOS PARA SE TORNAR UM

    PROGRAMADOR RUBY
  143. BEST PRACTICES - TEST TOOLS ▸ Unit tests PASSOS PARA

    SE TORNAR UM PROGRAMADOR RUBY
  144. BEST PRACTICES - TEST TOOLS ▸ Unit tests ▸ RSpec

    PASSOS PARA SE TORNAR UM PROGRAMADOR RUBY
  145. BEST PRACTICES - TEST TOOLS ▸ Unit tests ▸ RSpec

    ▸ Minitest PASSOS PARA SE TORNAR UM PROGRAMADOR RUBY
  146. BEST PRACTICES - TEST TOOLS ▸ Unit tests ▸ RSpec

    ▸ Minitest ▸ Feature tests PASSOS PARA SE TORNAR UM PROGRAMADOR RUBY
  147. BEST PRACTICES - TEST TOOLS ▸ Unit tests ▸ RSpec

    ▸ Minitest ▸ Feature tests ▸ Capybara + RSpec PASSOS PARA SE TORNAR UM PROGRAMADOR RUBY
  148. BEST PRACTICES - TEST TOOLS ▸ Unit tests ▸ RSpec

    ▸ Minitest ▸ Feature tests ▸ Capybara + RSpec ▸ Capybara + Cucumber PASSOS PARA SE TORNAR UM PROGRAMADOR RUBY
  149. BEST PRACTICES - TEST TOOLS PASSOS PARA SE TORNAR UM

    PROGRAMADOR RUBY
  150. BEST PRACTICES - TEST TOOLS ▸ FactoryGirl PASSOS PARA SE

    TORNAR UM PROGRAMADOR RUBY
  151. BEST PRACTICES - TEST TOOLS ▸ FactoryGirl ▸ Stubbing PASSOS

    PARA SE TORNAR UM PROGRAMADOR RUBY
  152. BEST PRACTICES - TEST TOOLS ▸ FactoryGirl ▸ Stubbing ▸

    Creating PASSOS PARA SE TORNAR UM PROGRAMADOR RUBY
  153. BEST PRACTICES - TEST TOOLS ▸ FactoryGirl ▸ Stubbing ▸

    Creating ▸ VCR PASSOS PARA SE TORNAR UM PROGRAMADOR RUBY
  154. BEST PRACTICES - TEST TOOLS ▸ FactoryGirl ▸ Stubbing ▸

    Creating ▸ VCR ▸ Mocks HTTP requests PASSOS PARA SE TORNAR UM PROGRAMADOR RUBY
  155. BEST PRACTICES - BUNDLER PASSOS PARA SE TORNAR UM PROGRAMADOR

    RUBY
  156. BEST PRACTICES - BUNDLER ▸ What is it? PASSOS PARA

    SE TORNAR UM PROGRAMADOR RUBY
  157. BEST PRACTICES - BUNDLER ▸ What is it? ▸ Rubygems

    source PASSOS PARA SE TORNAR UM PROGRAMADOR RUBY
  158. BEST PRACTICES - BUNDLER ▸ What is it? ▸ Rubygems

    source ▸ Dependencies PASSOS PARA SE TORNAR UM PROGRAMADOR RUBY
  159. BEST PRACTICES - BUNDLER ▸ What is it? ▸ Rubygems

    source ▸ Dependencies ▸ Gemfile PASSOS PARA SE TORNAR UM PROGRAMADOR RUBY
  160. BEST PRACTICES - BUNDLER ▸ What is it? ▸ Rubygems

    source ▸ Dependencies ▸ Gemfile ▸ Gemfile.lock PASSOS PARA SE TORNAR UM PROGRAMADOR RUBY
  161. ~/awesome-ruby-project ∴

  162. ∴ gem install bundler ~/awesome-ruby-project ∴

  163. ∴ gem install bundler ~/awesome-ruby-project ∴ ∴ Successfully installed bundler-1.10.6

    1 gem installed ~/awesome-ruby-project ∴
  164. ~/awesome-ruby-project ∴ gem install bundler Successfully installed bundler-1.10.6 1 gem

    installed ~/awesome-ruby-project ∴
  165. ~/awesome-ruby-project ∴ gem install bundler Successfully installed bundler-1.10.6 1 gem

    installed ~/awesome-ruby-project ∴ ∴ g ∴ bundle init
  166. ~/awesome-ruby-project ∴ gem install bundler Successfully installed bundler-1.10.6 1 gem

    installed ~/awesome-ruby-project ∴ ∴ g ∴ bundle init ~/awesome-ruby-project ∴ gem install bundler Successfully installed bundler-1.10.6 1 gem installed ~/awesome-ruby-project ∴ bundle init Writing new Gemfile to ~/awesome-ruby-project/Gemfile ~/awesome-ruby-project ∴
  167. ~/awesome-ruby-project ∴ gem install bundler Successfully installed bundler-1.10.6 1 gem

    installed ~/awesome-ruby-project ∴ bundle init Writing new Gemfile to ~/awesome-ruby-project/Gemfile ~/awesome-ruby-project ∴
  168. ∴ g ∴ b ∴ cat Gemfile ~/awesome-ruby-project ∴ gem

    install bundler Successfully installed bundler-1.10.6 1 gem installed ~/awesome-ruby-project ∴ bundle init Writing new Gemfile to ~/awesome-ruby-project/Gemfile ~/awesome-ruby-project ∴
  169. ∴ g ∴ b ∴ cat Gemfile ~/awesome-ruby-project ∴ gem

    install bundler Successfully installed bundler-1.10.6 1 gem installed ~/awesome-ruby-project ∴ bundle init Writing new Gemfile to ~/awesome-ruby-project/Gemfile ~/awesome-ruby-project ∴ ∴ g ∴ b ∴ c # A sample Gemfile source "https://rubygems.org" # gem "rails" ~/awesome-ruby-project ∴
  170. ~/awesome-ruby-project ∴ gem install bundler Successfully installed bundler-1.10.6 1 gem

    installed ~/awesome-ruby-project ∴ bundle init Writing new Gemfile to ~/awesome-ruby-project/Gemfile ~/awesome-ruby-project ∴ cat Gemfile # A sample Gemfile source "https://rubygems.org" # gem "rails" ~/awesome-ruby-project ∴
  171. ~/awesome-ruby-project ∴ gem install bundler Successfully installed bundler-1.10.6 1 gem

    installed ~/awesome-ruby-project ∴ bundle init Writing new Gemfile to ~/awesome-ruby-project/Gemfile ~/awesome-ruby-project ∴ cat Gemfile # A sample Gemfile source "https://rubygems.org" # gem "rails" ~/awesome-ruby-project ∴ ∴ g ∴ b ∴ c ∴ vim Gemfile
  172. None
  173. None
  174. None
  175. BEST PRACTICES - CI PASSOS PARA SE TORNAR UM PROGRAMADOR

    RUBY
  176. BEST PRACTICES - CI ▸ Continuos Integration PASSOS PARA SE

    TORNAR UM PROGRAMADOR RUBY
  177. BEST PRACTICES - CI ▸ Continuos Integration ▸ https://jenkins-ci.org/ -

    DIY PASSOS PARA SE TORNAR UM PROGRAMADOR RUBY
  178. BEST PRACTICES - CI ▸ Continuos Integration ▸ https://jenkins-ci.org/ -

    DIY ▸ https://circleci.com/ PASSOS PARA SE TORNAR UM PROGRAMADOR RUBY
  179. BEST PRACTICES - CI ▸ Continuos Integration ▸ https://jenkins-ci.org/ -

    DIY ▸ https://circleci.com/ ▸ https://travis-ci.org/ PASSOS PARA SE TORNAR UM PROGRAMADOR RUBY
  180. BEST PRACTICES - CI ▸ Continuos Integration ▸ https://jenkins-ci.org/ -

    DIY ▸ https://circleci.com/ ▸ https://travis-ci.org/ ▸ https://semaphoreci.com/ PASSOS PARA SE TORNAR UM PROGRAMADOR RUBY
  181. PASSOS PARA SE TORNAR UM PROGRAMADOR RUBY

  182. DON’T CARE ABOUT DATABASES - NOT AT ALL PASSOS PARA

    SE TORNAR UM PROGRAMADOR RUBY
  183. DON’T CARE ABOUT DATABASES - NOT AT ALL ▸ What

    is a database? PASSOS PARA SE TORNAR UM PROGRAMADOR RUBY
  184. DON’T CARE ABOUT DATABASES - NOT AT ALL ▸ What

    is a database? ▸ A detail PASSOS PARA SE TORNAR UM PROGRAMADOR RUBY
  185. DON’T CARE ABOUT DATABASES - NOT AT ALL ▸ What

    is a database? ▸ A detail ▸ A good application should not rely on database PASSOS PARA SE TORNAR UM PROGRAMADOR RUBY
  186. DON’T CARE ABOUT DATABASES - NOT AT ALL ▸ What

    is a database? ▸ A detail ▸ A good application should not rely on database ▸ A simple layer that I don’t care, should be bring me the data PASSOS PARA SE TORNAR UM PROGRAMADOR RUBY
  187. THE WEB ▸ Understand how it work ▸ The flow

    between client and server ▸ HTTP verbs ▸ HTTP headers ▸ Authentication ▸ Understand how it works, and them use devise ▸ Learn how to deploy your application PASSOS PARA SE TORNAR UM PROGRAMADOR RUBY
  188. None
  189. None
  190. None
  191. None
  192. None
  193. One last thing…

  194. IS HIRING, WE NEED YOU

  195. http://engenharia.vivareal.com.br/work-with-us/

  196. THANK YOU