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
150
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
Simple組み合わせ村から大都会Railsにやってきた俺は / Coming to Rails from the Simple
moznion
4
6.6k
AIレシート読み取り機能をRuby on Rails on AWSで実現するLLMにまつわるアレコレ / AI-based receipt reading function powered by LLM on Ruby on Rails on AWS
moznion
3
760
Develop to Survive - YAPC::Hakodate 2024 Keynote
moznion
10
17k
これはPerl? それともRuby? クイズ〜〜〜〜〜!!!- Perl or Ruby Quiz
moznion
3
2.7k
Perl 5 OOP機構30年史 - Perl 5's OOP Mechanism over the past 30 years
moznion
1
1k
RuboCopのカスタムCopを書いてContributionしてみる - Contributing a Custom Cop to RuboCop: A Hands-on Experience
moznion
0
82
AWS上に構築する メンテ容易なElasticsearch System / Maintainable Elasticsearch system on AWS
moznion
2
3.9k
PROXY Protocol aware Proxy Server on Node.js
moznion
2
2.5k
Perl meets AWS Lambda
moznion
0
4.8k
Other Decks in Programming
See All in Programming
Compose Hot Reload is here, stop re-launching your apps! (Android Makers 2025)
zsmb
1
310
データベースエンジニアの仕事を楽にする。PgAssistantの紹介
nnaka2992
9
4.4k
AtCoder Heuristic First-step Vol.1 講義スライド(山登り法・焼きなまし法編)
takumi152
4
1k
snacks.nvim内のセットアップ不要なプラグインを紹介 / introduce_snacks_nvim
uhooi
0
370
家族・子育て重視/沖縄在住を維持しながらエンジニアとしてのキャリアをどのように育てていくか?
ug
0
260
フロントエンドテストの育て方
quramy
11
2.8k
コンテナでLambdaをデプロイするときに知っておきたかったこと
_takahash
0
170
PHPのガベージコレクションを深掘りしよう
rinchoku
0
260
本当だってば!俺もTRICK 2022に入賞してたんだってば!
jinroq
0
280
Coding Experience Cpp vs Csharp - meetup app osaka@9
harukasao
0
630
小さく段階的リリースすることで深夜メンテを回避する
mkmk884
2
150
Preact、HooksとSignalsの両立 / Preact: Harmonizing Hooks and Signals
ssssota
1
1.1k
Featured
See All Featured
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
17
1.1k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
177
52k
Why Our Code Smells
bkeepers
PRO
336
57k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
40
2.1k
Building an army of robots
kneath
304
45k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.5k
What’s in a name? Adding method to the madness
productmarketing
PRO
22
3.4k
Optimising Largest Contentful Paint
csswizardry
35
3.2k
How STYLIGHT went responsive
nonsquared
99
5.4k
We Have a Design System, Now What?
morganepeng
51
7.5k
Building a Scalable Design System with Sketch
lauravandoore
462
33k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
30
2.3k
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*Λఏڙͯ͠΄͍͠