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

Rubyを好きになった過程

3d1621a44968b7b2f7cf8907b3a3645b?s=47 at_grandpa
August 02, 2018

 Rubyを好きになった過程

表参道.rb #37 ~ Ruby/Railsの学び方 ~
https://omotesandorb.connpass.com/event/95518/

イベント発表資料です。

3d1621a44968b7b2f7cf8907b3a3645b?s=128

at_grandpa

August 02, 2018
Tweet

Transcript

  1. Rubyを好きになった過程 2018.08.02 表参道.rb #37 @at_grandpa

  2. @at_grandpa

  3. 圧倒亭グランパのブログ

  4. 圧倒亭グランパのブログ 【ruby】 メソッド探索から見る、モジュール・特異メソッド・特異クラス ✔ メソッド探索のしくみ
 ✔ include, prepend の違い ✔

    特異クラス、特異メソッド ✔ NoMethodErrorを理解できた
  5. 圧倒亭グランパのブログ ʲrubyʳΩʔϫʔυҾ਺ͷϝιουݺͼग़͠͸஗͍ʂ ͔͠͠2.2.0-preview2 Ҏ߱Ͱܶతʹվળ͞Ε͍ͯͨ࿩ ✔ キーワード引数遅いのでは?
 ✔ 昔はHashを使っていた ✔ ベンチマーク

    ✔ YARVに初めて触れる
  6. 圧倒亭グランパのブログ ʲrubyʳΩʔϫʔυҾ਺ͷϝιουݺͼग़͠͸஗͍ʂ ͔͠͠2.2.0-preview2 Ҏ߱Ͱܶతʹվળ͞Ε͍ͯͨ࿩ ✔ 「最後の最後に触れてます」
 ✔ 最後まで読んでないことがバレる

  7. Rubyを好きになった過程

  8. 出会い

  9. 出会い ✔ バッチ処理の開発・運用がメイン   - 「p」の付く言語がほとんど   - Rubyのバッチは少数 ✔ ある時、Rubyのバッチをメンテすることに
   -

    まったくわからん
   - 「$」いらないの?   - 「@」ってなんだ?
   - ググりまくる
  10. 書き味がいい

  11. 書き味がいい ✔ 「p」の付く言語よりも書き味がいい   - 「$」「;」がいらない!   - mapが1行でサクッと書ける...!   - 全体的にコードがシュッとスリムな感じ   -

    ※個人の感想です Rubyに興味が湧く 「あ、なんかRuby好きかも...」の状態
  12. 度々起こるエラー

  13. 度々起こるエラー ✔ NoMethodError   - なんで?   - とりあえず「self」取ったらいけた   - とりあえず「self」付けたらいけた   -

    なんでや!
  14. 度々起こるエラー ✔ NoMethodError   - なんで?   - とりあえず「self」取ったらいけた   - とりあえず「self」付けたらいけた   -

    なんでや! Rubyの仕組みに興味が湧いた ここで「Rubyのことなんかキライ!」ではなく... 「Rubyのこと、もっと知りたい...!」という状態
  15. 仕組みを知る

  16. 仕組みを知る ✔ メソッド探索の仕組み ✔ メタプロを通して仕組みを知る ” 前半では、メタプログラミングの背景にある 基本的な考えを紹介しながら、 動的ディスパッチ、ゴーストメソッド、 フラットスコープといったさまざまな

    「魔術」を紹介します。 https://www.amazon.co.jp/dp/4873117437
  17. 仕組みを知る ✔ まさに「しくみ」の解説 ✔ 図やコードが豊富 ” VMベースのインタプリタ型言語処理系であるRubyが コードをどのように解釈し、どうやって実行するか、 そのしくみを解説。 Rubyについての基礎知識がなくても、

    図版と短いコードの実験を多用した構成により、 そのしくみについて理解することができます。 https://www.amazon.co.jp/dp/B01IGW56CU
  18. 仕組みを知る 【ruby】 メソッド探索から見る、モジュール・特異メソッド・特異クラス ✔ メソッド探索のしくみ
 ✔ include, prepend の違い ✔

    特異クラス、特異メソッド ✔ NoMethodErrorを理解できた
  19. 仕組みを知る ʲrubyʳΩʔϫʔυҾ਺ͷϝιουݺͼग़͠͸஗͍ʂ ͔͠͠2.2.0-preview2 Ҏ߱Ͱܶతʹվળ͞Ε͍ͯͨ࿩ ✔ キーワード引数遅いのでは?
 ✔ 昔はHashを使っていた ✔ ベンチマーク

    ✔ YARVに初めて触れる
  20. 仕組みを知る ✔ 仕組みを知ってよかったこと   - エラーの原因特定が早くなった   - Reading/Writing の両方で使える知識   - versionが進んでも陳腐化しにくい知識

    ✔ Rubyがさらにおもしろくなった   - 読める、読めるぞ!   - サードパーティのコードにも臆さなくなった
  21. ✔ 仕組みを知ってよかったこと   - エラーの原因特定が早くなった   - Reading/Writing の両方で使える知識   - versionが進んでも陳腐化しにくい知識 ✔

    Rubyがさらにおもしろくなった   - 読める、読めるぞ!   - サードパーティのコードにも臆さなくなった 仕組みを知る 触れれば触れるほど好きになっていく 「Ruby...好き!」という状態
  22. まとめ

  23. Rubyを好きになった過程

  24. ✔ 出会いは突然に ✔ 「お?」と思ってちょっとだけ好きになる   - Rubyはここが強いんじゃないかと思う   - 初手で「お?いいかも?」と思わせる点 ✔ 好きになったおかげで障壁も乗り越えられる

      - 好きじゃなかったらエラーでストレスを感じていたはず   - ストレスよりも「なんで?」が先に来た ✔ 興味が加速するスパイラル   - 知ると面白い、さらに面白い Rubyを好きになった過程 ※言語化しづらいけど、このあたりにRubyの魅力の秘密がありそう
  25. まとめ2

  26. ✔ 自分の興味に素直になるのは大事   - 一番パフォーマンス出る   - 技術探求の原動力   - 興味から広がって辿り着く知識もある ✔ 仕組みを知るメリットは大きい

      - 開発速度が圧倒的に上がる   - 開発のクオリティも上がる
   - 興味が尽きなくなる   - 息の長い知識になる まとめ2 今回は Ruby を例にしましたが、どんな技術でも言える
  27. fin