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
サービスディレクターの 意思決定を支える技術
Search
airreader
July 03, 2017
Programming
8k
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
サービスディレクターの 意思決定を支える技術
airreader
July 03, 2017
More Decks by airreader
See All by airreader
「おもしろがり」からのサービスリリース 〜てがきはてなブログの場合〜
airreader
0
1.5k
Other Decks in Programming
See All in Programming
PHP に部分適用が来るぞ!……ところで何それ?おいしいの? #phpcon / phpcon-2026
shogogg
0
630
これって Effect でできたのでは? / TSKaigi Mashup Kansai #2
susisu
0
200
Augmenting AI with the Power of Jakarta EE
ivargrimstad
0
560
ルールを書いて終わらせないハーネスエンジニアリング
yug1224
4
1.9k
運用ダッシュボードの設計を誰も教えてくれないのだけどみなさんどうしてるんですか? - チームに監視するという文化を根付かせるための第一歩を踏みたい -
satoshi256kbyte
1
110
Android CLI
fornewid
0
220
関東Kaggler会_NVIDIA_Nemotron_コンペ_振り返り
rick_ds
0
540
変わらないものが、変わるものを決める — 意図駆動開発 × イベントソーシング × イミュータブル | What Doesn't Change Decides What Can — IDD × Event Sourcing × Immutability
tomohisa
0
1.5k
Detecting Compromised CI with eBPF and Cilium Tetragon
lizrice
0
180
Terraform標準の組織で AWS CDKをどう使うか
mu7889yoon
1
500
Jindong: Introducing Declarative Haptics in Compose Multiplatform
l2hyunwoo
0
110
琵琶湖の水は止められてもNet--HTTPのリトライは止められない / You might be able to stop the water flow of Lake Biwa but you can't stop Net::HTTP retries
luccafort
PRO
0
670
Featured
See All Featured
SEO in 2025: How to Prepare for the Future of Search
ipullrank
3
3.7k
Claude Code どこまでも/ Claude Code Everywhere
nwiizo
66
57k
svc-hook: hooking system calls on ARM64 by binary rewriting
retrage
2
470
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
16k
The Pragmatic Product Professional
lauravandoore
37
7.4k
End of SEO as We Know It (SMX Advanced Version)
ipullrank
3
4.4k
Product Roadmaps are Hard
iamctodd
55
12k
Claude Code のすすめ
schroneko
67
230k
VelocityConf: Rendering Performance Case Studies
addyosmani
332
25k
Digital Ethics as a Driver of Design Innovation
axbom
PRO
1
360
Visualization
eitanlees
152
17k
Code Reviewing Like a Champion
maltzj
528
40k
Transcript
αʔϏεσΟϨΫλʔͷ ҙࢥܾఆΛࢧ͑Δٕज़ id:AirReader
ࠓճ͢͜ͱ
πʔϧΛ͏·͘ར༻ ͠ίετΛԼ͛Δ͜ ͱͰૉૣ͍ҙࢥܾఆ Λߦ͏͜ͱ͕Ͱ͖Δ
ࣗݾհ
ࣗݾհ w ͯͳ*%"JS3FBEFS w ॴଐגࣜձࣾͯͳ w ৬छσΟϨΫλʔ w גࣜձࣾͯͳʹϢʔβʔαϙʔτ৬ͰΞϧό Πτೖࣾ
w Ϣʔβʔαϙʔτࣾһ࠾༻ w σΟϨΫλʔʹస
αʔϏεϓϥοτϑΥʔϜ νʔϜʹॴଐ͍ͯ͠·͢
αʔϏεϓϥοτϑΥʔϜ νʔϜͬͯͳʹΔνʔϜʁ
ݹ͔͘Βӡ༻͍ͯ͠Δ αʔϏεΛ ҰखʹҾ͖ड͚Δ
w ͯͳμΠΞϦʔ w ͯͳΩʔϫʔυ w ਓྗݕࡧͯͳ w ͯͳϑΥτϥΠϑ w ͯͳάϧʔϓ
w ͯͳελʔ w ͯͳಗ໊μΠΞϦʔ w ࣾͷ෦αʔϏεͳͲ
ΊͪΌͪ͘Όଟ͍
ϝΠϯͰऔΓΜͰΔλεΫ
w ݹ͘ͳͬͯ͠·ͬͨ04͔Βͷ ٫ w ඇޮͳϛυϧΣΞ͔Βͷ٫
߈ܸతʹఫୀ͠ αʔϏεͷޮΛ্͛ ے࣭ͳӡ༻Λࢦ͢
͔͠͠ྑ͍αʔϏε๊͍͑ͯΔ
ఫୀ͚ͩͰ͍ͬͨͳ͍ʂ
Ͱఫୀ.VTUҊ݅ མͱͤͳ͍
Ͱ͖Δ͚ͩϝϯόʔͷΛ ΘͣʹཁΛ͑ͨ ։ൃΛߦ͏ඞཁ͕͋Δ
ͲͷΑ͏ͳมߋΛߦ͏͔ ݕ౼͢Δʹใ͕ඞཁ
ͲΕݹ͍αʔϏεͳͷͰ σʔλͷूܭج൫͍ͬͯ ͳ͍͠ɺ͑Δͷେ
ॳख͔Βॏ͗ͯ͢ ಈ͖͕औΕͳ͍ʜ
ͳΜͱ͔ग़དྷͳ͍͔ʜ
ͳΜͱ͔ग़དྷͳ͍͔ʜ
(PPHMFͷπʔϧ͕ࢲΛٹͬ ͯ͘Ε·ͨ͠ʂ
πʔϧΛར༻͢Δ͜ͱͰ ҙࢥܾఆʹඞཁͳڥΛ खܰʹ༻ҙ͢Δ͜ͱ͕Ͱ͖Δ
ͦͦҙࢥܾఆͱʁ
ҙࢥܾఆɺਓஂମ͕ಛఆͷඪΛୡ͢Δͨ Ίʹɺ͋Δঢ়گʹ͓͍ͯෳͷସҊ͔Βɺ࠷ળ ͷղΛٻΊΑ͏ͱ͢ΔਓؒͷೝతߦҝͰ͋Δɻ ҙࢥܾఆ8JLJQFEJB z z
͕ࣗೲಘͰ͖ΔղΛݟ͚ͭΔ͜ͱ ղͱͦ͜ࢸΔಓےΛڞ༗͢Δ͜ͱ
ҙࢥܾఆσΟϨΫλʔ ͚ͩͰ݁͢Δ࡞ۀͰͳ͍
ϝϯόʔʹΘͬͯ࢝Ίͯ ҙࢥܾఆ͕ߦΘΕͨͱ͍͑Δ
ҙࢥܾఆʹඞཁͳͷ
w ༐ؾ w ใऩूɾੳ w ҙࢤୡ
ҙࢥܾఆΛ્Ήͷ
w ։ൃͷ੍ w ࣗͷࣝෆ w ΤϯδχΞͱͷใ֨ࠩ
։ൃͷ ੍
ओλεΫผʹ͍ͬͯΔ ͕֬ߴ͍ࢪࡦΛ ࠷େޮͰ࣮ΛਐΊ͍ͨ
ࢼߦࡨޡ͢Δ༨༟ͳ͠
ࣗͷࣝ ෆ
ෆ͍ͯ͠Δͷ͔ͬͯΔ ͔ͩΒͦ͜ࢼߦࡨޡ͕͍ͨ͠
ੵۃੑ͔Βൃੜࣦͨ͠ഊ ڐ༰͢Δ͠͞ΕΔ͕ ෆ҆ײ͕ᐫʹͳΔ
ΤϯδχΞͱ ͷใ֨ࠩ
ΤϯδχΞΑΓ σΟϨΫλʔ͕͍࣋ͬͯΔ ใͷํ͕ଟ͍
ಉ͡ใΛ࣋ͬͯͳ͍ͱ அཧ༝ΘΒͳ͍
ͰɺͲ͏͍͏ใΛ ϕʔεʹஅ͍ͯ͠Δͷ͔ ͑Δͷ͚ͬ͜͏େม
πʔϧͰग़དྷΔ͜ͱ w ࣗࣾΤϯδχΞͷͰͳ͘σΟϨΫλʔ ͷͰ w ແҋ୫ͱ৭ʑͳ͜ͱ͕Ͱ͖Δ
πʔϧ͕ղܾͯ͘͠ΕΔ͜ͱ w ײͷෆ҆Λղফ͠ w ࢼߦࡨޡͷνϟϯεΛ༩͑ͯ͘ΕΔ w దʹར༻͢Εɺਖ਼͘͠ใ͕औΕΔɾ ఏࣔͰ͖Δ
w ༐ؾ w ใऩूɾੳ w ҙࢤୡ
w ༐ؾ w ใऩूɾੳ w ҙࢤୡ ͜͜Λࢧ͑ͯ͘ΕΔ
ใऩूྫ
5BH.BOBHFS "OBMZUJDT w 5BH.BOBHFSͷॊೈͳใऔಘઃఆ w "OBMZUJDTͷΧελϜσΟϝϯγϣϯɺΠϕϯ τػೳʹΑΔ๛ͳղੳػೳ w మ൘ͷΈ߹Θͤ
ϖʔδͷछผ͕63-ʹදݱ͞Ε ͍ͯͳ͍͚Ͳ͚ͯूܭ͍ͨ͠
ਓྗݕࡧͷ࣭͕ɺ࣭ܗࣜͳͷ͔ Ξϯέʔτܗࣜͳͷ͔औಘ͍ͨ͠
$44ηϨΫλͷࢦఆͰ ใ͕औಘͰ͖Δ w $44ηϨΫλΛॻ͘ͱ֘ͷ%0.ͷJOOFS5FYU ΛऔಘͰ͖Δ w ଐੑ໊ࢦఆ͢ΔͱଐੑͷΛऔಘͰ͖Δ w $44͕ͪΐͬͱΘ͔Ε୭Ͱ͑Δ
w ΞΠίϯͷҧ͍Ͱϖʔδछ͕औΕΔ w ࠩҟ͕ҰఆͷܗͰදݱ͞Ε͍ͯΕ͑Δ
ෳ͋Δճ༡ಈઢͷͲͷಋઢ͕ ར༻͞Ε͍ͯΔ͔Λݟ͍ͨ
None
ಈઢ৭ʑ͋Δ
ηΫγϣϯͷऔಘ function () { var current = {{element}}.parentNode; while(current) {
if(current.hasAttribute('id')) { return current.getAttribute('id'); } else { current = current.parentNode; } } } w ΫϦοΫ͞Εͨॴ͕ͲͷྖҬͳͷ͔Λऔಘ͍ͨ͠ w ͯͳಗ໊μΠΞϦʔͩͱ্ͷ֊ʹJEଐੑ͕͍͍ͯ ΔɻҎԼͷίʔυͰऔಘͰ͖Δ w ΫϦοΫͷλΠϛϯάͰ"OBMZUJDTͷΠϕϯτʹૹ৴͢Δ
݁Ռ͜͏͍͏άϥϑ͕࡞ΕΔ
ϢʔβʔͷߘΞΫγϣϯ ूܭ͍ͨ͠
Ϣʔβʔߘͷऔಘ • TagManagerͰɺFormૹ৴Λݕ͢Δ͜ͱ͕Ͱ ͖Δ • ͜ΕͱAnalyticsͷΠϕϯτΛΈ߹ΘͤΔͱɺ ߘܥσʔλAnalyticsʹอଘͰ͖Δ • AnalyticsͷػೳͱΈ߹ΘͤΒΕΔͷͰϩάΛू ܭ͢ΔΑΓߴػೳͳ߹
w ༐ؾ w ใऩूɾੳ w ҙࢤୡ
ҙࢥୡ
ैདྷͷ
ػೳͷૂ͍ͱ ͦΕʹରԠ͢ΔࢦඪΛ ఏࣔ͢Δͷ͕େม
ࢦඪ"OBMZUJDT͚ͩͰͳ͍ ࢦඪΛ֬ೝ͢ΔͨΊͷ63-ूΛ ࡞ͬͨΓ͢Δඞཁ͕͋ͬͨ
͜Ε࡞ΔͷݟΔͷେม
"OBMZUJDT 4QSFBETIFFU 4FBSDI$POTPMF %BUB4UVEJP
None
ͯͳಗ໊μΠΞϦʔͷਓؾهࣄΞʔ ΧΠϒػೳϦϦʔε͔࣌Βɺػೳ͝ ͱͷϨϙʔτΛ࡞͢ΔΑ͏ʹͨ͠
ҙਤΛ͑Δͷָ͕ʹͳΔ͠ ͻͱͰঢ়گ͕ѲͰ͖ΔͷͰ ΤϯδχΞ֬ೝָ͕ʹͳΔ
σΟϨΫλʔ୯ಠͰͷ ݶքɾσϝϦοτ
σʔλͷऔಘํ๏ͷڞ༗࿙Ε • CSSηϨΫλIDଐੑͰใΛऔಘ͢Δ ߹ɺHTMLߏʹมߋ͕Ճ͑ΒΕΔͱσʔ λ͕औಘͰ͖ͳ͘ͳΔ ➡ ͜ͷσʔλ͕͑Δɺͱ͍͏͜ͱ͕͔ͬ ͨΒɺదͳλΠϛϯάͰΞϓϦέʔγϣ ϯʹΈࠐ͏
σʔλͷऔಘํ๏ͷڞ༗࿙Ε • AppsScriptSpreadsheetͷؔͳͲͰؤ ுͬͯॲཧͯ͠σʔλΛੜ͍ͯ͠Δ߹ɺ յΕͨ࣌ʹ෮چ͕ࠔ ➡ ͜ͷσʔλ͕͑Δɺͱ͍͏͜ͱ͕͔ͬ ͨΒɺυΩϡϝϯτΛ͢ͳͲ͠Α͏
ղܾํ๏ͷݕ౼ෆ • σʔλΛऔಘํ๏͔Βෳͷํ๏͕͋Γɺ JavaScriptॻ͚ͯ͠·͏ɻσʔλͷอଘͰෳ ͷํ๏͕͋ΓɺΈ߹Θͤͨ͘͞Μ͋ͬͯ͠ ͍ • ࣗͷແବʹ࣌ؒΛ͍ͯ͠Δ߹͋Δ ➡ JavaScriptΤϯδχΞϨϏϡʔʹग़͢ɻઃఆ
ʹෆ͕҆͋Δ߹ଞDʹͯ͠ΈΔɻ࡞ۀ࣌ؒ Λ1-2࣌ؒʹ۠Δ
ղܾํ๏ͷݕ౼ෆ ➡ ઃఆ͕ҟৗʹෳࡶʹͳΔ߹ɺΤϯδ χΞʹ૬ஊ͢Δɻͦͦͬͱྑ͍ղ ܾํ๏͕ݟ͔ͭΔ߹͋Δ
%ʹΑΔใऔಘ ͋͘·ͰҰ࣌తͳͷͳͷͰ σʔλ͕͑Δͱ͔ͬͨΒ ΤϯδχΞͱ૬ஊͯ͠ ༷Λ֬ఆͤ͞·͠ΐ͏
·ͱΊ
(PPHMFͷπʔϧΛ͍ %͚ͩͰίετ ແྉ ʹ ҙࢥܾఆΛߦ͏ͨΊͷڥΛ ͑ΒΕ·͢
πʔϧΛ ղܾ͢ΔͨΊʹඞཁͳ ෛ୲ΛݮΒͯ͘͠ΕΔ
͋͘·Ͱղܾͷ ͍ͪखஈͰ͋Γ πʔϧΛ͏͜ͱ͕ తͰͳ͍
ใղੳίϛϡχέʔγϣ ϯʹϑΥʔΧε͢Δ࣌ؒΛ ૿͠ɺҙࢥܾఆΛՃ͞ ͤɺαʔϏεͷະདྷ࡞Γग़ ͍͖ͯ͠·͠ΐ͏
͓ΘΓ