Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Rubyを好きになった過程
Search
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.7k
【Crystal】Concurrency
atgrandpa
3
960
【Crystal】Macroについて
atgrandpa
3
1.6k
初のサークル参加で気づいた小さなこと
atgrandpa
0
520
Other Decks in Technology
See All in Technology
クラウドエージェントの先駆け Devin。今も最先端を走る、他との違い
kinopeee
1
500
Agent 活用環境の構築・運用のための AWS サービスのご紹介/agentcore-for-building-and-operating-agents
ren8k
1
220
[FECONF-2026] 신대륙을 향한 카카오페이증권 프론트엔드 항해기 (이주승)
l1ghthouse
0
260
Maestro MCPとClaude Code Skillsによる自律的なE2Eテスト支援
asmz
0
320
Patterns in AI Driven Software Development
akosma
PRO
0
320
AIエージェント時代、Kaggleにどう取り組むか
takanao
2
360
生成AI時代、PMは事業責任者に進化するともっと面白い〜PMだからこそ事業構造を動かせる時代に〜
kakehashi
PRO
1
960
Claude Code をローカルとサーバー上で利用した際の Bedrock 利用料をユーザー単位で一本化してみる
ohorig
0
180
OneLakeをデータソースにした AI Search(Foundry IQ)の ライフサイクル管理
ryuseiiida
0
140
Claude Code on Bedrock で統制をかける小ネタ集/claude-code-bedrock-governance-tips
emiki
1
13k
Vue.jsのGitHubから学ぶ意思決定
yut0naga1_fa
1
330
ポケモン対戦を自動で記録して振り返ろう
fufufukakaka
0
420
Featured
See All Featured
Why Our Code Smells
bkeepers
PRO
340
58k
Making the Leap to Tech Lead
cromwellryan
135
10k
世界の人気アプリ100個を分析して見えたペイウォール設計の心得
akihiro_kokubo
PRO
74
43k
Utilizing Notion as your number one productivity tool
mfonobong
4
630
We Are The Robots
honzajavorek
0
410
The AI Search Optimization Roadmap by Aleyda Solis
aleyda
2
6.3k
How to Build an AI Search Optimization Roadmap - Criteria and Steps to Take #SEOIRL
aleyda
1
2.2k
How to Ace a Technical Interview
jacobian
280
24k
Lightning talk: Run Django tests with GitHub Actions
sabderemane
0
300
Navigating the moral maze — ethical principles for Al-driven product design
skipperchong
2
650
Deep Space Network (abreviated)
tonyrice
0
390
Visual Storytelling: How to be a Superhuman Communicator
reverentgeek
2
720
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