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
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
moznion
April 09, 2025
Programming
320
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Chrome Extension Techniques from Hell
プロポーザルの余白を読み解くRubyKaigi 2025 (
https://smartbank.connpass.com/event/347455/
) のLT資料です。
moznion
April 09, 2025
More Decks by moznion
See All by moznion
cccccc
moznion
0
2.1k
履歴テーブル、今回はこう作りました 〜 Delegated Types編 〜 / How We Built Our History Table This Time — With Delegated Types
moznion
16
15k
「データ無い! 腹立つ! 推論する!」から 「データ無い! 腹立つ! データを作る」へ チームでデータを作り、育てられるようにするまで / How can we create, use, and maintain data ourselves?
moznion
11
7.4k
避けられないI/O待ちに対処する: Rails アプリにおけるSSEとasync gemの活用 / Tackling Inevitable I/O Latency in Rails Apps with SSE and the async gem
moznion
4
8.5k
RubyKaigi Hack Space in Tokyo & 函館最速 "予習" 会 / RubyKaigi Hack Space in Tokyo & The Fastest Briefing of RubyKaigi 2026 in Hakodate
moznion
1
440
地に足の付いた現実的な技術選定から魔力のある体験を得る『AIレシート読み取り機能』のケーススタディ / From Grounded Tech Choices to Magical UX: A Case Study of AI Receipt Scanning
moznion
7
5.1k
Simple組み合わせ村から大都会Railsにやってきた俺は / Coming to Rails from the Simple
moznion
4
8.9k
AIレシート読み取り機能をRuby on Rails on AWSで実現するLLMにまつわるアレコレ / AI-based receipt reading function powered by LLM on Ruby on Rails on AWS
moznion
3
1.3k
Develop to Survive - YAPC::Hakodate 2024 Keynote
moznion
11
25k
Other Decks in Programming
See All in Programming
AIキャラアプリkaiwaの低遅延音声通話基盤をどう作ったか - AWS Gravitonで支える低遅延・低コストAI Agent基盤
mogamit
0
180
php-fpmのプロセスが枯渇した日-調査・対処・そして本当にやるべきだったこと-
shibuchaaaan
0
110
AI時代、エンジニアはどう育つのか -未経験エンジニアの成長を間近で見て考えたこと-
thasu0123
0
140
Built Our Own Background Agent at LayerX #aidevex_findy
layerx
PRO
7
2.7k
ITヒヤリハットを整理してみた ~ライフサイクルと原因から考える再発防止策~
koukimiura
1
110
これからAgentCoreを触る方へトレンドはGatewayです
har1101
6
500
「正の参照」と 「負の導出」で組む ハーネスエンジニアリング
cottpan
1
150
【やさしく解説 設計編 #0】DDDのコード、読めるのに分からない人へ
panda728
PRO
2
270
AI駆動開発を妨げる技術的負債の解消アプローチ / ai-refactoring-approach
minodriven
17
9.2k
Generative UI & AI-Assistants for Your Angular Solutions
manfredsteyer
PRO
0
120
Augmenting AI with the Power of Jakarta EE
ivargrimstad
0
110
アルゴリズムは何を圧縮しているのか ─ Haskell から育った「圧縮代数」というメンタルモデル
naoya
16
3.6k
Featured
See All Featured
Information Architects: The Missing Link in Design Systems
soysaucechin
0
1k
Measuring & Analyzing Core Web Vitals
bluesmoon
9
900
Building Better People: How to give real-time feedback that sticks.
wjessup
370
20k
DevOps and Value Stream Thinking: Enabling flow, efficiency and business value
helenjbeal
1
260
Statistics for Hackers
jakevdp
799
230k
Git: the NoSQL Database
bkeepers
PRO
432
67k
Applied NLP in the Age of Generative AI
inesmontani
PRO
4
2.4k
Claude Code のすすめ
schroneko
67
230k
GitHub's CSS Performance
jonrohan
1033
470k
New Earth Scene 8
popppiees
3
2.4k
Google's AI Overviews - The New Search
badams
0
1.1k
The Impact of AI in SEO - AI Overviews June 2024 Edition
aleyda
5
1.1k
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*Λఏڙͯ͠΄͍͠