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.5k
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
1.9k
CSS組版おもしろい!
atgrandpa
1
300
技術同人誌を執筆して得たこと
atgrandpa
3
1.5k
【Crystal】Concurrency
atgrandpa
3
860
【Crystal】Macroについて
atgrandpa
3
1.4k
初のサークル参加で気づいた小さなこと
atgrandpa
0
490
Other Decks in Technology
See All in Technology
LinkX_GitHubを基点にした_AI時代のプロジェクトマネジメント.pdf
iotcomjpadmin
0
160
AWS Summit Japan 2025 Community Stage - App workflow automation by AWS Step Functions
matsuihidetoshi
1
140
ハノーバーメッセ2025座談会.pdf
iotcomjpadmin
0
150
~宇宙最速~2025年AWS Summit レポート
satodesu
1
1.4k
標準技術と独自システムで作る「つらくない」SaaS アカウント管理 / Effortless SaaS Account Management with Standard Technologies & Custom Systems
yuyatakeyama
2
1k
Amplifyとゼロからはじめた AIコーディング 成果と展望
mkdev10
1
360
In Praise of "Normal" Engineers (LDX3)
charity
3
1.2k
原則から考える保守しやすいComposable関数設計
moriatsushi
3
500
BigQuery Remote FunctionでLooker Studioをインタラクティブ化
cuebic9bic
2
230
実践! AIエージェント導入記
1mono2prod
0
140
Definition of Done
kawaguti
PRO
6
460
Clineを含めたAIエージェントを 大規模組織に導入し、投資対効果を考える / Introducing AI agents into your organization
i35_267
4
1.4k
Featured
See All Featured
RailsConf 2023
tenderlove
30
1.1k
Imperfection Machines: The Place of Print at Facebook
scottboms
267
13k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
228
22k
4 Signs Your Business is Dying
shpigford
184
22k
Code Reviewing Like a Champion
maltzj
524
40k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
31
1.2k
What’s in a name? Adding method to the madness
productmarketing
PRO
22
3.5k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
50k
Done Done
chrislema
184
16k
The Pragmatic Product Professional
lauravandoore
35
6.7k
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
26k
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