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
Comment that actually works
Search
Masafumi Okura
November 16, 2022
Programming
1
170
Comment that actually works
https://icare.connpass.com/event/261601/
【iCARE Dev Meetup #36】Rejected CFP 供養会 2022
での発表資料です。
Masafumi Okura
November 16, 2022
Tweet
Share
More Decks by Masafumi Okura
See All by Masafumi Okura
Metaprogramming isn't real, it can't hurt you
okuramasafumi
0
100
Developing static sites with Ruby
okuramasafumi
1
370
Why doesn't Ruby have Boolean class - final version
okuramasafumi
0
370
Reading Rails 1.0 Source Code
okuramasafumi
0
340
RDoc meets YARD
okuramasafumi
4
210
Why doesn't Ruby have Boolean class?
okuramasafumi
0
42
My KaigiEffect at RubyKaigi 2025, part 1
okuramasafumi
1
92
Writing documentation can be fun with plugin system
okuramasafumi
0
250
Alba: Why, How and What's So Interesting
okuramasafumi
0
480
Other Decks in Programming
See All in Programming
CSC307 Lecture 03
javiergs
PRO
1
490
なぜSQLはAIぽく見えるのか/why does SQL look AI like
florets1
0
480
CSC307 Lecture 04
javiergs
PRO
0
660
日本だけで解禁されているアプリ起動の方法
ryunakayama
0
270
プロダクトオーナーから見たSOC2 _SOC2ゆるミートアップ#2
kekekenta
0
230
AIで開発はどれくらい加速したのか?AIエージェントによるコード生成を、現場の評価と研究開発の評価の両面からdeep diveしてみる
daisuketakeda
1
2.5k
AI Schema Enrichment for your Oracle AI Database
thatjeffsmith
0
330
OSSとなったswift-buildで Xcodeのビルドを差し替えられるため 自分でXcodeを直せる時代になっている ダイアモンド問題編
yimajo
3
630
AIエージェント、”どう作るか”で差は出るか? / AI Agents: Does the "How" Make a Difference?
rkaga
4
2k
高速開発のためのコード整理術
sutetotanuki
1
410
生成AIを使ったコードレビューで定性的に品質カバー
chiilog
1
280
そのAIレビュー、レビューしてますか? / Are you reviewing those AI reviews?
rkaga
6
4.6k
Featured
See All Featured
How STYLIGHT went responsive
nonsquared
100
6k
Conquering PDFs: document understanding beyond plain text
inesmontani
PRO
4
2.3k
Leading Effective Engineering Teams in the AI Era
addyosmani
9
1.6k
Mind Mapping
helmedeiros
PRO
0
90
Sam Torres - BigQuery for SEOs
techseoconnect
PRO
0
190
Reflections from 52 weeks, 52 projects
jeffersonlam
356
21k
How GitHub (no longer) Works
holman
316
140k
SERP Conf. Vienna - Web Accessibility: Optimizing for Inclusivity and SEO
sarafernandez
1
1.3k
コードの90%をAIが書く世界で何が待っているのか / What awaits us in a world where 90% of the code is written by AI
rkaga
60
42k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
2.7k
Leadership Guide Workshop - DevTernity 2021
reverentgeek
1
200
The AI Revolution Will Not Be Monopolized: How open-source beats economies of scale, even for LLMs
inesmontani
PRO
3
3.1k
Transcript
ಈ࡞͠ͳ͍ίϝϯτ ͨͩͷίϝϯτͳͷͰ ಈ࡞͢ΔίϝϯτΛ࡞ͬͨ ʲiCARE Dev Meetup #36ʳRejected CFP ڙཆձ 2022
OKURA Masafumi, 2022-11-16
RubyKaigi
ϓϩϙʔβϧ
མͪͨʘ(^o^)ʗ
༨ஊ
ϓϩϙʔβϧ બͿଆେม
མͪΔʹѱ͍ Ͱͳ͍
ؓٳ
ࣗݾհ • ໊લɿେխ࢙ʢ͓͓͘Β·͞;Έʣ • ॴଐɿϑϦʔϥϯε • ՝֎׆ಈɿKaigi on RailsɺAlbaɺGrow.rbͳͲ •
झຯɿᘖᘣɺOSSɺొஃɺίϛϡχςΟࢀՃͳͲ
͓ɿಈ࡞͢ΔίϝϯτΛ࡞ͬͨ 1.ͳͥ࡞Ζ͏ͱࢥͬͨͷ͔ʁ 2.ͲͷΑ͏ʹ࣮ͨ͠ͷ͔ʁ 3.ΞΠσΞΛࢥ͍͖ͭɺ࣮ݱ͢Δ·Ͱ
ಈ࡞͢Δίϝϯτ
Xa https://github.com/ okuramasafumi/xa
eXecutable annotation
1. ͳͥ࡞Ζ͏ͱ ࢥͬͨͷ͔
ͦΕɺίϝϯτ ͡Όͳͯ͘ Α͘ͳ͍ʁ
ྫɿ ʮ͜ͷΫϥεΛܧঝͨ͠ αϒΫϥεfooϝιουΛ ΦʔόʔϥΠυ͢Δ͜ͱʯ
ίϝϯτ͕ ͋ͬͯ ಡ·ΕΔͱ ݶΒͳ͍
ίϝϯτͷࢦࣔ ಈ࡞͠ͳ͍
ಈ࡞͢Δίϝϯτ ͱʁ
DSLͱͯ͠ͷ ίϝϯτ
Rubyͷදݱྗ ͳΒՄೳͰʁ
2. ͲͷΑ͏ʹ ࣮ͨ͠ͷ͔
ΤσΟλ
3. ΞΠσΞΛ ࢥ͍͖ͭɺ ࣮ݱ͢Δ·Ͱ
ΞΠσΞΛ࣮ݱ͢ΔͨΊͷώϯτ I.ࠣࡉͳಈػΛେʹ͢Δ II.ݴޠΛΑ͘ཧղ͢Δ III.࡞Γଓ͚Δ
ⅰ. ࠣࡉͳಈػΛ େʹ͢Δ
ࢥ͍͖ͭ
ཱͪ
ࣗҰਓͰ ͳ͍ͷ͔ʁ
PoC (Proof of Concept)
࣌ؒͰ ࡞ͬͯΈΔ
ⅱ. ݴޠΛΑ͘ ཧղ͢Δ
ݴޠ࠷ جຊతͳπʔϧ
XaʹඞཁͩͬͨRubyͷࣝ • ϒϩοΫͷதΛઐ༻ͷධՁΦϒδΣΫτͰinstance_eval͢Δ͜ͱ ͰɺͦͷΦϒδΣΫτͷதʹཁૉΛด͡ࠐΊΔ͜ͱ͕Ͱ͖Δ • ϝιουݺͼग़ׅ͠ހ͕লུͰ͖Δ • ฏจͬΆ͍ݟ࣮ͨݱͰ͖Δ • TracePointΛ͑DSLͷ༰Λޙ͔ΒݕূͰ͖Δ
Ruby͍͢͝
ݴޠΛΑ͘ཧղ ͍ͯ͠ͳ͍ͱ ࡞Εͳ͍ͷ͋Δ
ⅲ. ࡞Γଓ͚Δ
Xa͕ࣗ࡞ͬͨ ͍͍ͩͨ7ݸ ͘Β͍ͷgem
࡞͖ͬͯͨgemͷҰ෦ • YusoɿӡૹྉۚσʔλϕʔεɺॳΊͯ࡞͕ͬͨϝϯς͞Εͯͳ͍ • AlbaɿJSONγϦΞϥΠβɺද࡞ • rubocop-sensibleɿRuboCopͷطఆͷઃఆΛஔ͖͑Δ • necoɿίϚϯυύλʔϯͷ࣮ɺվमத •
tiny_hooksɿίʔϧόοΫ࣮ɺActiveSupportΑΓ͔ͳΓ͍
౷Ұੑͳ͍
͋Ε͜Εࢼ͢
ද࡞ͷAlba ଟ4ͭ ͘Β͍ͷgem
࡞Γଓ͚Δ
·ͱΊ
ΞΠσΞΛܗʹ ͢ΔͨΊʹඞཁͳ ͷ
ΞΠσΞͦͷͷ
ٕज़
ҙࢥ
ͬͯΈΑ͏ʂ
Happy hacking!