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
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
at_grandpa
August 02, 2018
Technology
1.6k
3
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Rubyを好きになった過程
表参道.rb #37 ~ Ruby/Railsの学び方 ~
https://omotesandorb.connpass.com/event/95518/
イベント発表資料です。
at_grandpa
August 02, 2018
More Decks by at_grandpa
See All by at_grandpa
技術書典5でチャレンジしたあれこれ
atgrandpa
3
2k
CSS組版おもしろい!
atgrandpa
1
340
技術同人誌を執筆して得たこと
atgrandpa
3
1.6k
【Crystal】Concurrency
atgrandpa
3
950
【Crystal】Macroについて
atgrandpa
3
1.5k
初のサークル参加で気づいた小さなこと
atgrandpa
0
510
Other Decks in Technology
See All in Technology
オブザーバビリティ、本当に活用できてる? 〜API連携×生成AIで成熟度を自動評価〜
dmmsre
1
3.6k
kaonavi Tech Night#1
kaonavi
0
100
ruby.wasmとPicoRuby.wasmに対応した仮想DOMライブラリを作ってる話 #kaigieffect_kaigi
sue445
PRO
0
150
ZOZOTOWNの進化と信頼性を両立する負荷試験
zozotech
PRO
2
240
脱金融のフューチャー・デザイン / Future Design Beyond Finance
ks91
PRO
0
160
知らん間に、回ってる
ming_ayami
0
730
Playwright × AI Agent でE2Eテストはどう変わるか AI駆動テストの可能性と実用検証の結果
taiga7543
1
300
AmplifyHostingConstructからSSRフレームワークのためのホスティング設計を考察する/amplify-hosting-construct
fossamagna
1
240
Control Planeで育てるBtoB SaaSの認証基盤 - SRE NEXT 2026
pokohide
1
2.6k
AIと共生する開発者プラットフォーム:バクラクのモノレポ×マイクロサービス基盤
sakajunquality
2
3.8k
関数型の考えを TypeScript に持ち込んで、テストしやすい純粋関数を増やす / Pure at the Core, Effects at the Edge: Bringing Functional Thinking into TypeScript
kaminashi
2
130
Amazon EVS で VCF 9.0 / 9.1 のサポート開始まとめ
mtoyoda
0
310
Featured
See All Featured
The Pragmatic Product Professional
lauravandoore
37
7.4k
Noah Learner - AI + Me: how we built a GSC Bulk Export data pipeline
techseoconnect
PRO
0
220
技術選定の審美眼(2025年版) / Understanding the Spiral of Technologies 2025 edition
twada
PRO
118
120k
How Software Deployment tools have changed in the past 20 years
geshan
0
34k
What the history of the web can teach us about the future of AI
inesmontani
PRO
1
630
Dominate Local Search Results - an insider guide to GBP, reviews, and Local SEO
greggifford
PRO
0
210
Reality Check: Gamification 10 Years Later
codingconduct
0
2.2k
Lightning Talk: Beautiful Slides for Beginners
inesmontani
PRO
2
610
30 Presentation Tips
portentint
PRO
1
350
Conquering PDFs: document understanding beyond plain text
inesmontani
PRO
4
2.9k
The #1 spot is gone: here's how to win anyway
tamaranovitovic
3
1.1k
Applied NLP in the Age of Generative AI
inesmontani
PRO
4
2.4k
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