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
スーパーエンジニアを「育て」られるか? / how-to-let-an-engineer-to...
Search
sunecosuri
September 06, 2018
Programming
0
1.3k
スーパーエンジニアを「育て」られるか? / how-to-let-an-engineer-to-grow-up-into-a-hacker
sunecosuri
September 06, 2018
Tweet
Share
More Decks by sunecosuri
See All by sunecosuri
'Securing Web Apps with Modern Platform Features' を意訳してみる / Translate Securing Web Apps with Modern Platform Features
sunecosuri
2
310
Vue.js × TypeScript でclass style componentを廃止した話 / migrated-class-style-component -for-vuejs-and-typescrpit
sunecosuri
2
4.2k
Nuxt.js のbuid速度が早くなるオプションのいくつかについて / Increase-build-speed-for-Nuxt.js
sunecosuri
1
1.2k
about-vue-hooks.pdf
sunecosuri
1
660
Nuxt.js におけるCSPの連携について / content security policy for Nuxt.js
sunecosuri
0
2.3k
ロリポップマネージドクラウドでAlexaスキルを開発しよう / let's development alexa skill by lolipop managed cloud
sunecosuri
1
160
マネージドクラウドのリリース速度を上げるお話 / Increase release speed for managed cloud
sunecosuri
2
310
Reconsider Content Security Policy for WEB Application
sunecosuri
0
83
Other Decks in Programming
See All in Programming
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
0
120
[DroidKaigi 2024] Android ViewからJetpack Composeへ 〜Jetpack Compose移行のすゝめ〜 / From Android View to Jetpack Compose: A Guide to Migration
syarihu
1
630
ドメイン駆動設計を実践するために必要なもの
bikisuke
4
330
僕が思い描くTypeScriptの未来を勝手に先取りする
yukukotani
9
2.4k
私のEbitengineの第一歩
qt_luigi
0
450
watsonx.ai Dojo #2 生成AIを使ったアプリ開発入門編
oniak3ibm
PRO
0
190
Kotlin 2.0 and Beyond
antonarhipov
2
150
GoのIteratorに詳しくなってしまう
inatonix
1
200
LangGraphでのHuman-in-the-Loopの実装
os1ma
3
1.1k
Android開発以外のAndroid開発経験の活かしどころ
konifar
2
1k
rbs-inlineを導入してYARDからRBSに移行する
euglena1215
1
290
『ドメイン駆動設計をはじめよう』中核の業務領域
masuda220
PRO
5
1k
Featured
See All Featured
Large-scale JavaScript Application Architecture
addyosmani
508
110k
Designing for humans not robots
tammielis
248
25k
Rebuilding a faster, lazier Slack
samanthasiow
78
8.6k
Testing 201, or: Great Expectations
jmmastey
36
7k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
363
22k
Fashionably flexible responsive web design (full day workshop)
malarkey
401
65k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
103
48k
For a Future-Friendly Web
brad_frost
174
9.3k
Designing with Data
zakiwarfel
98
5k
Pencils Down: Stop Designing & Start Developing
hursman
119
11k
Build The Right Thing And Hit Your Dates
maggiecrowley
30
2.3k
ParisWeb 2013: Learning to Love: Crash Course in Emotional UX Design
dotmariusz
109
6.9k
Transcript
໐ւ߂ً(.01FQBCP *OD %FWFMPQFST4VNNJU'6,60," εʔύʔΤϯδχΞΛ ʮҭͯʯΒΕΔ͔ʁ ϖύϘͷΤϯδχΞڭҭͷઓɹ
ຊͷ͓ ϖύϘͱΘͨ͠ ଐޙɺ ࣮ࡍʹಇ͍ͯΈͯ w Θͨ͠ʹ͍ͭͯ w ϖύϘΧϨοδͱ w ड͚ͯΈͨײ
w ଐޙʹ͍ͭͯ w ̍ܦͬͨࠓͳʹͯ͠Δʁ
ΤϯδχΞʢϖύΧϨظੜʣ ໐ւ߂ً!TVOFDPTVSJ ϗεςΟϯάࣄۀ෦ϗεςΟϯάάϧʔϓ ϚωʔδυΫϥυνʔϜ
۽ຊͷจܥେֶΛଔۀ ৽ଔͰ8&#੍࡞ձࣾʹ8&#ϓϩάϥϚͱͯ͠ೖࣾ ɾϓϩάϥϛϯάະܦݧ ɾडୗҊ݅ͰϑϧεΫϥονͰ࡞ΒΕͨ$.4ͷӡ༻։ൃ͕ϝΠϯ 1)1ɺ.Z42- ݄ʹ(.0ϖύϘʹೖࣾ ɾϖύϘΧϨοδظੜ
ϩϦϙοϓϚωʔδυΫϥυͷαʔϏε։ൃʹऔΓΉ ɾݱࡏΫϥΠΞϯταΠυΛத৺ʹ։ൃ͍ͯ͠·͢
ϖύϘΧϨοδʁ
ϖύϘΧϨοδͱ w̍ϲ݄ͷ8FC։ൃݚमΛܦͯଐ͞ΕΔ த్࠾༻ϓϩάϥϜ w8FCۀքະܦݧऀ͚ աڈʹΧελϚʔαʔϏεσΟϨΫλʔɺফ࢜ͳͲҟۀछͳͲ͔Βʜ w݄͔Β։࢝
ϖύϘΧϨοδͱ ظ 8FCΤϯδχΞ ظ "OESPJEΤϯδχΞ ظ 8FCΤϯδχΞ ظ J04ΤϯδχΞ ظ
8FCΤϯδχΞ ظ ΠϯϑϥΤϯδχΞ w౦ژɾԬͦΕͧΕͰ߹ܭظ·ͰߦΘΕ͖ͯͨ
ϖύϘΧϨοδͱʢؔ࿈ࢿྉʣ IUUQTUFDIQFQBCPDPNQFQBCPDPMMFHF@OE IUUQTUFDIQFQBCPDPNQFQBCPDPMMFHFTUJOUFSWJFX
िʢϙʔτϑΥϦΦݚमʣ w աڈͷܦݧΛৼΓฦΔ ࣗͷڧΈɾऑΈ ਓੜͷλʔχϯάϙΠϯτʹ͍ͭͯ ڞʹൃද͠߹͏
ि w ։ൃڥͷߏஙɺπʔϧͷհ (JUͷ͍ํΛϋϯζΦϯܗࣜͰֶͿ ࠓޙͷ։ൃʹඞཁͳπʔϧͷ४උศརػೳͷհ QFDP [TI HIR w UJHͳͲ
िʢ3VCZ 3BJMTݚमʣ w 3VCZͷݴޠॲཧΛΫΠζܗࣜͰ࣮ફ w 3BJMTʹ͍ͭͯͷ࠲ֶ5PEPΞϓϦΛ࡞ w ϫʔΫγϣοϓ &3% &3ਤ
3&45ͷߟ͑ํʹ͍ͭͯ
िʢ+BWB4DSJQUݚमʣ w +BWB4DSJQUݚम ϑϩϯτΤϯυͷ։ൃϑϩʔ +BWB4DSJQUͷྺ࢙ݴޠಛ༗ͷߟ͑ํ ֤πʔϧͷׂ ɹτϥϯεύΠϧλεΫϥϯφʔͳͲ 3FBDUºXFCQBDLΛͬͯ5P%PΞϓϦΛ࡞Δ
िʢΠϯϑϥݚमʣ w αʔόʔΛϋϯζΦϯܗࣜͰԽߏ·Ͱ࡞ w *UBNBFͰ࡞ͨ͠αʔόʔΛίʔυԽ *OGSBTUSVDUVSFBT$PEFʹ͍ͭͯ w αʔόʔࢹख๏ʹ͍ͭͯ࠲ֶʢ֎ܗࢹɺܗࢹʣ w
ෛՙௐࠪͷߟ͑ํར༻͢ΔίϚϯυʹ͍ͭͯ σόοάͷํϩάͷݟํ ݪҼͷΓ͚ํͳͲΛʹ͚ͭΔ͜ͱ͕త
िʢεΫϥϜݚमͱαʔϏεاըʣ w ։ൃख๏ʹ͍ͭͯͷ࠲ֶ ΥʔλʔϑΥʔϧ ΞδϟΠϧ εΫϥϜ w εΫϥϜ։ൃख๏ʹ͍ͭͯͷϫʔΫγϣοϓ w αʔϏεݚमʹ͚ͯͷϦʔϯΩϟϯόε࡞
ि αʔϏεݚम w ࡞ͬͨϦʔϯΩϟϯόεΛݩʹͰ αʔϏεΛ࡞Δ w αʔϏεɺϦϦʔεཁ݅ͷఆٛ w σΠϦʔεΫϥϜΛ௨ͯ͡ νʔϜʹͳΔաఔΛײ͡Δ͜ͱ͕Ͱ͖ͨ
w ࠷ऴతʹ3VCZPO3BJMTº7VFKTͰ ϨϏϡʔґཔαʔϏεΛ࡞ͬͨ
ϖύΧϨΛ௨ͯ͠ w ΤϯδχΞͱͯ͠ඞཁͳࣝɺٕज़ͳͲମܥతʹֶͨ ςετίʔυͷߟ͑ํɺίʔυϨϏϡʔɺνʔϜͰͷ։ൃख๏ͳͲ ࠲ֶͱԋशΛ௨ֶͯ͠Ϳ͜ͱ͕Ͱ͖ͨ w Ұํɺใྔ͕ଟͯ͘ཧղ͖͠Εͳ͍෦͋ͬͨ ࣗͷʮΘ͔Βͳ͍ʯ͕ͳʹ͕Θ͔Βͳ͍ͷ͔ΛΔ͜ͱ·Ͱ͕Ͱ͖ͨ w ಉ͡৬छͰͷಉظ͕͍Δ҆৺ײ
த్࠾༻ʹؔΘΒͣɺ٧·ͬͨΓ͢Δͱ૬ஊ͍͢͠͠ҰॹʹΜͰऔΓΊͨ
ϖύΧϨऴྃޙ
ϩϦϙοϓϚωʔδυΫϥυνʔϜ
ϩϦϙοϓʂ ϚωʔδυΫϥυ
w ݄ʹਖ਼ࣜ൛ΛϦϦʔε w ฐࣾ!VE[VSBͷ)BDPOJXBʹΑΔ ίϯςφϕʔεϗεςΟϯά w ΦʔτεέʔϧػೳΛࡌ
ଐ࣌ʹ͍ͭͯ wЋϦϦʔεʹ͚ͯ։ൃਅͬத w ͜Ε·Ͱͷܦݧ͕΄΅׆͔ͤͳ͍ϓϩδΣΫτ ࠾༻ݴޠٕज़5ZQF4DSJQU /VYUKTʢ7VFKTʣ FDIP (P w
ΞʔΩςΫνϟ͕ෳࡶ .JDSP4FSWJDFT"SDIJUFDUVSFΛ࠾༻͍ͯͯ͠ߏཁૉ͕ଟ͍
ଐ࣌ʹ͍ͭͯ wЋϦϦʔεʹ͚ͯ։ൃਅͬத w ͜Ε·Ͱͷܦݧ͕΄΅׆͔ͤͳ͍ϓϩδΣΫτ ࠾༻ݴޠٕज़5ZQF4DSJQU /VYUKTʢ7VFKTʣ FDIP (P w
ΞʔΩςΫνϟ͕ෳࡶ .JDSP4FSWJDFT"SDIJUFDUVSFΛ࠾༻͍ͯͯ͠ߏཁૉ͕ଟ͍ Ͳ͏ͬͯΩϟονΞοϓ͢Εʜ Ͳ͏ͨ͠ΒνʔϜʹߩݙͰ͖ΔͩΖ͏ʜ
ଐͯͬͨ͜͠ͱ w લ৬ʹҰ൪͍ۙϨΠϠʔ͔ΒཧղΛਂΊ͍ͯ͘ 8&#੍࡞ձࣾͩͬͨͷ͋ͬͯ͠Έ͍͢ϑϩϯτΤϯυϨΠϠʔ͔Β ˠ7VFKTͱ5ZQF4DSJQUΔͧʂʂ w 5ZQF4DSJQUઌഐʹϨϏϡʔΛ௨ͯ͡গֶͣͭ͠Ϳ +BWB4DSJQUʹ͍ͭͯ.P[JMMBͷϦϑΝϨϯεͳͲҰ࣍ใΛࢀর͢ΔΑ͏ʹҙࣝ͢Δ w )5.-ʹ͍ۙ7VFKT͔Βࡉ͔͍λεΫΛͰ͖Δͱ͜Ζ͔Βணख
࣍ใΛಡΈࠐΈͳ͕Β࣮ࡍʹखΛಈ͔ͯ͠ૉৼΓ ςΩετͷमਖ਼ιʔγϟϧϘλϯΛίϯϙʔωϯτʹΓग़࣮͢ͳͲ
ଐͰॳϦϦʔε
ϖύΧϨΛܦͯײͨ͋͡Γ͕ͨΈ
ͱʹ͔͘ ΪϟοϓΛײ͡ʹ͔ͬͨ͘ʂʂ
w(JUͷݚम ͜Ε·ͰҰਓͰ͍ͬͯͨHJUͩͱ(JU8PSLqPXͱ͔ॻ੶ΛಡΜͰ ཧղ͠ʹ͔ͬͨ͘ͷ͕ͩɺ՝ใͷఏग़͕13ϕʔεͩͬͨͷ ͋ͬͯଐޙεοͱ13ΛૹΔͷʹ᪳͠ͳ͘ͳͬͨ wମܥతʹֶͨ ʮݱͰಇ͘ΤϯδχΞʯ͔Βಇ্͘ͰͷϚΠϯυ͔Β֤ϨΠϠʔʹ ΘͨΔٕज़·Ͱڭ͑ͯΒ͑Δ͜ͱͰɺΞϓϦέʔγϣϯ͚ͩͰ ͳ͘ଞͷϨΠϠʔͷڵຯͱཧղͷ্͕͕ͬͨ͢͠͞
ݱࡏ͍ͬͯΔ͜ͱ w ϑϩϯτΤϯυΤϯδχΞʹͳΔͨΊʹ 7VFKTXFCQBDLͳͲ044ͷίʔυΛಡΜͰπʔϧϓϥάΠϯΛ࡞ͬͯΈΔ ंྠͷ࠶։ൃࣸܦΛ͢Δ ίϛϡχςΟʹॴଐ͢Δ w ৽ػೳ։ൃʹ͚ͯػೳ୯ҐͰϦϦʔε·Ͱר͖औΕΔΑ͏ʹ ϑϩϯτͷλεΫΛҰ෦ݗҾͰ͖ΔΑ͏ʹͳͬͨ w
(Pͱ5ZQF4DSJQUͰ"1*ͷઃܭ͔Β࣮·Ͱ࡞ΕΔΑ͏ʹ όοΫΤϯυ͔ΒϑϩϯτΤϯυ·ͰϊϯετοϓͰ։ൃͰ͖ΔΑ͏ʹͳͬͨʂ (Pʢ"1*ʣˠ5ZQF4DSJQU "1* ˠ7VFKT ϖʔδσβΠϯͷ࣮
·ͱΊ w ϖύΧϨΤϯδχΞͱͯࣗ͠Ͱ͖ΔΑ͏ͳߏʹͳ͍ͬͯΔ ɾମܥతͳٕज़ ɹ࠷લઢͰݱʹ͍ͭͯಇ͍͍ͯΔΤϯδχΞ͔ΒֶͿ͜ͱ͕Ͱ͖Δ w ϖύϘͰಇ͘ͱ ࣗʹͳʹ͕Γͳͯ͘ɺͲ͏͢ΕΑ͍ͷ͔͕Θ͔Γ͍͢ ఆظతʹߦΘΕΔPOͰৼΓฦΓɺظ͝ͱͷධՁ໘ஊΛ௨ͯ͠লΛ܁Γฦ͢ ΤϯδχΞͱͯ͠ظ͞ΕͯΔ͜ͱΔ͖͜ͱͷํੑ͕ݟ͑ͯ͘Δ
w ·͞ʹʮ͍Δ͚ͩͰͰ͖ΔڥʯΛମײ͢Δ͜ͱ͕Ͱ͖Δ
͍Δ͚ͩͰ Ͱ͖Δڥ
ҰॹʹαʔϏεΛ࡞Γ·ͤΜ͔ʁ ࠷৽ͷ࠾༻ใΛνΣοΫˠ !QC@SFDSVJU