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
54
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
AIチームを指揮するOSS「TAKT」活用術 / How to Use “TAKT,” an OSS Tool for Orchestrating AI Teams
nrslib
6
840
Webフレームワークの ベンチマークについて
yusukebe
0
140
CSC307 Lecture 17
javiergs
PRO
0
320
Oxlintのカスタムルールの現況
syumai
6
1k
「AIで開発し、AIを届ける」をEvalでつなぐ 〜AIネイティブに始めるプロダクト開発の実践〜 / Connecting "Develop with AI, deliver AI" with Eval
rkaga
4
4.7k
技術記事、AIに書かせるか、自分で書くか? 〜それでも私が自分の手で書く理由〜 / #QiitaConference
jnchito
2
1.3k
肥大化するレガシーコードに立ち向かうためのインターフェース分離と依存の逆転 / JJUG CCC 2026 Spring
hirokunimaeta
0
510
Semantic Version 単位で戦略を柔軟に変えて、パッケージアップデートを自動化する
daitasu
0
170
CLIであることを活かしたGitHub Copilot CLI活用術 / GitHub Copilot CLI Pro Tips & Tricks
nao_mk2
1
1.2k
Swiftのレキシカルスコープ管理
kntkymt
0
220
Language Server 使ってる? 〜VSCode と Zed の場合〜 / Are you using a Language Server? ~For VS Code and Zed~
handlename
0
770
軽量Java基盤の設計 DIコンテナに頼らない、長期保守と1秒起動の実現 JJUG CCC 2026 Spring
macha64
0
470
Featured
See All Featured
The Impact of AI in SEO - AI Overviews June 2024 Edition
aleyda
5
1.1k
Darren the Foodie - Storyboard
khoart
PRO
3
3.4k
sira's awesome portfolio website redesign presentation
elsirapls
0
270
How to audit for AI Accessibility on your Front & Back End
davetheseo
0
400
HTML-Aware ERB: The Path to Reactive Rendering @ RubyCon 2026, Rimini, Italy
marcoroth
1
160
We Analyzed 250 Million AI Search Results: Here's What I Found
joshbly
1
1.3k
Making Projects Easy
brettharned
120
6.7k
[SF Ruby Conf 2025] Rails X
palkan
2
1.1k
Claude Code どこまでも/ Claude Code Everywhere
nwiizo
65
56k
Marketing Yourself as an Engineer | Alaka | Gurzu
gurzu
0
210
Odyssey Design
rkendrick25
PRO
2
690
Exploring the relationship between traditional SERPs and Gen AI search
raygrieselhuber
PRO
2
4k
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 の計算だけで動いて いることを実感でき て楽しいです •
ひとりで読むにはと ても難しい本なので 助かってます
ご清聴ありがとうございました