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
Chrome Extension Techniques from Hell
Search
moznion
April 09, 2025
Programming
1
200
Chrome Extension Techniques from Hell
プロポーザルの余白を読み解くRubyKaigi 2025 (
https://smartbank.connpass.com/event/347455/
) のLT資料です。
moznion
April 09, 2025
Tweet
Share
More Decks by moznion
See All by moznion
RubyKaigi Hack Space in Tokyo & 函館最速 "予習" 会 / RubyKaigi Hack Space in Tokyo & The Fastest Briefing of RubyKaigi 2026 in Hakodate
moznion
1
130
地に足の付いた現実的な技術選定から魔力のある体験を得る『AIレシート読み取り機能』のケーススタディ / From Grounded Tech Choices to Magical UX: A Case Study of AI Receipt Scanning
moznion
6
4k
Simple組み合わせ村から大都会Railsにやってきた俺は / Coming to Rails from the Simple
moznion
4
7.6k
AIレシート読み取り機能をRuby on Rails on AWSで実現するLLMにまつわるアレコレ / AI-based receipt reading function powered by LLM on Ruby on Rails on AWS
moznion
3
880
Develop to Survive - YAPC::Hakodate 2024 Keynote
moznion
11
18k
これはPerl? それともRuby? クイズ〜〜〜〜〜!!!- Perl or Ruby Quiz
moznion
3
2.8k
Perl 5 OOP機構30年史 - Perl 5's OOP Mechanism over the past 30 years
moznion
1
1.1k
RuboCopのカスタムCopを書いてContributionしてみる - Contributing a Custom Cop to RuboCop: A Hands-on Experience
moznion
0
89
AWS上に構築する メンテ容易なElasticsearch System / Maintainable Elasticsearch system on AWS
moznion
2
4k
Other Decks in Programming
See All in Programming
ドメインモデリングにおける抽象の役割、tagless-finalによるDSL構築、そして型安全な最適化
knih
10
1.8k
Perlで痩せる
yuukis
1
680
Blueskyのプラグインを作ってみた
hakkadaikon
1
520
統一感のある Go コードを生成 AI の力で手にいれる
otakakot
0
3k
Javaに鉄道指向プログラミング (Railway Oriented Pro gramming) のエッセンスを取り入れる/Bringing the Essence of Railway-Oriented Programming to Java
cocet33000
2
540
実はすごいスピードで進化しているCSS
hayato_yokoyama
0
110
UPDATEがシステムを複雑にする? イミュータブルデータモデルのすすめ
shimomura
1
530
Beyond Portability: Live Migration for Evolving WebAssembly Workloads
chikuwait
0
350
SODA - FACT BOOK
sodainc
1
840
The Evolution of Enterprise Java with Jakarta EE 11 and Beyond
ivargrimstad
1
640
エラーって何種類あるの?
kajitack
5
140
無関心の谷
kanayannet
0
160
Featured
See All Featured
Balancing Empowerment & Direction
lara
1
290
Art, The Web, and Tiny UX
lynnandtonic
299
21k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
34
3k
Building a Scalable Design System with Sketch
lauravandoore
462
33k
Agile that works and the tools we love
rasmusluckow
329
21k
VelocityConf: Rendering Performance Case Studies
addyosmani
329
24k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.4k
Site-Speed That Sticks
csswizardry
10
630
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.3k
Rails Girls Zürich Keynote
gr2m
94
14k
Code Review Best Practice
trishagee
68
18k
A designer walks into a library…
pauljervisheath
206
24k
Transcript
$ISPNF&YUFOTJPO5FDIOJRVFTGSPN)FMM ʙ%FCVHHFSฤʙ ਫ ϓϩϙʔβϧͷ༨നΛಡΈղ͘3VCZ,BJHJ גࣜձࣾεϚʔτόϯΫ!NP[OJPO
4NBSU#BOL *OD 4PGUXBSF&OHJOFFS 5BJLJ,BXBLBNJ !NP[OJPO !NP[OJPO !NP[OJPO !NP[OJPO
$ISPNF&YUFOTJPO
$ISPNF&YUFOTJPOͱ ུ օ͞Μ͝ଘ
$ISPNF&YUFOTJPO࡞ͬͯ·͔͢
࠷ۙ࡞ͬͨͭ IUUQTDISPNFXFCTUPSFHPPHMFDPNEFUBJMDMJQPMJOFFLNHHHMKLHQEHBMQBJMHJCMBMDNNFDOI IMKB
NP[OJPODMJQPMJOF ݟͯΔ8FCϖʔδΛ 1MBJO5FYU .BSLEPXO 1%'ͷ͍ͣΕ͔ʹม͠ (PPHMF%PDT͋Δ͍/PUFCPPL-.ʹΞοϓϩʔυ͢Δ
NP[OJPODMJQPMJOF ݟͯΔ8FCϖʔδΛ 1MBJO5FYU .BSLEPXO 1%'ͷ͍ͣΕ͔ʹม͠ (PPHMF%PDT͋Δ͍/PUFCPPL-.ʹΞοϓϩʔυ͢Δ
$ISPNF֦ு্Ͱ8FCϖʔδΛ1%'ʹ͢Δํ๏ KT1%'ͱ͔ͰΫϥΠΞϯταΠυͰؤுΔ Ұ୴αʔόʔʹૹͬͯ1%'Λ࡞ͤ͞Δ
$ISPNF֦ு্Ͱ8FCϖʔδΛ1%'ʹ͢Δํ๏ KT1%'ͱ͔ͰΫϥΠΞϯταΠυͰؤுΔ Ұ୴αʔόʔʹૹͬͯ1%'Λ࡞ͤ͞Δ 6NNN🤨
$ISPNF֦ு্Ͱ8FCϖʔδΛ1%'ʹ͢Δํ๏ KT1%'ͱ͔ͰΫϥΠΞϯταΠυͰؤுΔ Ұ୴αʔόʔʹૹͬͯ1%'Λ࡞ͤ͞Δ $ISPNFͷҹػೳΛ͏ 💡
$ISPNFͷҹ
$ISPNFͷҹ ͜ΕΛ֦ு͔ΒݺΔͱྑ͍
%FCVHHFS
%FCVHHFS 5IF DISPNFEFCVHHFS "1*TFSWFTBTBOBMUFSOBUFUSBOTQPSUGPS $ISPNFT SFNPUFEFCVHHJOHQSPUPDPM6TF DISPNFEFCVHHFS UPBUUBDIUP POFPSNPSFUBCTUPJOTUSVNFOUOFUXPSLJOUFSBDUJPO
EFCVH+BWB4DSJQU NVUBUFUIF%0.BOE$44 BOENPSF6TFUIF %FCVHHFF QSPQFSUZ UBC*E UP UBSHFUUBCTXJUI TFOE$PNNBOE BOESPVUFFWFOUT CZ UBC*E GSPN PO&WFOU DBMMCBDLT IUUQTEFWFMPQFSDISPNFDPNEPDTFYUFOTJPOTSFGFSFODFBQJEFCVHHFS
%FCVHHFS
%FCVHHFS 5IF DISPNFEFCVHHFS "1*TFSWFTBTBOBMUFSOBUFUSBOTQPSUGPS $ISPNFT SFNPUFEFCVHHJOHQSPUPDPM6TF DISPNFEFCVHHFS UPBUUBDIUP POFPSNPSFUBCTUPJOTUSVNFOUOFUXPSLJOUFSBDUJPO
EFCVH+BWB4DSJQU NVUBUFUIF%0.BOE$44 BOENPSF6TFUIF %FCVHHFF QSPQFSUZ UBC*E UP UBSHFUUBCTXJUI TFOE$PNNBOE BOESPVUFFWFOUT CZ UBC*E GSPN PO&WFOU DBMMCBDLT IUUQTEFWFMPQFSDISPNFDPNEPDTFYUFOTJPOTSFGFSFODFBQJEFCVHHFS
1BHFQSJOU5P1%' ̈IUUQTDISPNFEFWUPPMTHJUIVCJPEFWUPPMTQSPUPDPMUPU1BHFNFUIPEQSJOU5P1%'
1BHFQSJOU5P1%' ̈IUUQTDISPNFEFWUPPMTHJUIVCJPEFWUPPMTQSPUPDPMUPU1BHFNFUIPEQSJOU5P1%' ͋Δʂʂʂʂʂʂʂʂ
1BHFQSJOU5P1%'
NP[OJPODMJQPMJOF ݟͯΔ8FCϖʔδΛ 1MBJO5FYU .BSLEPXO 1%'ͷ͍ͣΕ͔ʹม͠ (PPHMF%PDT͋Δ͍/PUFCPPL-.ʹΞοϓϩʔυ͢Δ
࣌ɺ/PUFCPPL-.ʹ ެ։"1*͕ଘࡏ͠ͳ͍ʂʂʂ
/PUFCPPL-.ʹެ։"1*͕ଘࡏ͠ͳ͍ ͳΜͱ͔ͯ͠ΞοϓϩʔυॲཧΛ࣮͢Δඞཁ͕͋Δɻ ํ๏ ؤுͬͯGFUDI͢ΔͳΓͳΜͳΓͰΔ ࣮ࡍʹ8FC7JFXΛૢ࡞͢Δ
/PUFCPPL-.ʹެ։"1*͕ଘࡏ͠ͳ͍ ͳΜͱ͔ͯ͠ΞοϓϩʔυॲཧΛ࣮͢Δඞཁ͕͋Δɻ ํ๏ ؤுͬͯGFUDI͢ΔͳΓͳΜͳΓͰΔ ࣮ࡍʹ8FC7JFXΛૢ࡞͢Δ )NNNN
̈IUUQTQQUSEFWHVJEFTSVOOJOHQVQQFUFFSJOFYUFOTJPOT
̈IUUQTQQUSEFWHVJEFTSVOOJOHQVQQFUFFSJOFYUFOTJPOT
‼‼‼‼‼‼‼‼ ̈IUUQTQQUSEFWHVJEFTSVOOJOHQVQQFUFFSJOFYUFOTJPOT
3VOOJOH1VQQFUFFSJO$ISPNFFYUFOTJPOT $ISPNF&YUFOTJPOͰ1VQQFUFFS͕ಈ͘ʂ ෦ڍಈͱͯ͠%FCVHHFSܦ༝Ͱϒϥβʹ1VQQFUFFS͕ Ξλον͠ɺ࣮ࡍʹλϒΛ։͍ͯͦΕΛૢ࡞͢Δͱ͍͏ ඇৗʹෆؾຯײతͳڍಈΛ͢Δɻ
%FNP
1%'ॲཧͰ͍Ζ͍Ζ͍͕ͬͯͨʜʜ 1VQQFUFFS͕ಈ͘ͷͰ͋Εɺ࣮A1BHFQSJOU5P1%'AΛ ݺͿඞཁͳ͘1VQQFUFFSͷA1BHFQEG AΛݺྑ͍ ̈IUUQTQQUSEFWHVJEFTQEGHFOFSBUJPO
·ͱΊ
·ͱΊ $ISPNF&YUFOTJPOͷ%FCVHHFS͘͢͝ɺ΄΅ͳΜͰͰ͖Δ /PUFCPPL-.ૣ͘1VCMJD"1*Λఏڙͯ͠΄͍͠