Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Rubyを好きになった過程
Search
at_grandpa
August 02, 2018
Technology
3
1.6k
Rubyを好きになった過程
表参道.rb #37 ~ Ruby/Railsの学び方 ~
https://omotesandorb.connpass.com/event/95518/
イベント発表資料です。
at_grandpa
August 02, 2018
Tweet
Share
More Decks by at_grandpa
See All by at_grandpa
技術書典5でチャレンジしたあれこれ
atgrandpa
3
2k
CSS組版おもしろい!
atgrandpa
1
320
技術同人誌を執筆して得たこと
atgrandpa
3
1.6k
【Crystal】Concurrency
atgrandpa
3
910
【Crystal】Macroについて
atgrandpa
3
1.5k
初のサークル参加で気づいた小さなこと
atgrandpa
0
500
Other Decks in Technology
See All in Technology
システムのアラート調査をサポートするAI Agentの紹介/Introduction to an AI Agent for System Alert Investigation
taddy_919
2
1.7k
OCI Database Management サービス詳細
oracle4engineer
PRO
1
7.3k
GitHub Issue Templates + Coding Agentで簡単みんなでIaC/Easy IaC for Everyone with GitHub Issue Templates + Coding Agent
aeonpeople
1
160
ファインディの横断SREがTakumi byGMOと取り組む、セキュリティと開発スピードの両立
rvirus0817
1
1k
入社1ヶ月でデータパイプライン講座を作った話
waiwai2111
1
220
Bill One 開発エンジニア 紹介資料
sansan33
PRO
4
17k
マーケットプレイス版Oracle WebCenter Content For OCI
oracle4engineer
PRO
5
1.5k
外部キー制約の知っておいて欲しいこと - RDBMSを正しく使うために必要なこと / FOREIGN KEY Night
soudai
PRO
11
4.3k
ClickHouseはどのように大規模データを活用したAIエージェントを全社展開しているのか
mikimatsumoto
0
180
15 years with Rails and DDD (AI Edition)
andrzejkrzywda
0
160
Webhook best practices for rock solid and resilient deployments
glaforge
1
250
30万人の同時アクセスに耐えたい!新サービスの盤石なリリースを支える負荷試験 / SRE Kaigi 2026
genda
1
150
Featured
See All Featured
More Than Pixels: Becoming A User Experience Designer
marktimemedia
3
310
Impact Scores and Hybrid Strategies: The future of link building
tamaranovitovic
0
200
First, design no harm
axbom
PRO
2
1.1k
Designing for Performance
lara
610
70k
Odyssey Design
rkendrick25
PRO
1
490
Conquering PDFs: document understanding beyond plain text
inesmontani
PRO
4
2.3k
Making the Leap to Tech Lead
cromwellryan
135
9.7k
Public Speaking Without Barfing On Your Shoes - THAT 2023
reverentgeek
1
300
How to build a perfect <img>
jonoalderson
1
4.9k
BBQ
matthewcrist
89
10k
Become a Pro
speakerdeck
PRO
31
5.8k
世界の人気アプリ100個を分析して見えたペイウォール設計の心得
akihiro_kokubo
PRO
66
36k
Transcript
Rubyを好きになった過程 2018.08.02 表参道.rb #37 @at_grandpa
@at_grandpa
圧倒亭グランパのブログ
圧倒亭グランパのブログ 【ruby】 メソッド探索から見る、モジュール・特異メソッド・特異クラス ✔ メソッド探索のしくみ ✔ include, prepend の違い ✔
特異クラス、特異メソッド ✔ NoMethodErrorを理解できた
圧倒亭グランパのブログ ʲrubyʳΩʔϫʔυҾͷϝιουݺͼग़͍͠ʂ ͔͠͠2.2.0-preview2 Ҏ߱Ͱܶతʹվળ͞Ε͍ͯͨ ✔ キーワード引数遅いのでは? ✔ 昔はHashを使っていた ✔ ベンチマーク
✔ YARVに初めて触れる
圧倒亭グランパのブログ ʲrubyʳΩʔϫʔυҾͷϝιουݺͼग़͍͠ʂ ͔͠͠2.2.0-preview2 Ҏ߱Ͱܶతʹվળ͞Ε͍ͯͨ ✔ 「最後の最後に触れてます」 ✔ 最後まで読んでないことがバレる
Rubyを好きになった過程
出会い
出会い ✔ バッチ処理の開発・運用がメイン - 「p」の付く言語がほとんど - Rubyのバッチは少数 ✔ ある時、Rubyのバッチをメンテすることに -
まったくわからん - 「$」いらないの? - 「@」ってなんだ? - ググりまくる
書き味がいい
書き味がいい ✔ 「p」の付く言語よりも書き味がいい - 「$」「;」がいらない! - mapが1行でサクッと書ける...! - 全体的にコードがシュッとスリムな感じ -
※個人の感想です Rubyに興味が湧く 「あ、なんかRuby好きかも...」の状態
度々起こるエラー
度々起こるエラー ✔ NoMethodError - なんで? - とりあえず「self」取ったらいけた - とりあえず「self」付けたらいけた -
なんでや!
度々起こるエラー ✔ NoMethodError - なんで? - とりあえず「self」取ったらいけた - とりあえず「self」付けたらいけた -
なんでや! Rubyの仕組みに興味が湧いた ここで「Rubyのことなんかキライ!」ではなく... 「Rubyのこと、もっと知りたい...!」という状態
仕組みを知る
仕組みを知る ✔ メソッド探索の仕組み ✔ メタプロを通して仕組みを知る ” 前半では、メタプログラミングの背景にある 基本的な考えを紹介しながら、 動的ディスパッチ、ゴーストメソッド、 フラットスコープといったさまざまな
「魔術」を紹介します。 https://www.amazon.co.jp/dp/4873117437
仕組みを知る ✔ まさに「しくみ」の解説 ✔ 図やコードが豊富 ” VMベースのインタプリタ型言語処理系であるRubyが コードをどのように解釈し、どうやって実行するか、 そのしくみを解説。 Rubyについての基礎知識がなくても、
図版と短いコードの実験を多用した構成により、 そのしくみについて理解することができます。 https://www.amazon.co.jp/dp/B01IGW56CU
仕組みを知る 【ruby】 メソッド探索から見る、モジュール・特異メソッド・特異クラス ✔ メソッド探索のしくみ ✔ include, prepend の違い ✔
特異クラス、特異メソッド ✔ NoMethodErrorを理解できた
仕組みを知る ʲrubyʳΩʔϫʔυҾͷϝιουݺͼग़͍͠ʂ ͔͠͠2.2.0-preview2 Ҏ߱Ͱܶతʹվળ͞Ε͍ͯͨ ✔ キーワード引数遅いのでは? ✔ 昔はHashを使っていた ✔ ベンチマーク
✔ YARVに初めて触れる
仕組みを知る ✔ 仕組みを知ってよかったこと - エラーの原因特定が早くなった - Reading/Writing の両方で使える知識 - versionが進んでも陳腐化しにくい知識
✔ Rubyがさらにおもしろくなった - 読める、読めるぞ! - サードパーティのコードにも臆さなくなった
✔ 仕組みを知ってよかったこと - エラーの原因特定が早くなった - Reading/Writing の両方で使える知識 - versionが進んでも陳腐化しにくい知識 ✔
Rubyがさらにおもしろくなった - 読める、読めるぞ! - サードパーティのコードにも臆さなくなった 仕組みを知る 触れれば触れるほど好きになっていく 「Ruby...好き!」という状態
まとめ
Rubyを好きになった過程
✔ 出会いは突然に ✔ 「お?」と思ってちょっとだけ好きになる - Rubyはここが強いんじゃないかと思う - 初手で「お?いいかも?」と思わせる点 ✔ 好きになったおかげで障壁も乗り越えられる
- 好きじゃなかったらエラーでストレスを感じていたはず - ストレスよりも「なんで?」が先に来た ✔ 興味が加速するスパイラル - 知ると面白い、さらに面白い Rubyを好きになった過程 ※言語化しづらいけど、このあたりにRubyの魅力の秘密がありそう
まとめ2
✔ 自分の興味に素直になるのは大事 - 一番パフォーマンス出る - 技術探求の原動力 - 興味から広がって辿り着く知識もある ✔ 仕組みを知るメリットは大きい
- 開発速度が圧倒的に上がる - 開発のクオリティも上がる - 興味が尽きなくなる - 息の長い知識になる まとめ2 今回は Ruby を例にしましたが、どんな技術でも言える
fin