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輪読会etc.の紹介/fbc-event-expo-2025
Search
ryufuta
September 06, 2025
Programming
55
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
メタプログラミングRuby 輪読会 etc.の紹介/fbc-event-expo-2025
ryufuta
September 06, 2025
More Decks by ryufuta
See All by ryufuta
迷ってたけど行って良かったRubyKaigi/rubykaigi-fbc-event
ryufuta
1
25
Other Decks in Programming
See All in Programming
LaravelLive Japan の裏方のすべて — 第188回 PHP勉強会@東京 (2026-06-24)
suguruooki
2
130
エージェンティックRAGにAWSで入門しよう!
har1101
9
1.8k
その問い、本当に正しいですか?AI時代のエンジニアに必要な哲学と認知科学 / ai-philosophy-cognitive-science
minodriven
14
6.5k
Skillsは効率化、Agentsは"自分の拡張"——Builder時代のエージェント編成(CC Night 2026)
wemra
1
170
なぜ型を書くのか? TSKaigi2026で改めて考える #tskaigi_smarthr
kajitack
0
170
技術的負債解消で開発者の未来を開く- AIの力でコード刷新
kmd2kmd
0
120
Hatena Engineer Seminar #37「言語モデルの活用に関する研究」
slashnephy
0
350
AIキャラアプリkaiwaの低遅延音声通話基盤をどう作ったか - AWS Gravitonで支える低遅延・低コストAI Agent基盤
mogamit
0
120
Datadog LLM Observabilityで実現する 安全なLLM Usage 管理
3150
0
120
[2026年度第1回ORセミナー] 計画最適化ベンチャーと競技プログラミング人材
terryu16
0
280
さぁV100、メモリをお食べ・・・
nilpe
0
160
気づいたらRubyで100作品 ー クリエイティブコーディングが生活の一部になるまで / 100 Ruby Sketches Later: How Creative Coding Became Part of My Life
chobishiba
3
610
Featured
See All Featured
Introduction to Domain-Driven Design and Collaborative software design
baasie
1
870
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
360
30k
Beyond borders and beyond the search box: How to win the global "messy middle" with AI-driven SEO
davidcarrasco
3
170
How to Ace a Technical Interview
jacobian
281
24k
How to Get Subject Matter Experts Bought In and Actively Contributing to SEO & PR Initiatives.
livdayseo
0
150
Agile Actions for Facilitating Distributed Teams - ADO2019
mkilby
0
210
Done Done
chrislema
186
16k
Leo the Paperboy
mayatellez
7
1.9k
SEO Brein meetup: CTRL+C is not how to scale international SEO
lindahogenes
1
2.7k
How People are Using Generative and Agentic AI to Supercharge Their Products, Projects, Services and Value Streams Today
helenjbeal
1
220
Testing 201, or: Great Expectations
jmmastey
46
8.2k
How STYLIGHT went responsive
nonsquared
100
6.2k
Transcript
メタプログラミングRuby 輪読会 etc.の紹介 フィヨルドブートキャンプ 定期イベントEXPO 2025 @ryufuta
自己紹介 • リュウ(@ryufuta) • FBC入会2年 • 現在のプラクティス:チーム開発 • 前職:SIerの研究員(コードは書かず、ほぼコンサル) •
趣味:技術書や数学書を読むこと(輪読会も趣味でやってます)
紹介する輪読会 • メタプログラミングRuby輪読会 ← これがメイン • Good Code, Bad Code輪読会
← 共同主催 • Nand2Tetris本輪読会 ← @kitarouさん主催(私はサブ)
はじめに • どれも初心者向きではないです • 現在の参加者はプラクティス終盤の人・実務経験者ばかり • 初心者お断りではないので、1回だけ覗きにくるのでも全然OK • すぐプログラミングに役立つタイプの本ではないかも •
積んでしまうのでそういう本こそ輪読会で読みたいという思いがあり ます • 予習・復習は不要 • 私はしっかり復習・深掘りするタイプですが、取り組み方は参加者そ れぞれなのでご安心ください
メタプログラミングRuby輪読会 • Rubyの「魔術」を紹介する本 • 毎週木曜日15:00~16:00 • 進捗 • 2025/7/10に開始して来週9回目 •
全13章のうち2章の中盤 • 想定読者 • チェリー本はだいたい理解しているというレ ベルでないとついていけないかも。。。 • 後半はRailsを学んでいる前提
メタプログラミングとは? 当初の自分の浅い理解 • コードを記述するコードを記述すること • Railsとかのgemで使われている上級者向けテクニック
メタプログラミングの例 メタプログラミング不使用 メタプログラミング(ActiveRecord)使用 ※コードは書籍から引用
選書理由 • Railsがブラックボックスで辛いのを何とかしたい • メタプロが使われてるらしいのでそこを理解すればわかるかも • メタプログラミングへの憧れ • 巷で「魔術」と呼ばれるものがどんなものなのか知りたい •
『ハッカーと画家』に「メタプログラミングが生産性を上げる」的な ことが書いてあった • その後、「実務でメタプロを使ってはいけない」と学んだ。。。 • 中上級者向けの書籍を読むための準備 • 『Rubyのしくみ』、『研鑽Rubyプログラミング』
序盤まで読んだ感想 • メタプログラミングは意外と身近にあった • 厳密な定義は「言語要素を実行時に操作するコードを記述すること」 • `”hello”.class` (=> `String`) みたいなのもメタプロ
• RubyとRailsを「楽に」理解できるようになりそう • 「メタプログラミングを学習すると、いくつかの簡単なルールでRuby の複雑な動作が実現されていることがわかる」的なことが書いてある • 本の語り口は易しいので読みやすい
これからのご参加も歓迎 • まだ序盤なので追いつけます • RubyやRailsを学んだけどわかった気になれない人、仕組みから 学びたい人におすすめ(たぶん) • Ruby Gold試験対策にもなります
Good Code, Bad Code輪読会 • 『リーダブルコード』の現代版・発展版 といった感じの本 • 毎週日曜日9:00~10:30 •
進捗 • 2024/11/17に開始して明日34回目 • 全11章のうち8章の序盤 • 想定読者 • オブジェクト指向プログラミングのプラクテ ィスを修了した人なら何とかついていけるか • 静的型付け言語を全く知らないと難しいかも
進め方 • FBC内の一般的な輪読会と同じ • 毎回進行役を決める • 参加者が分担して音読する • 疑問点・意見があれば共有する •
コード例が静的型付け言語なので適宜Rubyに翻訳しながら読む のが特徴的
輪読会の雰囲気・参加メリット • 会の終了後に30分~1時間雑談することが多いです • 本の内容はハードでも、雰囲気はゆるい? • 休日に早起きして勉強できます
Nand2Tetris本輪読会 • コンピュータをシミュレータ上で一から 作って理解しようという本 • 毎週土曜日8:00~9:00 • 進捗 • 2025/3/22に開始して来週13回目
• 全13章のうち2章の終盤 • 想定読者 • プログラミング経験は少しあれば十分 • 『プログラマの数学』レベルの数学(特に 論理学)を理解していないと難しいかも
• 実装パートはモブプ ロ形式でワイワイ進 めています • コンピュータが0と1 の計算だけで動いて いることを実感でき て楽しいです •
ひとりで読むにはと ても難しい本なので 助かってます
ご清聴ありがとうございました