Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
How Developer Support Works
Search
Naoki Ainoya
March 11, 2017
Programming
2.8k
10
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
How Developer Support Works
「開発支援という仕事」
Battle Conference U30 登壇資料
https://battleconference-u30.connpass.com/event/49985/
Naoki Ainoya
March 11, 2017
More Decks by Naoki Ainoya
See All by Naoki Ainoya
Looker BEACON 2021 / How we implemented Scalebase Analytics with Looker
ainoya
0
2.8k
Salesforce Application Development with GitHub Actions and sfdx-cli
ainoya
1
3.9k
Scalebase Analytics powered by Looker
ainoya
0
2.6k
SPIFFE in Action
ainoya
4
1.7k
リクルートマーケティングパートナーズでのDeployGate活用事例
ainoya
2
4.5k
[RMPxQuipper meetup #3]開発のための開発~スマホアプリ向けe2eテストの検証導入事例を通じて~
ainoya
1
2.5k
How to play Scala on dockerized infrastructure
ainoya
4
3.3k
prevs.io開発の裏側とコンテナ仮想化時代のAPI運用
ainoya
4
2.5k
ビルドパイプラインツールをGoで作った話
ainoya
3
2.7k
Other Decks in Programming
See All in Programming
Agentic Software Factoryに、すごく賢いIF文を。 / super smart IF statement into the Agentic Software Factory.
rkaga
0
120
Embedded Swiftで作る自作USBデバイス によるiOSデバイスの自動テスト / iOSDC Japan 2026 glassfiber
glassfiber
0
250
AWS CDKのカスタムリソースでContinuum(旧Security Agent)を実装した話 | Implementing Continuum (formerly Security Agent) via AWS CDK Custom Resource
akihisaikeda
2
120
技術的負債を組織課題として解く-増えすぎたマイクロサービスとの戦い-
reimaru
1
2.6k
IBM Bob Dojo #1 仕様駆動開発入門
oniak3ibm
PRO
0
320
UnityでSystem.Net.WebSocketsなWebSocketサーバが動かないのでUnity Monoのコードを覗いてみた / about implementing websocket server with unity mono
drumath2237
1
520
世界の中心で、AI(App Intents)をさけぶ ー App Intents中心設計の実践ガイド
touyou
0
750
コードレビューのボトルネックを"する側"と"される側"の両面から解消する
yub0n
2
1.3k
Workers Cache を知る
syumai
0
320
市販E-Readerを乗っ取れ 〜Embedded Swiftで電子ペーパーガジェットを制御する〜
trickart
0
230
フロントエンドUIフレームワークのこれまでとこれから
ssssota
5
3.1k
App Storeの外へ──日本のiOSサイドローディング入門 for iOSDC Japan 2026
yuukiw00w
0
280
Featured
See All Featured
Automating Front-end Workflow
addyosmani
1369
210k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
How to Grow Your eCommerce with AI & Automation
katarinadahlin
PRO
2
290
Marketing Yourself as an Engineer | Alaka | Gurzu
gurzu
0
320
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.8k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.7k
Lightning talk: Run Django tests with GitHub Actions
sabderemane
0
270
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
3k
SEOcharity - Dark patterns in SEO and UX: How to avoid them and build a more ethical web
sarafernandez
0
290
Skip the Path - Find Your Career Trail
mkilby
1
240
Leveraging Curiosity to Care for An Aging Population
cassininazir
1
520
The Invisible Side of Design
smashingmag
301
52k
Transcript
։ൃࢧԉͱ͍͏ࣄ !OBPLJBJOPZB 3FDSVJU.BSLFUJOH1BSUOFSTDP MUE
w BJOPZB w dNJYJ w dOPXSFDSVJU w ΠϯϑϥͱΞϓϦ։ൃ͕ ŧŔŕŪũƄŝſΤϯδχΞ BJOPZBJP
None
γϯϓϧͳϏϧυύΠϓϥΠϯπʔϧXBMUFSΛϦϦʔε͠·ͨ͠c"EWBODFE5FDIOPMPHZ-BC IUUQBUMSFDSVJUUFDIDPKQCMPH 8BMUFSWCFUBΛϦϦʔε͠·ͨ͠c"EWBODFE5FDIOPMPHZ-BC IUUQBUMSFDSVJUUFDIDPKQCMPH
)PXUPQMBZ4DBMBPOEPDLFSJ[FEJOGSBTUSVDUVSF4QFBLFS%FDL IUUQTTQFBLFSEFDLDPNBJOPZBIPXUPQMBZTDBMBPOEPDLFSJ[FEJOGSBTUSVDUVSF
IUUQTFJHPTBQVSJKQ
ΪϦΪϦ6OEFS ͋ͱ̑ϲ݄Ͱ͍̏͞Ͱ͕͢ ͕ΜΓ·͢
ࠓ͍ͬͯΔ͜ͱ
l։ൃࢧԉz
4JUF3FMJBCJMJUZ&OHJOFFSJOH %FWFMPQFS1SPEVDUJWJUZ&OHJOFFSJOH ηΩϡϦςΟରԠ ΤϯδχΞ࠾༻ɾਓࣄɾ৫׆ੑ ࣾ*5 FUDʜ
ࢧԉର ฐࣾ։ൃ৫ͷ ෳϓϩμΫτ܈
l։ൃΛՃͤ͞ΔͨΊͷ։ൃz ͳΒ ͳΜͰΔ
ͳͥΔͷ͔ʁ
ΤϯδχΞʹ σΟʔϓɾϫʔΫ ͯ͠Β͏ͨΊ
None
େࣄͳ͜ͱʹूத͢Δ ϢʔβʹՁΛಧ͚Δ͜ͱ ͨͩҰʹूதͰ͖Δ ڥͷͨΊʹ
ϢʔβʹՁΛಧ͚ΔͨΊʹ ຊ࣭తͰͳ͍ɺෆཁͳ ίετɾ࣌ؒɾ࣌ؒΛΔ γϟϩʔϫʔΫΛۃখԽ͢Δͷ͕త
ྫ͑
ϋΠύϫʔ$*ϚγϯಋೖͰ Ϗϧυ࣌ؒॖ
Ϗϧυ࣌ؒͷ ॖ 4DBMBϓϩδΣΫτͷ ίϯύΠϧ ʴ ςετ ʴ EPDLFSJNBHFੜ ࣌ؒΛʹ
Ϗϧυ࣌ؒͷॖ ʹ ࣌ؒۚͰങ͑Δ ʢ͔͔ͨͩ̎̌ສͰ
ͱ͍͑ɺ ͓ۚͷແବݣ͍
ྫ͑ɺ2"
Ͱςελʔ͞ΜΛूΊͯ ࿑ಇूతʹςετ
େྔͷςετ߲Λ ख࡞ۀͰ࣮ࢪ ϦϦʔε·ͰӋ٧·͍ͬͯΔͱ͋Γ͕ͪ
ఆٛʹैͬͯػցతʹ ͜ͳͤΔͷ ࣗಈԽ͢Δ͖
ςελʔ͞Μʹ ਓؒͰͳ͍ͱൃݟ͕ ͍͠όάΛ୳͢͜ͱʹ ूதͯ͠΄͍͠
εϚϗΞϓϦͷςετ ࣗಈԽج൫ͷಋೖ
0QFO45'ͷ ಋೖ ݕূͷςετϑΝʔϜߏங αΠόʔ͞Μ͓ੈʹͳͬͯ·͢
0QFO45'ͷ ಋೖ ϦϞʔτϫʔΫ࣌ ݕূར༻͕༰қʹ
"QQJVNʹΑΔ ࣮ػFFςετ ݕূɾಋೖ 0QFO45'4BVDFMBCTΛ ςετϑΝʔϜͱͯ͠ ࣗಈԽج൫Λߏங <3.1Y2VJQQFSNFFUVQ>։ൃͷͨΊͷ։ൃdεϚϗΞϓϦ͚FFςετͷݕূಋೖࣄྫΛ௨ͯ͡d4QFBLFS%FDL IUUQTTQFBLFSEFDLDPNBJOPZBSNQYRVJQQFSNFFUVQOVNCFSLBJGBGBMTFUBNFGBMTFLBJGBTVNBIPBQVSJYJBOHLFFFUFTVUPGBMTFKJBO[IFOHEBPSVTIJMJXPUPOH[JUF
"QQJVNʹΑΔ ࣮ػFFςετ ςετ࣮ߦͷΈΛ ͑ͨ <3.1Y2VJQQFSNFFUVQ>։ൃͷͨΊͷ։ൃdεϚϗΞϓϦ͚FFςετͷݕূಋೖࣄྫΛ௨ͯ͡d4QFBLFS%FDL IUUQTTQFBLFSEFDLDPNBJOPZBSNQYRVJQQFSNFFUVQOVNCFSLBJGBGBMTFUBNFGBMTFLBJGBTVNBIPBQVSJYJBOHLFFFUFTVUPGBMTFKJBO[IFOHEBPSVTIJMJXPUPOH[JUF
"QQJVNʹΑΔ ࣮ػFFςετ $IBMMFOHJOHͳ औΓΈ Perceptual diffsʹΑΔσάϨͷݕग़ڧԽ https://github.com/uber/image-diff <3.1Y2VJQQFSNFFUVQ>։ൃͷͨΊͷ։ൃdεϚϗΞϓϦ͚FFςετͷݕূಋೖࣄྫΛ௨ͯ͡d4QFBLFS%FDL IUUQTTQFBLFSEFDLDPNBJOPZBSNQYRVJQQFSNFFUVQOVNCFSLBJGBGBMTFUBNFGBMTFLBJGBTVNBIPBQVSJYJBOHLFFFUFTVUPGBMTFKJBO[IFOHEBPSVTIJMJXPUPOH[JUF
ࣗಈԽʹΑΔݮ ͚ͩͰͳ͘ʜ
2"σΟϨΫγϣϯͷ ෛՙݮ σΟϨΫλʔͷ γϟϩʔϫʔΫݮ
σΟϨΫλʔҎ֎ʹʜ ΤϯδχΞ୲֎ͷࣄ γϟϩʔϫʔΫͩΒ͚
ྫ͑ ϚʔέςΟϯά୲ σʔλूܭۀ
ڪΔ͖ ਓྗεΫϨΠ ϐϯά ച্ूܭγεςϜ σʔλग़ྗ"1* σʔλμϯϓػೳ͕ͳ͔ͬͨ ػೳՃͷॲͨͨͳ͍ ˣ ଞࣾཧԼͷച্ूܭը໘Λ
̍ϖʔδͣͭΊͬͯ͘ &YDFMʹసࣸʜ
4DSBQZʹΑΔ ͓खܰ εΫϨΠϐϯά ਓखͰ࣮ݱෆՄೳͩͬͨ සͰͷച্ܭଌ͕ Ͱ͖ΔΑ͏ʹ
4DSBQZʹΑΔ ͓खܰ εΫϨΠϐϯά 4DSBQZΫϩʔϥ͚ ϑϨʔϜϫʔΫ ेߦॻ͚ͦͦ͜͜ಈ͘ Ϋϩʔϥ͕ͭ͘ΕΔ ͓͢͢Ί http://asheesh.org/pub/scrapy-talk/#1
ϧʔνϯϫʔΫ ଞʹ·ͩ·ͩͨ͘͞Μ͋Δ
ձٞࣨ༧
શࣾඪ४ͷձٞࣨ༧γεςϜ ͋ΒΏΔ*5Ϧςϥγɾۀܗଶͷશࣾһ ສਓن ͕ ͑͘͠Δ͘࡞ΒΕͨݹͷγεςϜ
ՄೳͳݶΓ͍͘͢ ม͑Δ͜ͱ͕͍͠ͷΛ ͕ࣗͨͪม͑ΒΕΔൣғͰม͍͑ͯ͘ ձٞࣨ༧ΞϓϦΛ ձٞࣨલʹઃஔ 4MBDLJOUFHSBUJPO
ଞʹ͍Ζ͍Ζ ίπίπࣗಈԽ
w ϝʔϧͰ͔͠ల։͞Εͳ͍ใڞ༗ɻΤϯδχΞ औΓ͜΅͢ 4MBDLʹྲྀ͢Έ࣮ .JDSPTPGUqPXΛར༻ w QSJWBUFͳTMBDLDIBOOFMͷQVCMJDԽ DIBOOFMͷΞʔΧΠϒɾϦωʔϜͱ৽ن࡞Λ ߦ͏CPU࣮
w ۀπʔϧ܈ͷΞΧϯτਃɾཧ (PPHMF'PSN 4MBDLͰDIBUPQTͳ͍ग़͠
γϟϩʔϫʔΫΤϯδχΞ͔Β ݟ͑ͳ͍ͱ͜Ζʹ ࢁ΄Ͳ͋Δ
ίετͱ࣌ؒ ͪΓͭࣜʹ૿͑ͯ ϦϦʔεΛͤ͘͞Δ
–Tom DeMarco, দݪ ༑༁ ʮϐʔϓϧΣΞʯ lձࣾͷϧʔνϯϫʔΫɺबۀ࣌ؒʹݟ߹͏ͱ ͜Ζ·Ͱு͢Δ͕͋Δz
ΤϯδχΞྲྀͷղܾ๏Ͱ γϟϩʔϫʔΫΛ ௵͍͖ͯ͠·͠ΐ͏
(4ͷهࣄ IUUQTXXXUFDIOPMPHZSFWJFXKQTBTHPMENBOFNCSBDFTBVUPNBUJPOFWFOUIFNBTUFSTPGUIFVOJWFSTFBSFUISFBUFOFE
–Joel Spolsky ੨ ༃༁ ʮMore Joel on Softwareʯ l͝Έ͋Δͱ͜Ζʹۚ͋Δz
–Eric Sink, ੨ ༃༁ ʮֵ৽తιϑτΣΞاۀͷ࡞Γํʯ lιϑτΣΞ։ൃऀձࣾͷதͰ͕ࣗ࠷ॏཁͳਓؒͩͱࢥ͍ ࠐΉ͕͋Δɻ͍͋ʹ͘ͱ͜ͷଚେ͞ʹ͍ͬΜͷਅ࣮͕͋Γɺ ։ൃऀ͕ଞͷਓͨͪͱ͏·͘ંΓ߹͏ͷΛ͍ͯ͘͠͠ΔɻͦΕͰ ࢲͷओுมΘΒͳ͍ɻ։ൃऀͷεΩϧίʔσΟϯάҎ֎ͷ͞ ·͟·ͳλεΫʹద༻Մೳͳͷͩɻ
ɾΧελϚαʔϏε୲ͱͯ͠ɺͷΈΛཧղ͍ͯ͠Δ ։ൃऀΛΑΓૣ͘ݟ͚ͭΔ͜ͱ͕Ͱ͖Δ ɾηʔϧεΨΠͱͯ͠ɺͷΈΛཧղ͍ͯ͠Δ։ൃऀ ͦΕͰԿ͕Ͱ͖Δͷ͔ͱ͍͏࣭ʹ༰қʹ͑Δ͜ͱ͕Ͱ͖Δɻ ɾϚʔέςΟϯά୲ͱͯ͠ɺ։ൃऀϚʔέοτઓུʹӨڹ͢Δ ٕज़తͳબ͕͔͔ΘΔܾஅʹཱͭ͜ͱ͕Ͱ͖Δɻ اۀ։ൃऀ͕ιϑτΣΞߏஙҎ֎ͷ׆ಈʹ͔͔ΘΔ͜ͱΛ ڪΕΔ͖Ͱͳ͍ɻz